Too many moving parts are bad

This has been a horrendous week (well, not as bad as that one back in April where I pulled over 80 hours).

I spent the last three days trying to get Tapestry and Internet Explorer to play nice together. The task at hand — opening a popup window and displaying several uploaded documents — really doesn’t seem that hard. But there are too many moving parts.

Tapestry is a very powerful web library but it desperately needs better tools to pull all the pieces together. Creating components requires defining too many loosely coordinated elements, between the component definitions, Java implementation classes, web pages and the complex series of interactions between disparate components Tapestry applications quickly develop an appearance not unlike a “code octopus.”

Unfortunately, this really is the state of web programming in general. Even so, other tools, such as PHP or even WebObjects, provide simpler architectures that are easier to understand. Apple has recently made WebObjects essentially free — requiring only a purchase of OS/X Tiger, which includes a full suite of development tools. This is fantastic news for anyone that has had their eye on the technology but balked at the previously high pricetag.