Skip to content

Going with the lesser known web framework

August 22, 2007

In the past I’ve been a proponent of Tapestry. It had a nice component based view of the world and there were certain elegant concepts that were very appealing. Unfortunately it had two major flaws:

1. It’s too complicated.
2. Backward compatibility has been thrown out the door multiple times.

Tapestry takes a significant time to learn. Although getting basic stuff done with Tapestry isn’t too hard, and it does get easier with each release, the more advanced stuff can be confusing. There’s a lot of code under the hood. It is my belief that you can’t have that much code without things getting complicated.

The backward compatibility issue is also a big problem. Every release of Tapestry has changed some fundamental thing about the way the framework works. If you’ve got a substantial investment in code based around a version of Tapestry that gets obsoleted within 6 months then obsoleted again in another year it doesn’t do wonders for your confidence in the project. No project exists in a vacuum. There are external things to consider such as tools, projects and books. These all suffer when the foundations of a framework keep shifting.

There was a great discussion around these issues in the Tapestry 101 weblog. To be fair it should be pointed out that Howard has said the next version of Tapestry should be the last major release. I hope this is true because I still think Tapestry has a lot going for it.

Anyway… didn’t actually want to rant on Tapestry. The frameworks I have been using these days is not one that many are aware of. The Click Framework is yet another component based framework.

One of the goals of click is to be very simple, easy to learn and not try to do everything under the sun. I think it meets these goals very well. If you don’t count the click controls the total size of the click framework is under 20 classes. The API has also proved to be be very stable.

Anyone could pick click up very easily. Many frameworks seem to suffer from the problem of layering on massive piles of unnecessary abstraction. When the core framework is very thin it is usually not hard to trace a problem back to it’s root cause.

Making it even simpler to use is some excellent documentation. This is another area where many projects can be found lacking. Overall click is probably the most undervalued web framework around at the moment. The downside to this is that it’s unlikely that you’ll find anyone who has experience with it. While this is certainly an issue I’ve never had anyone who has used it come and say that it’s too hard to pick up. Spending 10 minutes reading the documentation is usually enough to give most people a good idea of how to do the basics.

So if you’re looking around wondering which framework to go with take some time and try Click.

From → Technical

Leave a Comment

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 )

Google photo

You are commenting using your Google 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

%d bloggers like this: