The Source for Java Technology Collaboration
User: Password:



Gregg Sporar

Gregg Sporar's Blog

Beyond Java

Posted by gsporar on November 13, 2005 at 12:52 PM | Comments (3)

I just finished the new book from Bruce Tate: Beyond Java, published by O'Reilly. For the record, I'm a big fan - I really enjoyed his Bitter Java. And while Beyond Java is well worth your time and money, it is important to realize the book has some limitations. Tate acknowledges these himself; this is from page 177:

Of course, the whole premise of this book is arrogant beyond belief. I'm making an incredible number of assumptions and drawing some aggressive conclusions based on little more than a couple of dozen interviews, a keen sense of intuition, and a few massive piles of circumstancial evidence.

The bigger limitation to keep in mind, though, is that Tate's conclusions may not apply to you. This is from page 43: "I'd guess that as many as half of all commercial applications involve a web frontend that baby-sits a plain old relational database." I don't necessarily disagree with his guess, but here's the key thing to understand: Tate makes his living building those sorts of applications. So when he describes the pain that Java forces him to endure in order to build systems for his clients, you have to ask yourself: "Does this apply to me?"

It appears that in Tate's view, most Java developers are like him: building web front ends that do create/read/update/delete operations on a relational database, with perhaps some additional business logic. And while I don't dispute that a large proportion of Java developers are building those sorts of applications, not everyone makes their living that way.

His central point is that Java has drifted away from serving the needs of developers such as himself. The addition of enterprise features and frameworks has added complexity that is not needed by the majority of applications and therefore just ends up making developers less productive. It is important to note that he disdains the use of Java for rich client applications. Also of note is that development of mobile applications gets very little mention in the book.

Regardless of what type of Java development you do, though, the book is still a good read. Tate points out several problems with the current world of Java. Coupled with the emergence of new languages and their attendant frameworks (e.g. Ruby on Rails) it only makes sense to ask if there's a better way than Java. The most interesting parts of the book are the chapters that look at those alternatives.

I spotted only a few typos in the text - certainly below average for a book like this. The only real annoyance is the repetition. The quote I used above from page 43 is repeated in similar form several times throughout the book. More grating, though, is that a lot of the information about alternatives in chapter 5 is repeated in chapter 9. The best example is that the sample PHP source code on page 173 is identical to the source code example on page 92. Kind of ironic for a guy who espouses "don't repeat yourself." :-)

Those flaws are worth overlooking though if this book causes you to question your assumptions. Exposure to new ideas is usually healthy.


Bookmark blog post: del.icio.us del.icio.us Digg Digg DZone DZone Furl Furl Reddit Reddit
Comments
Comments are listed in date ascending order (oldest first) | Post Comment

  • Gregg,

    Having recently read Beyond Java myself, I think your assessment of the book is pretty good. I think that Bruce is perhaps a bit overreaching in leading the reader to believe that Java as a whole is nearing its end. Where I think these newer languages/frameworks, such as Ruby on Rails will do some displacement of Java is in precisely the area he mentions, that of a simple web frontend babysitting a relational database. In the case of Ruby on Rails, I think that its more of a potential replacement for PHP, Python, and Perl than it will ever be for Java, and especially J2EE.

    Java is a force in too many industries to be easily displaced anytime in the near future.
    Timothy Fisher
    http://timothyfisher.javadevelopersjournal.com

    Posted by: timothyf on November 13, 2005 at 02:45 PM

  • Timothy wrote:
    I think that Bruce is perhaps a bit overreaching in leading the reader to believe that Java as a whole is nearing its end.
    I don't doubt you're right. I suspect Bruce would have sold a few less copies were his book titled "A Bunch of Things That Annoy Me About Java and Some Alternatives That Might Steal a Portion of Its Market Share." ; )
    Graham.

    Posted by: grlea on November 13, 2005 at 09:11 PM

  • I didn't read the book, but thie "disdains the use of Java for rich client applications" turns me off right away. Java is being used more now than ever for rich client desktop applications and its only getting better. Java offers a heck of a lot of capabilities for desktop development, especially for the cross platform desktop app. There really isn't anything with todays entry level computers being so powerful that Java couldn't be used for with desktop development.

    Kind of makes me think Bruce has his eyes closed and mouth open on something he knows little about. If you can make a blanket statement like that when Java on the desktop is at its best and growing, doesn't say a whole lot for the credibility of the author.

    Posted by: buckman1 on November 13, 2005 at 11:46 PM





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