Some time back during my days in elipva I created something called SPAF (Sttarfire Portal Application Framework) which had a number of features that could be said to be a web application framework. Not long after that, with the company name change, SPAF became ePAF and then came version 2.0 and additional features in that. There were even more features that were web application framework-like. ePAF had in part used the usual servlets, JSPs, DAOs and even EJBs to a certain extent. Some time later (I forgot how long) I wrote what eventually became Zephyr. Although we had great difficulties in categorizing it properly then (I suppose now most people would call it a web mashup of sorts) it also eventually grew the elements of a web application framework. Throughout all these I got pretty tired of web application frameworks and went off to do other stuff like smart cards and such.
Then I found Rails and I found myself smacking my forehead twice. That was what I was trying to do! I enjoyed myself so much doing various stuff with Rails but it soon hit me that though it was the next-step natural evolution of web application framework, it wasn’t Java.
And Java/J2EE is what most people out are using. It’s a cold hard fact that no matter how much any die-hard fan of Rails (like me) wishes not to be true, it’s unfortunately the reality. That got me started on another track. Java on Rails? The truth is, there’s nothing wrong with Java. It’s a perfectly good programming language and platform, and the one thing that no one can beat today, is the breath-taking range of APIs that are available out there. True, it’s not as beautiful as Ruby but it’s making all the right moves in evolving to be something better (hopefully). It’s much faster. There’s so much more official support for it, whereever you go. And then there’s the hordes of people who code in Java.
So what then? Really Java on Rails? I tried a short experiment with something I called Java Server Scripts (more in another post). Works OK though it’s no Rails at this point in time. Should I jump back into the world of Java web application frameworks?