About software development for the enterprise. Focus on Java EE and more general Java platforms.
You'll read a lot about Conferences, Java User Groups, Java EE, Integration, AS7, WildFly, EAP and other technologies that hit my road.

Thursday, June 2, 2011

Review: "Real World Java EE Night Hacks - Dissecting the Business Tier" by Adam Bien

20:57 Thursday, June 2, 2011 Posted by Markus Eisele
, ,
In a very irregular series I do some book reviews here. One paperback found it's way to my post box a few weeks ago already. And it was the one, I was most curious about this year. Adam told me, he is going to write something during last years flight back from OOW/JavaOne. And since we know each other roughly since 2005 it feels like I am following his way through mutual customers and the Java community for ages.
Reading his first self published book "Real World Java EE Patterns Rethinking Best Practices" was somehow an unexpected eye-opener. After Sun stopped the blueprint team and their work around Java EE pattern and best practices never got updated like it would be necessary, Adam positioned himself as a worthy successor. Knowing about him writing a complete end-to-end Java EE example was exciting. Here is my honest review of the long awaited masterpiece.
Real World Java EE Night Hacks walks through best practices and patterns used to create a real world application called "X-ray." This is a high-performance blog statistics application add-on for Apache Roller which is built with nothing but "vanilla" Java EE 6. Covering JAX-RS, EJB 3.1, JPA 2, and CDI 1.0 APIs. Adam managed to force (I guess, you payed him a beer, right? ;) ) James Gosling the Father of Java to write a very nice foreword for him,

Book: Real World Java EE Night Hacks - Dissecting the Business Tier
Language : English
Paperback : 167 pages
Release Date : April 2011
Publisher: press.adam-bien.com; First Iteration edition (2011)
ISBN-10: 1447672313
ISBN-13: 978-1447672319

About the author
Independent consultant and author Adam Bien http://blog.adam-bien.com is an Expert Group member for the Java EE 6/7, EJB 3.x, JAX-RS, JMS, and JPA 2.x JSRs. He has worked with Java technology since JDK 1.0 and with Servlets/EJB 1.0, and currently, he is as an independent architect and developer on Java SE, Java EE, and JavaFX projects. Adam has edited several books about JavaFX, J2EE, and Java EE. Adam is also a Java Champion, Oracle ACE Director and JavaOne 2009 Rock Star.

The content
Short five pages after you opened the book you have to jump in. Chapters one and two sets the stage and introduce you to the problem domain. This is all about missing detailed statistics in Apache Roller which is the blogging software powering Adam's blog. The actual performance probe is developed in chapter 3. Followed by the REST services needed for X-Ray in chapter 4 and the needed client in 5. Chapter six offers some solutions to the overall development process (covering Hudson, Maven, etc). Chapter 7 talks about testing with Java EE 6 and also briefly covers Arquillian. The final chapter eight covers some architectural thoughts about patterns and components.

Writing and style
Adam's writing is clear and easy to read even for non native speakers. The code samples are very extensive and you can follow every important point in seconds. There is not a single point I am unhappy about.

My expectations
High. Probably still an understatement. That's potentially one of the reasons I somehow was a little bit disappointed reading through it. The list of technologies it has on the cover is _impressive_ and I would kill to read a book about an end-to-end story about it. I should have started wondering looking at the total of 167 pages. The aim of the book is obviously NOT to teach you how to use any of the technologies listed on the cover but you can still learn about them. This makes the book a good starting point. But don't think you will get to the end without doing further research on your own.

Conclusion and recommendation
If you are one of those guys working your way through state of the art Java EE projects. Go! Get it! It's probably the only book beside it's predecessor able to provide in-depth insights and real live value to your projects. If you are a beginner. Go! Get it! But keep in mind, that you probably will need much more books before you can follow what Adam has written. It's not a reference text, but it's a source of inspiration.