Finally excited about AJAX

I've known about AJAX since the acronym was first coined. I saw the buzz when Google first loosed "suggest" on an unsuspecting community of developers. A palpable murmur swept through online communities as thousands of developers brought up on GETS and POSTS asked, "How are they doing that?"

It turns out that the way Google was doing it was sophisticated, but not revolutionary. In fact, it was a great use of a collection of technologies that had been around for a bit; Google just managed to make them sing together.

The only bad news about AJAX was that it was ugly. No, the apps were beautiful -- it was the code that was ugly. So AJAX went on my personal radar screen of things that were going to change the way I do development... as soon as the kinks got worked out a bit.

The last 6 to 12 months have seen the tempo really start to pick up. In no particular order, we've seen:

  • AJAX-enabled component suites have become common. There are really solid releases from well-known vendors like Infragistics, as well as strong newcomers like ComponentArt.
  • Microsoft's Atlas is nearing release. Like many of their products, they're not breaking too much new ground, but their presence provides a much-needed center of gravity for developers and vendors alike.
  • There has been an explosion of "2.0" sites using AJAX. They're literally everywhere you turn.

I've played with some of these control suites (Atlas, Infragistics, ComponentArt). They're nice. A whole lot nicer than that first Google JavaScript code. But they're still a fair bit of extra work, relative to making the same UI without the whizbang.

So I was just a bit skeptical when I saw a link pop up in some Google search I did about an open-source framework that claimed to produce AJAX-enabled web applications from Windows Forms projects.

Riiiighhhhht.

But it's true. Almost. It's almost true, and that's a whole lot higher than the current bar. The project is called Visual WebGui, and it damned near does exactly that. You develop in a WinForms application using a set of controls from Visual WebGUI (that's the first catch), and when you run it, you've got an application that looks impressively like a WinForms application, but it's running in a browser. And no, not just IE -- I created an app in less than two minutes and ran it in both IE and FireFox.

This project has some serious chops, and they're executing on more than just technology. Visit the web site, and you'll see a well-done web presence, complete with documentation and an impressive collection of video tutorials. Watch one or two and see for yourself if this is all I've made it out to be.

Is it ready for prime time? Not quite, if you want my honest opinion. In playing with this toolset for a couple days, I ran into a few too many cases where I had to blow a form away and start over because I got myself into an unrecoverable error state. This sort of problem isn't a deal breaker if it happens every once in a while, but at the frequency I saw problems, it would be a problem.

I can assure you, though, I'm keeping my eye on this project. I've seen hints that they're going to try to enable Mono support, too, which would score extra points in my book. I doubt this would ever be a mainstream deployment platform, but I think it's important to have that option.

So go take a look - I think you'll be impressed.