Posted by joconner
on May 7, 2007 at 10:49 AM PDT
The more I learn about Ajax, the more I wonder where the limit is. Maybe more appropriately, I wonder at what point do I want to turn around and go back to my rich client.
I'm sitting in the "Web 2.0: Building Dynamic Web Sites with Ajax and the Dojo Toolkit" session. It's a half-day session, one of many choices for the day. The course title makes it sound advanced -- or at least I thought it was more advanced. In reality, the course is an introduction, pretty basic stuff. For a web 2.0 newbie, the level is probably right. It fits me, but I suspect that others in the room might be rehashing old material. Still, the room is full, more than 200 attendees in just this single course. I've heard that more than 1000 students are here, scattered among 7 or 8 simultaneous courses. Clearly developers are interested in Ajax and dynamic sites.
The more I learn about Ajax, the more I wonder where the limit is. Maybe more appropriately, I wonder at what point do I want to turn around and go back to my rich client. At some point, Ajax apps begin to look and feel like a rich client experience, and that's the domain of Swing and Java SE. So I feel divided on Ajax. The need for it is obvious. Some of the features seem absolutely essential to a good user experience with a browser. Yet, the question that pops into my mind over and over again is this: how often have developers traveled down this Ajax road only to discover at some point that they really could have done the same thing with a rich client SE app using Java Web Start? Obviously, you'd have to have a pretty sophisticated, complex Ajax app to reach that point, but those apps do exist, right? I'm thinking about the obvious: the Google documents and spreadsheet apps. Seems to me that these are proofs of concept, showing how useful this technology is. But then I keep wondering...at that point, why bother? So again, just where is the dividing line? And how might I decide when to develop something in Ajax, and when should I stick with Java SE on the desktop?