Google web toolkit, one step away from revolution

Ok, let’s just accept it, web is not what it used to be anymore. I will not go into details but web user interfaces have accepted and embraced javascript. About five years ago, I was busy trying to build a user interface based on javascript tricks for an electronic claim processing system, and it was a nightmare. Firefox was not a major consideration back then, but internet explorer had threee version that ran on 3 different version of windows.  I have suffered a lot from inconsistent apis, and I had to invent a lot of tricks similar to basics of ajax today.

Now google has given us gwt (google web toolkit) and once you get how it works, you can see that it rocks. I a project of mine, I have to build some kind of component for web which has to have strong user interface features, fancy effects etc, and it has be available to a couple of backends. JSF, PHP, ASP.NET, Rails, you name it. Now if I had to generate that component for each backend technology, I’d be in trouble, not only in creating it, but also in maintaining it.  The problem with ajax and highly interactive user interfaces is that generating them from the backend technology is trouble. Debugging and cross browser issues are just nightmares.

GWT isolates you from all of it, it gives you the approach of swing or windows forms that can be integrated to any back end, and JSON is the key to that. However, somehow gwt docs and tutorials are weak when it comes to integrating it to other backends. ASP.NET web services in .NET 3.5 has some very neat features like making a web service use JSON instead of soap with just one attribute, but so far I have not completed the integration. Python, java, .net, rails and php all have some form of json support, which gives me hope. I might just be able to seperate web development from backend, much like a platform independent MVC for web development, where view is GWT. I’ll be working on this, more to come…

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s