Official Google Blog: Making AJAX development easier

Official Google Blog: Making AJAX development easier

AJAX has the power to make your site more compelling and more dynamic, but AJAX development is often complicated, with much of the development time spent working around browser quirks and the fragility of AJAX components. Trust us, we know--the development of our own AJAX apps, like Google Maps and Google Calendar, caused us no small amount of AJAX-induced frustration.

That's why we're bringing you Google Web Toolkit. GWT is a new publicly available software development tool that makes creating AJAX applications much easier. With GWT, you can develop and debug your own AJAX applications in Java code using the Java development tools of your choice. When you deploy your application to production, the GWT compiler simply translates your Java application to browser-compliant JavaScript and HTML.

I've only skimmed this post (and the GWT sites), but it looks pretty significant.

The knock against AJAX apps (and what stopped adoption of JavaScript-driven, dynamic HTML applications in the past) has been the inherent complexity of coding (and managing) cross-browser UIs. Other toolkits, like Ruby on Rails, do a great job addressing the issue of minimizing the work involved in creating the back-end of web applications, addressing the challege of making the various parts of the stack (the database, the application logic, the application server, etc) work together, but we've only had minimal progress on the "last mile" of the user interface. What has been lacking has been a tightly-integrated, visual IDE like Visual Studio, that allowed developers to quickly draw-and-code an application from front-end to back.

While the GWT (how do you pronounce that -- "gwat?" "gee-what?") doesn't get us 100% of the way there, releasing a set of proven cross-platform, cross-browser presention-layer clases and controls as a coherent package is a huge productivity boon for developers. Helping developers, of course, is what platform companies like Microsoft do to ensure the popularity of their platforms with independent software vendors, so it's always interesting to see companies like Google (or Amazon, or eBay) doing the same sort of thing.

As best as I can tell from a cursory glance, GWT assumes a Java back-end to your application, as the RPC mechanism passes Java objects, but I assume you could use HTTPRequest to call any back end that can process HTTP headers (a scripting language such as PHP), to spit out the data you need.