A few days ago Ajaxian published the results of a survey about the usage of Ajax among web developers, but since it was too generic for my taste I decided to make one targeted only to .NET developers.
I got a bit more than 1000 responses in less that 2 days, and since the results were starting to stabilize (and the response rate was very low compared to the 50 responses per hour of the first day), this morning I decided to close the survey and then analyze the data and publish the results.
But let's have a quick look at the results and later do some more thoughts: among the 95% of the .NET developers that said they are using some flavor of Ajax either in production, development or prototype, the most used Ajax toolkit is ASP.NET Ajax, with 73,7%, followed by the Ajax Control Toolkit which is used by almost half of the .NET developer that are using Ajax.
And the second most used framework after the Microsoft one are Michael Schwarz's Ajax.NET Professional and jQuery, both used by 13,3% of the users.
And guess what? The most used toolkit for building web applications is ASP.NET Webforms, used by 97% of the developers, and 90 percentage points behind, with 7,6%, is the second most used toolkit: ASP.NET MVC.
Let's now have a look in detail at the data collected, doing some more analysis.
ASP.NET Ajax and Ajax Control Toolkit
First I want to point out one strange result: I would have expected that people using the Ajax Control Toolkit also checked the ASP.NET Ajax box. But this didn't happen, probably because some didn't take into account that the Control Toolkit is an abstraction above the core ASP.NET Ajax library. Adding to the ranks of the ASP.NET Ajax users also the ones that only checked the Control Toolkit, the final percentage grows to 84%: this means that 8 out of 10 .NET developers use ASP.NET Ajax.
Partial Rendering vs Core ASP.NET library usage
|Partial Rendering / Update Panel||91,8%|
This is quite an impressive result: only 8% of the ASP.NET Ajax users don't use the partial rendering trick. Even though it's just a trick that, technically speaking, doesn't have anything to do with "real" Ajax, most of the developers used this quick approach to built Web2.0-like applications.
But half of them also used the core library. In my opinion this validates the design decision made by Microsoft with their ASP.NET Ajax library: it allows easy and quick implementation of simple things or when performance and optimization are not a issue, but it also enables developers to go beyond the surface, to use a more pure development paradigm and to leverage the core library to do more advanced or when there is the need to optimize things.
Compared to results of the Ajax survey made by Ajaxian, where almost nobody reported using commercial libraries, in the .NET space the 5th most used library is a commercial toolkit: Telerik RadControls, used by 11,7% of the developers.
But they are not alone, as you can see from the following list
|ESRI Web ADF||0,3%|
And what if you are not using ASP.NET Ajax?
Looking only at the 13,4% that is not using ASP.NET Ajax, the most popular library is Ajax.NET Pro (33,1%), but almost 1 out of 4 still believes that hand coding Ajax request is the best way to go.
But if we exclude Ajax.NET Pro, the results are similar to the ones of Ajaxian's survey: Prototype, jQuery and Script.aculo.us are the preferred options.
The hard core developers
If 97% of the developers is using Webforms, it also means that 3% of them is not using it.
What are these hard core developers using?
These ALT guys (2,3% of the total) are also using ASP.NET Ajax (40%), but jQuery is closer with 36,4% and then comes Prototype (27,3%).
The vintage developers
There is still one category of developers: the ones doing only ASP Classic development. They are only 7 (0,7%) and are mostly using hand coded Ajax calls (60%).
Diving deeper into the data
What about the ones that are using Subsonic but not using jQuery?
And the ones using YUI in conjunction with Script.aculo.us?
Surveymonkey, the tool I used for the survey, provides a powerful filtering engine, so if you want to dive deeper into the data and do your own data mining, you can look at the results online and even download all the 1011 responses in a DB-like format so you can do some SQL queries yourself.
After all this talking is time for some conclusions. From these data it seems like ASP.NET Ajax is in the toolbox of almost all the .NET developers out there, and that only 1 out of 10 tried different approaches using jQuery, Prototype and other server agnostic libraries.
And, the preferred web toolkit is ASP.NET Webforms, but the ASP.NET MVC seems to be seen as a very good alternative by many people.
Last thought, almost all the ASP.NET Ajax developers are using the partial rendering trick.
And now, back to my new Mac .