Sunday, June 7, 2009

YAUT (yet another ugly toolkit)

During my computer science studies at the Technical University of Vienna I have come across many software development tools and platforms. Some of them were quiet clever and useful. And some of them were not.

This week I had to develop a small application using the Globus Toolkit. It is a platform designed for grid computing - applications that require a lot of resources are ran on a grid of powerful computers. It uses something called web service resource framework (WSRF). It's an attempt to create stateful web services. During each call to the web service you not only specify the function you want to execute and its parameters but also some resources (stored on the server) that should be used during the execution of the function. The idea seems pretty nice, unfortunately the implementation is just terrible.

The specification, the API and the configuration seem to be designed by someone who hasn't written a line of code for many years. In an ideal software development platform you can write simple application easily while still allowing the user to create complex and scalable applications. Unfortunately with Globus Toolkit this is not the case. The tutorial which explains how to create a small grid-calculator (allowing addition and subtraction of integers) takes few hours. If you actually manage to get it running at all thanks to the configuration hell.

Globus Toolkit might be good when it comes to complex grid applications. But from developer's perspective it is a complete failure. I can't imagine that some would voluntarily start to create applications with Globus Toolkit, just for fun. And that's all that matters. If nobody wants to develop using your tools you're bust.

No comments: