Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News Rod Johnson: Are we there yet?

Rod Johnson: Are we there yet?

We've come a long way from the first versions of J2EE. We've learned to avoid invasive programming models, we've developed a rich set of frameworks and APIs, we know how to develop applications based around simple objects. Are we there yet? Most of us would answer no to that question. If we're not there yet, then where are we headed next? Spring founder Rod Johnson explores this issue. The talk was recorded in Sept 2006 at the JAOO conference in Denmark, sister conference to QCon.

Watch Are we there yet? (59 min)

The the talk traces how we got here, starting in 2000-2003 when open source didn't play a big role in the definition of the programming models.  Rod challenges the early assumptions that J2EE was built on, such as the aims to hide everything from developers, or waiting for tools vendors to simplify our lives.... "But tools that generate complex artifacts largely proved dead", as opposed to tools that work well with POJOS.  

Rod then makes the point that innovation in the Java space saw a "move from leadership by committee to leadership from the community."  Declaring the POJO as the defacto programming model that we'ved moved towards, Rod then evaluates various trends and techonologies supporting better OO including Domain Driven Design, AspectJ, DI, various features of Spring,  and takes special care to show how the features in EJB 3 (excluding JPA) is insufficient for proper OO compared to Spring & AspectJ.

Rod's conclusions on where we are:
We’ve made huge progress since 2003:
 -  But we’re not there
      - We’ve fixed most of the flaws in the existing model
     -  But there is more to do

We need to finish the process of freeing the power of Java
 - True objects
 - Rich domain models

We need to challenge some of our old assumptions
 - Do they hold today?
 - Need to consider the place of dynamic languages on the Java platform

Rate this Article