AJAX thoughts

I was just reading through this post: http://weblogs.asp.net/mschwarz/archive/2006/04/03/441767.aspx and it reminded me of some of the worries that I have about the various AJAX libraries.

We have some devs here that are prototyping some AJAX features. They are mainly using the controls from Component Art (which are great btw). The Component Art controls have alot in common with the things that ATLAS is doing. The idea here is to enable "ASP.NET" developers to come in and AJAXify their web apps. The thing is they end up getting completely thrown for a loop when the ASP.NET postback model starts getting in their way (viewstate issues etc.). For simple little autocomplete boxes and such this is no problem. But once you go off and try to do anything complex it just confuses the developers. The notion that you can remain AJAX ignorant and just sling controls is seeming farther and farther away from reality each day. Maybe theres an 80/20 rule here but so far it sure seems to be more like 20/80.

This also smacks of the orginal goals of the Web Forms design time: let the VB windows programmers come on over and play in the web sandbox. While this sounds great on paper and works for demos and one off sites, it leads to piles of spaghetti code for large web sites.

If your serious about doing AJAX then make sure you understand JavaScript. It will be the most important thing you learn when you go to code and debug an AJAX app.

I've been looking forward to ATLAS so I havnt really looked at AJAX.Net that closely. I know more about it through the posts here on weblogs than I do from actually diving into it. Looks like I will be correcting that very soon now. :)

I've been looking at Ruby on Rails recently to see what all the noise has been about. I have to say I'm pretty impressed. The front controller design has enabled them to graft on AJAX features pretty cleanly. The prototype javascript library has the same feel as ruby does which is great for keeping the programming model as consistant as possible.

ATLAS is trying to do the same thing for ASP.NET but fitting it into the page controller model may be a bit more challenging.

2 Comments

  • I didn't mean to come off so harsh on Atlas. The JavaScript library is looking really good so far. Alot of effort has been put into it to make it feel like the .NET framework. The update panel also seems to be a bit more integrated than the Componant Art equivilant.



    Also I am aware that you can do AJAX with Atlas and never touch a server control. In fact you could just use the JavaScript library with ruby on rails if you really wanted to. And just like you say you can even use it with a PHP site.



    I'm just judging from some of the reactions that some of our devs have had to the existing AJAX solutions that exist today. Maybe Atlas will solve all those problems by the time it ships. I've been trying to get our devs to prototype with Atlas but it has been difficult since so far its only been said to be part of VS.Next.



    The fear of JavaScript isn't a problem with Atlas. But there is alot of marketing hitting the web these days about how library X enables you to do AJAX and you never see the JavaScript. Even ruby on rails has some of this. I know its splitting hairs, but I'd prefer more of the message you just gave: 80% of the time its all taken care of and 20% of the time your gonna be down in there slinging JavaScript code.



    Michael Schwarz's post just struck a nerve with me. I think to do effective client side development the developers shouldnt be afraid of JavaScript and their tools shouldnt be telling them that it's a scary thing that should be hidden from them.



  • Hi David,



    this is exactly what I'm thinking, but with this I'm alone with some other JavaScript developers. I shared a lot of feedback since Michael has released his first Ajax.NET library. "Nobody wants to care about JavaScript, nobody wants to write any line of JavaScript code." he told me everyday.



    My understanding of AJAX enabled web application is that you HAVE to write a lot of JavaScript code. With ALTAS the developer is enabled to write similar code like you can write with Ajax.NET Professional, and that is the benefit when comparing ATLAS with other libraries that are only moving the postback to a XMLHTTP request; but you can also use the simple to use postback replacement with web controls using ATLAS.



    ATLAS, Ajax.NET Professional and Ruby on Rails are comming with a couple of prototype functions, I think they all are very similar, nothing to compare really.



    Marc

Comments have been disabled for this content.