[WARNING! This is an archived post and as such there may be things broken/missing here.. you have been warned.]
[Admittedly this is somewhat of a rant, but there is some technical discussion...]
I love a couple Web 2.0 libraries (besides the MS one which IMO is very raw... I love both ext.js and dojo), and don't hesitate to use any of them, except my own personal experiences seem to be telling me that this is not the answer... or that people are becoming lazy.
Yahoo Fantasy Football
So Eric, (our soon to be introduced new blogger) Tony, and I are all a part of a Fantasy Football League. Yahoo built this really slick interface for choosing your players for each week. It's all drag and drop and it looks really slick... they also have a slick looking (partially flash) app that if one wants to track the stats during games you can bring up (obviously I paid for this). This sounds like it should be a really cool app to use...
You would be wrong. The draft default suck (let's put it this way the 1st - 4th draft pickers happen to be in the playoffs right now... I picked 6th and my current position in the league is 6th).
I could go on... One glaring issue that no fantasy web app has fixed for me is that the NFL teams like to hide when a particular player is hurt and they don't want to announce it until nearly game time. As a fantasy owner I have to be online at around noon so that I can switch out players before the first game is played (at 1:00pm). Very inconvenient...
To sum up, the problem is not web 2.0 in this case, it is the fact that their app has the Web 2.0 sugar when it should have better features. BTW, I have had their Web 2.0 interface act really crappy, and don't even get me started on trying to use it with my phone (using Opera for Windows Mobile)... more on the phone thing later...
The Grandaddy of all Web 2.0 apps - Gmail
I hate to pick on Gmail. It's actually the opposite problem. Gmail's features really rock. Lately, I have been encountering some oddities in the last couple weeks ever since the latest drop of FireFox (I think). Gmail now has this annoying habit of crashing FireFox. Maybe it's my browser (I do have the debugger turned off for Gmail, BTW), but it seems every day I have one point where I go to do an email send and the app goes out appears to send and displays a loading screen (and never comes back). Browser is effectively hosed and I have to task manager kill it.
The point here is that I thought this stuff was supposed to be portable (To Gmail's credit they have a J2ME --mobile java-- app for a better experience on a phone... provided your phone has a J2ME environment (which mine didn't until recently).
A Myriad of New HTML Web technologies
What I am starting to see from MS (and I imagine other companies) is a myriad of new web (2.0) technologies. MS recently release the CTP for the ASP.NET enhancements (including ASP.NET MVC framework), and Volta. Both of which I believe will let you work with numerous non-MS Web 2.0 frameworks. We are starting to see the a ton of these hitting us.
Java 1.0 got it right
Personally I think the problem (and I have said so for awhile) is not Ajax (the communications layer) itself, but in what we are attempting to do with it. I'm starting to think that 10+ years ago when Java came out and they introduced the applet that they had a better idea. Even Flash is starting to look like a better choice to me (although I have issues with their language). Of course Silverlight is a big deal... Basically let's quit trying to do fancier HTML based apps and let's start building RIA apps whose main interface is something other HTML and whose foundation is something other than a scripting language.
I'm not saying that Web 2.0 is all garbage, but building a well-written, bug free app is realy, really, really, really (!!!) hard. Mainly because there are differences in brwoser even today. Those difference main end up in different methods for implementing standards. It may be because MS or Apple decided to implement something in a flaky manner... it could be for a lot of reasons. When I load plugins into my broswer and that breaks something then IMO there is a problem with the fundamental approach to app building.
One of the things spurring this post was I read a post by someone (I'm sure he'll recognize his work since I have received a comment or two from him here) who said that Silverlight is not the answer because it doesn't work on my phone...
I read that and thought "you obviously haven't done much browsing with your phone." I have a decent phone for web browsing (I have a slideout keyboard and a rotating screen, and obviously a decent browser... mine even will report to the web site that it is a desktop, so I get the full Web 2.0 UI). That said I can tell you that browsing on such a tiny screen absolutely sucks!
I think we have the communications layer... I just can't wait until we get a real UI.