Don’t Fight The Web

Leave a comment

18 July 2007 by Ian Davis

Bill’s latest post conatains echoes of fellow Talisian Andrew’s recent frustrations with Java web frameworks. Bill writes:

What’s interesting is the culture of frameworks and what different communities deem valuable. My sense of it is that on Java, too many web frameworks – think JSF, or Struts 1.x – consider the Web something you work around using software patterns. The goal is get off the web, and back into middleware. Whereas a framework like Django or Rails is purpose-built for the Web; integrating with the internal enterprise is a non-goal.

Earlier this year Andrew wrote:

So, where to go from here? Well, this is certainly the last JSF project I will be working on, and eventually I hope to phase it out of this current one. JSF is web development for Java programmers – those who don’t know much about web applications and even less about HTML, CSS and certainly DDA.

At first pass I wondered if this was is a case of leaky abstractions, but concluded not. The problem isn’t the abstraction that these frameworks provide, rather that they’re changing the metaphor. The web is document-oriented: HTTP is about transferring documents from the server to the client. That’s a great fit for a lumpy information system. There are many other system metaphors but very few of them fit the web’s semantics, just as a transfer protocol would be a poor fit for an event-driven GUI. Emulating one with the other is likely to be a disaster. Most of the time its good to be close to the underlying characteristics of the system you’re working with. It’s good to know that your communication paths may be unreliable and that there’s latency in your messages just as it’s good to know that your user went on vacation for two weeks and only just picked up your application from where they left off.

Leave a Reply

Please log in using one of these methods to post your comment: 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 )

Google+ photo

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

Connecting to %s


Get every new post delivered to your Inbox.

Join 41 other followers

%d bloggers like this: