Almost one month ago I created a survey in order to try and understand how .NET developers are using Ajax. And also to compare it with the results I collected at the end of 2007.
I left the survey running a few weeks and once I received around 2500 responses I closed it: but without further ado let’s have a look at the results, and later I’ll do a more in depth analysis of the data collected.
The results
The most used Ajax/JS library among .NET developers is jQuery, which is used by the 71,4% of the users. Second comes the Ajax Control Toolkit with 58,8%, followed by the core ASP.NET Ajax library, which is used by 44,8%.
The 3 most used libraries are still the same of 2007, just with the opposite order (it was ASP.NET Ajax, the Control Toolkit and then jQuery).
Looking at the results of the question about which Web framework you are using, the results shows that quite a few users are starting to adopt ASP.NET MVC for building they applications: 87% are using WebForms and 32% are using ASP.NET MVC.
The other interesting question was about the adoption of the technology, and 77% of the developer that responded say they are using it in production, 70% in development stage, but is astonishing to me is that 8,3% is not using it at all, or just using in personal tests, not related to their jobs. This looks more astonishing since 2 years ago this percentage was lower (it was just 5%).
ASP.NET Ajax and the Ajax Control Toolkit
Time for more analysis: it seems strange to me that there are more people claiming they are using the control toolkit and not using ASP.NET Ajax (probably some didn’t realize one is just an abstraction over the other), so I digged into the results a bit more and I found out that the percentage of people that are using either ASP.NET Ajax or the Ajax Control Toolkit is 73% of the population. This means that jQuery and the Microsoft Ajax stack are pretty much on the same market share: 71% of jQuery vs 73% of MS Ajax.
What changed since 2007?
As you saw in the previous sections, not much: jQuery gained a lot of attention (probably due to the official endorsement of Microsoft) and all the rest remained pretty much the same. Some libraries gained a few points, like JSON.NET, and others, like Prototype and Scrit.aculo.us, lost a few. And, despite becoming a dormant project, AJAX.NET Professional lost only 3% of the users.
The first chart from the left (click to enlarge) shows the big gain of jQuery (in blue), the slight increase in the Ajax Control Toolkit (red) and the drop in the usage of the core ASP.NET Ajax library (in green). All of this combined lead to final result of having jQuery and the Ajax Microsoft stack with more or less the same usage (second image from the left).
WebForms vs ASP.NET MVC users
Which library is preferred by developers using WebForms? And which by developers that use ASP.NET MVC?
Nothing new here: the 804 developers that checked ASP.NET MVC prefer jQuery (88%) over MS Ajax (17%) while the 907 developers that use only WebForms slightly prefer Ajax Control Toolkit over jQuery (65% vs 59%).
An interesting stat is about the developers that checked both WebForms and ASP.NET MVC: among these all-round developers the market share of jQuery is even higher: 90%, compared to the 16% of the MS Ajax stack.
Commercial 3rd party libraries
And seems like commercial libraries are starting to gain their space among .NET developers, showing a cumulative 7% gain, going from 20% to 27%: which means that 1 developer out of 4 is using a commercial library. The top spot is held by Telerik with 15,6%, followed by Infragistics with 3,9%. A company that gained a lot of market is DevExpress, which went from 0,7% of 2007 to 3,7%.
Partial rendering vs client library
The last question was about how people are using MS ASP.NET Ajax:
Option | Response % |
Partial Rendering /Update Panel | 88% |
Ajax library + services (JSON or XML) | 54% |
AJAH (Async Javascript and Html) | 36% |
Compared to the previous survey nothing changed: the partial rendering trick is still the preferred way of using MS ASP.NET Ajax, even if the percentage felt down a bit (92% to 88%). Another proof of the goodness of this approach is that 1/3rd of the developers have server-side code that directly returns HTML code. And I guess this approach is even more popular with jQuery + ASP.NET MVC where you can easily return a Partial View from you actions and have the Ajax helpers inject it into your views.
Some final random thoughts
17 people (0,7%) responded they don’t use any web UI library: they just plain HTML + JS and Handlers/WCF services on the server. And this approach is even more used than ASP Classic, which is used by only 7 developers 0,3%.
It is pretty impressive that 8,6% of the people that took the survey are still doing Ajax calls manually, without relying on library to ease the development.
The audience
Someone claimed that all the surveys not held by a 3rd party company specialized in interviews are irrelevant since someone else can cheat in order to gain more percentage points. And also because being a non randomly selected audience, it might be biased toward my readers.
Unfortunately I cannot do anything about companies asking its users to vote for them, but I tried to get the wider possible audience. At the end the survey has been linked by Bertrand Le Roy, Scott Hanselman (via twitter), Craig Shoemaker, Brad Abrams, Keyvan Nayyeri, my Italian blog and Pietro Brambati blog (DE in Italy). All these blogs have different kind of audience, and probably more “mainstream” than mine. So I hope this helped solving the bias problem.
Wait, I want more!
Which percentage of developers is using the AJAH approach with ASP.NET MVC? And what about the ones that use Dojo? If you are interested in a particular report, you can either ask in the comments or you can download the raw data and the complete results as Excel spreadsheet (Office 2007 format).
Wrapping up
The big news is that jQuery joined the ASP.NET Ajax stack in term of usage among .NET developers and that lots of developers don’t see the Ajax Control Toolkit as being and abstraction on top of ASP.NET Ajax, and this probably shows that now the ACT is becoming a product on its own.
ASP.NET MVC is used by 32% of developers after only 2 months from the RTM.
Again, a big thank to Keyvan, Bertrand, Brad, Scott Hanselman, Craig, Pietro Brambati and all the others that posted and re-tweeted the link to the survey. And all youg guys that answered the survey: this would have not been possible you.
Now it’s your turn: what do you think about these results?