This is the kind of blog post that usually gets me in trouble.

I’ve started a series on replacing Ajax Control Toolkit features with jQuery.

In the most recent installment, “Implementing Textbox Watermarks with jQuery”, I had a few comments that question the “demise” of the ACT and the logic behind the emphasis on using jQuery, which I’d like to address.

What follows is MY personal opinion and NOT Microsoft’s official position.

There are two “parts” to the traditional ASP.NET WebForms Ajax experience.

The “core” which includes things like scriptable web services, the Update Panel control and the script manager. None of that is going away. If you’re using it, you’re safe and you can continue to use it if you like.

The Ajax Control Toolkit (ACT) -  [ Download HERE ]

The ACT was always intended to be an Open Source project, not a Microsoft “product”.

It is, and will continue to be Open Source. You can use the binaries, which are current with builds for ASP.NET 3.5 and 4.0, you can make changes and additions and build your own binaries, and you can make contributions back into the project to make things work the way YOU want.

The ACT, in my opinion, was a fantastic idea that came strong out of the gate, but very quickly dropped into a groove and stayed there.

As a library the ACT came out as something like a 0.8 release. While pretty solid, many of the controls had obvious enhancement needs and desires.

As an Open Source project, the ACT hasn’t really taken off.

I was invested in Open Source long before I came to Microsoft ten years ago. It’s how I originally became labeled the “Opinionated Misfit Geek”.  I’ve always felt there there were strong opportunities for both OSS and Commercial Software and opportunities to mix the two.

I think Microsoft has struggled with finding a great Open Source model that works for us/them. This is a very common problem for commercial entities who’s business model is not service or support based.

I also think that a majority of our customers view “Open” as “Use Freely” but lack the time or interest in contributing code back into an otherwise “open” project.

If I had a dollar for every time someone has said to me “Microsoft should just do [ fill in the blank here] – you guys have more money than you know what to do with.”

Sure, Microsoft is big and we’re profitable. But the economy is TOUGH and we’re profitable these days because we work HARD at being fiscally responsible.

We travel less, we keep old hardware longer, we work longer hours because we staff more leanly, etc, etc. It’s easy for large companies to get caught off guard . It almost happened to Apple, and it almost happened to IBM.

In Developer Division, we have a TON on our plate. The guys who wrote the Ajax Control Toolkit were really needed in many other places (Silverlight Toolkit, MVC Toolkit, Razor Helpers, etc)

So, the ACT was always intended to become community driven open source.

In hindsight, I’m not sure that’s what our customers wanted, but it seemed like a great idea at the time.

So why jQuery?

Change can be frustrating. It is often hard to find time to learn something new, especially when you already know a way to do the thing you need to get done.

In my opinion (did I mention that all of this was not official Microsoft positioning ? ), the move to jQuery is brilliant.

Here is some of my reasoning in no particular order.

  • As a community, jQuery is ROCKIN’ tons of code, articles and help out there.
  • There is a plugin t do almost EVERYTHING
  • Once you learn a bit of jQuery you don’t do JavaScript without it.
  • Much of the ACT has nothing to do with AJAX, it’s Client Side UI.
  • It’s good to get things that don’t need server side logic off the server.
  • jQuery UI work is portable from WebForms to MVC to WebMatrix, etc.

In truth, you don’t even need to learn to write jQuery code to get a lot of use from jQuery plugins. Many folks have emailed to tell me they have just copied my code and used in in their web page.

So let me pose a question to WebForms developers (who, by the way are between 60% and 80% of the folks developing on the Microsoft Web Platform).

  1. Would you want and use sever-side controls to implement UI features using jQuery ?
  2. Would you contribute to such a project ?

I’m not personally sure I see the value but if YOU do, I’ll research it.

Would you make better use of a one stop directory of samples and plugins for ASP.NET developers ?

You tell me !

In the meantime, if you wanna see a high end example of how really powerful a jQuery based front end can be, checkout the work being done by the Pattern’s & Practices team (http://silk.codeplex.com/)

Don Smith gave me a detailed tour of the project’s code and architecture and when they are doing with jQuery is AMAZING. Crack it open !