Today I was talking with my co-worker Ravan about the various web frameworks there are now in the Java world. There’s Struts, of course, Spring MVC, Spring Webflow, Tapestry, Beehive/Netui, JSF, Shale… and undoubtedly many more. One or two years ago it was obvious which one you were going to use (Struts); right now it’s hard to tell where to put your money. Chances are, the framework you’re building your enterprise application with today, will be out of fashion (or worse, out of existence) next year. Three years from now, who’s going to maintain all that code written with, by then, outdated frameworks?
By coincidence I came across some half-hidden postings later today, about a newly proposed framework called Clarity–the one framework to replace them all. Representatives from several of the existing frameworks (Spring, WebWork, Struts Ti and Beehive) have joined the initiative. Clarity’s goal is “to unify WebWork, Struts, Spring MVC, Beehive, and Spring WebFlow in to a single project that establishes clear leadership in the web development space.” Right now there seems to be little more than a mailing list and a mission statement. It does sound promising though. Think of it: the best of Spring, Struts and Beehive united. If it’s done well (easy to use, easy to code) it could well be the Java answer to Ruby on Rails. (No, let’s not go there; Rails and J2EE are for different kinds of applications, that won’t change).
I see only one potential problem: that Clarity will fail to replace the existing frameworks, and will become just another framework coexisting with the others. If that happens, we’re all doomed. This initiative might be more important for Java than these few cautious postings seem to suggest…
Yesterday, a familiar Ruby coder showed me a piece of Ruby code that used Ruby’s programmer-friendly if-construct, where you can place the if clause after the conditional block of code. It was something like this:
Continue Reading »
Last Friday, Holland was surprised by heavy snowfall. The result was chaos on the roads, people being stuck in their car until late in the evening, people stuck in train stations… And all this because of 10 centimeters of snow. I shot (in my car, hands-free of course!) this rather dramatic-looking photo yesterday, on my way over from the office (which is located directly in the heart of the snow area), when it was still snowing continuously:
Personally, I wouldn’t mind if this first snow of the season will also be the last. I’m sure I was born for a warmer climate than this. Snow is great–for one week a year maximum, and provided I’m in a little hotel somewhere in France or Switzerland, sitting by the fire, with a book in one hand and a glass of wine in the other, knowing there’ll be a good meal on the table later on… in that scenario, I don’t mind looking out the window seeing some snow flakes falling.
Our last winter vacation came close to this perfection. M. and I and some friends drove down to the tiny village of Bois Barbu, in the French Vercors region. We stayed in the Ferme du Bois Barbu, a small hotel with friendly owners. We made some great walks through the snowy landscape, and we even tried cross-country skiing (which was fun… for a day). This is a picture (actually two photos combined) from one of our walks:
I’ve been using Rob Miller’s Now Reading plugin to show a list of books I’m currently reading in my blog’s sidebar, as you can see. The plugin allows you to show sublists of books you’re reading, books you’ve read, and books you’re planning to read. However, I wanted more, so I’ve done some hacking. What I’ve added is:
- a new category, ‘Favorite books’;
- an option to display only the category/categories you want;
- a text field for each book to store and later display your own review.
Continue Reading »
About eight or nine years ago, I first read about Java in Wired Magazine. At the time, I was mostly programming in Delphi, C, and, if I really had to, in Oracle Forms. It wasn’t altogether clear what role Java was going to play; any examples you ever saw were applets, doing image animations on a web page. I bought a book that promised to explain it all, but did little else but list the standard libraries api docs. Although over time, more and more people were saying Java was going to be the next great thing, I didn’t have a clue what to do with Java, there & then. (Until 2000, when I did my first web app with Java, with EJB’s, and started wondering why I had ever wanted to be a part of this next great thing).
Right now I’m having a strong feeling of deja vu. This time, it’s about Ruby. Everyone probably knows by now that Ruby is a scripting language, developed nine years ago in Japan, became very popular in the rest of the world in the last year or so. Recurring discussions on TSS revolve around the question if and when Ruby is to be preferred over Java, and if it will be the next great thing. Surely the language looks interesting enough, and so does the web framework, Rails. But in order to really get to know it, I have to use it in a real project, doing real stuff (I have not enough patience or spare time to just code something for the sake of it).
There’s several books written about Ruby, of which Programming Ruby comes recommended by Remco, my local Ruby guru (and by none other than Martin Fowler, I read at Amazon). Until now, I’ve done it the cheap way by reading Why’s (Poignant) Guide to Ruby. This free ebook explains the basics of the language in the form of a rather insane story, illustrated with equally wacko comic strips. It tries to offer memory aids through its story for Ruby’s language features. Unfortunately, most of these memory aids are so far-fetched that I’m having trouble remembering _them,_ let alone the language elements they’re supposed to remind me of. But it does make for entertaining reading, offering an easy introducting to Ruby.