The Source for Java Technology Collaboration
User: Password:



Vikram Goyal's Blog

May 2006 Archives


Java frameworks - maybe too many

Posted by gvix on May 09, 2006 at 09:42 PM | Permalink | Comments (20)

A recent discussion on the Queensland JUG mailing list here in Australia, has echoed some of my thoughts on Java frameworks. Before I point you towards this list and the messages in it, let me confess something.

I have never used Hibernate commercially.

There. With that career ending publicly stated confession, let me take a bow and get out of the way to contemplate a career change to opening my own curry restaurant (Ah, at least I would be able to eat my own creations).

For that matter, I haven't actually ever used Spring. Or Tapestry. Or Velocity. Webwork? No. I do have books on Hibernate, Spring and Tapestry.

While I am in this self-destruct mood, let me add. The last framework that I actually used and can tell you everything about in a heartbeat is Struts, version 1.1. I have only recently used Struts 1.2, and would be clueless if you asked me anything about the new Struts Shale Framework, based on Java Server Faces.

For me, the requirement to use anything over that framework didn't arise (the fact that my day job requires me to work partially with ASP.NET may have something to do with it as well). Unlearning a solid, reliable framework that did everything that you asked of it, just didn't seem right. There is not a single case I could make against using Struts (1.1 and 1.2) in production environments.

So, back to the list. Paul Reedman, responding to an article on a failed Java project in West Australia, hit the nail on the head by saying:

"Java Frameworks good grief what a joke, take your pick we have a million of them. Everyday on Server Side I read about a NEW, FANTASTIC, LABOUR saving framework.

I still run into Java projects that build their own frameworks !!! Yes Struts or hibernate is not good enough, we need our own framework, so lets spend precious several weeks (or months) of the project time recasting a new web framework."

He goes on to add:

"Another thing I have noticed is that Java people love building layers. So a particular developer doesn't like the interface into hibernate or struts (or whatever framework) so they build another layer on top of the framework.

This layer then becomes complicated and so a whole bunch of other people add to the layer in an attempt to make it "easier". (which doesn't happen because all they have done is to make it more complicated). Of course this new layer hides everything and soon you have no idea what you are doing. Importantly no one documents this new layer, so when new people join the project, they ask "I don't understand this framework..". Of course they don't know that underneath all of this software is plain old struts which has disappeared from view."

How true. Plain old Struts. Even though I have a propensity to add multiple layers to my Struts projects, I love the fact that Struts is the glue holding them together in a working whole. There was a never a requirement weird enough that made me think, "Hmm. Maybe Struts can't do that, better look at other frameworks".

Or maybe, I am holding on to the past without thinking about the future. Would I still be using Struts (ok maybe 1.2 instead of 1.1) 5 years from now? 10 years?

Or would I be giving away free rice with your curry?




Pro Mobile Media API Book released

Posted by gvix on May 02, 2006 at 04:25 AM | Permalink | Comments (7)

Update 10th May 2006: Sorry! All free copies are gone. If you need it, please consider buying the book.

In keeping with complete compliance with the java.net weblog policies, may I introduce you in a selfless way to my book on Mobile Media API, recently released by Apress.

Mobile Media API, as you may know, allows you to add multimedia capabilities to your Java enabled device (For an introduction to this API, please read a tutorial at java.net by, ahem, me, here: http://today.java.net/pub/a/today/2005/09/27/j2me4.html). The book covers this API in exhaustive detail and shows you how to add audio and video, generate tones, play with MIDI, capture audio and video streams and so on.

You can buy the book at Amazon here, or get to the book's website at Apress here. The Apress site also has a sample chapter on Media Player Lifecycle and Events. Finally, the book's companion site is here, where I run a case study on audio/video/text blogging from your mobile phone using MMAPI.

I also plan to giveaway two copies of the book to the first two people who promise to write a review on Amazon afterwards. Please email and convince me of your commitment at vikram@mmapibook.com!

Comments, feedback etc. also welcome at vikram@mmapibook.com.





Powered by
Movable Type 3.01D
 Feed java.net RSS Feeds