The Best and Worst of 2010

On the first couple of days of 2011 I’m sitting down to continue a tradition I started in 2005 (2006, 2008, 2009) I find this a nice way to review the year before its committed to the cobwebs of my long-term memory. So, here’s a quick review of the best and worst of 2010 :

Best Moments

The U7 Soccer team I coach has really come together this year – I’ve coached many of these kids for the last couple of years and this year was the first time I’ve seen teamwork and tactics emerge. They’re also super-competitive which I think is a “skill” that’s being eroded – there are valuable lessons in winning and losing. Making everyone a winner creates kids who are ill-prepared for the ups and downs of real-life.   

IMG_0342.JPG

We visited Washington, DC over the Thanksgiving break – not the first time I’ve visited but it was the first time I’ve had the time to look around. Reading the inscriptions on the Lincoln Memorial reminds you of how far the United States has come in such a short time and of how great the United States has been through it’s short history – hopefully we now have a leader in office who can restore that greatness. I’m hopeful but only time will tell.

IMG_0651.JPG

I work for Red Hat and through 2010 we continued to turn in good results; after my final few years at Sun staring into gloomy uncertainty – it’s nice to be on a wining team and looking ahead with optimism. It’s also nice to be in a smaller company where the impact of ones efforts on the company’s growth and success (or otherwise) are much more apparent.

Biggest Disappointment

Last year the TSA just edged out the Right-wingnuts but this year the axis of stupid take the prize. Every time I hear Sarah Palin or Glen Beck talk – I’m stunned at the breadth and depth of idiocy it takes for them to be considered leaders. Their followers are making the rest of America look stupid to the rest of the world.

Best Technology

This is a tough one. I held off buying an iPad for while but finally succumbed in August. Soon after – it replaced the “smart-phone” as the tech. toy I use the most. Apple have done it again and defined a new category – I’m excited about the future of tablets with many competing devices emerging – there are many tasks for which a touch screen presents a far more natural user experience. I still haven’t found the killer app. for the iPad but iCal, Things, Kindle Reader and Flipboard are some of my favorites that have embraced the new form factor.

On the other hand is the Garmin Edge 800 GPS-Enabled Cycling Computer – while it has a few kinks that need to be ironed out (I’m downloading the latest firmware update as we speak) – it generally rocks and Garmin have a pretty nice web service for collecting all the data from your runs, rides and workouts – Garmin Connect. I like Garmin products, like Apple – they generally “just work” and don’t get in the way too much – that, in my mind, is success in consumer technology – “get out of the way and become invisible”. I do need spend some more time playing with routes and maps and workouts on the Garmin – there’s a wealth of functionality that I haven’t tapped into yet.

photo.JPG

So in the interests of continued health and well-being – I’ll go with the Garmin Edge 800.

Best Book

I’m still working through Neal Stephenson’s – The Baroque Cycle – a mid numbingly long and complex story of truly epic proportions and as with all Neal Stephenson – impeccably well presented. I’m mid way through book seven of eight so it will be another month or so before I’m finished. For that reason – I’ll go with “A Walk in the Woods: Rediscovering America on the Appalachian Trail” (Bill Bryson) – a fine way to spend a Sunday afternoon at the pool.

Best Film

The only time I go to the Cinema is when I take my kids – so generally catch-up with grown-up movies via Apple TV – a few weeks back I saw Inception – very cool visually with a good story line – good enough to watch again at some point. So I think Inception wins it this year.

Java is Still the Future for Enterprise App. Development

I tried to add a comment to the Forrester blog but I received a “Validation Error” – here’s my comment to Mike Gualtieri’s blog post : “Java Is a Dead-End for Enterprise App Development”

Mike makes some valid points but to claim that Java is a dead-end is a bit sensationalist. By Forrester’s own data – it’s the only mainstream tech. that’s showed sustained growth over the last couple of years – I’m fairly sure 2010 data will continue the same trend.

Sure, Java has it’s limitations and it’s continued commitment to compatibility has hindered its ability to meet new needs but there still really is no better alternative. While Ruby, Scala, Groovy, etc. are compelling for some applications they would need unprecedented sustained growth before they become real main-stream alternatives to Java or .NET. During that adoption ramp they will no-doubt expand to meet additional requirements and their simplicity will be compromised.

These things move at glacial paces – I still meet with customers who are only just starting out with Java. It’s important not to be biased by what the alpha-geeks are looking for – it’s the late majority that provide the momentum.

The End of OpenOffice ?

oo.png

I’ve been a mostly happy OO user for the most part of the last decade (ever since my then employer – Sun acquired StarOffice) – it’s really been the only office application I’ve used consistently at home and at work and I’ve used it across many operating systems – Winders, many Linux variants and OS/X. I haven’t use the ‘other’ popular office suite for more than a decade.

But I have been grumbling more than usual lately about the various annoying bugs and inconsistencies and have moved a lot of my professional use to proprietary tools like OmniGraffle and Keynote. Even though I’d consider myself as an OO power user – OO is not just looking extremely dated but I find other tools on the Mac *way* more productive and that unfortunately trumps my desire to support Open Source.

I don’t think it will be long before I drop OO completely.

But maybe there’s a glimmer of hope. With Oracle’s takeover of the Open Office project (courtesy of Sun) and their clumsy handling of open source communities it seems there has been a mass defection from the Oracle controlled OO project to The Document Foundation. Maybe this is the kind of shake-up the OO needs – here’s hoping.

Oracle on OpenJDK

These are encouraging signs that Oracle will continue to invest in OpenJDK and that it won’t follow the same fate as some other Sun Open Source projects like Open Solaris. I’ve long believed that OpenJDK has the opportunity to become the Linux Kernel for Enterprise developers.

Kurian discussed the roadmap for JDK 7 and JDK 8, which will be based on OpenJDK

“In addition, Oracle remains committed to OpenJDK as the the best open source Java implementation and we will continue to improve OpenJDK and welcome external contributors.”
http://www.oracle.com/us/corporate/press/173712

“Oracle will work with the OpenJDK code base and the OpenJDK community
like Sun did. We wil
l continue to develop the JDK in the open under a
GPL license
. We welcome the cooperation and contribution of any member
of the community – individuals as well as organizations – who would
like to be part of moving the most widely used software platform
forward.”

http://blogs.oracle.com/henrik/

JBoss World Red Hat Summit 2010

Summit2010_OfficialSpeaker_jbw_180x150_0310LL.png

I’ll be speaking at JBoss World / Red Hat Summit again this year. I’m part of 3 sessions focussed on JBoss :

JBoss Enterprise Application Platform Roadmap, Wednesday 2pm

I’ll be sharing our 3-year roadmap and will touch on Java EE 6, HornetQ, Infinispan, support next-Gen (aka Cloud) infrastructure. I’ll also go through some of the changes we’ve recently made to our “release taxonomy”. What I expect you to get from the session is a clear understanding of our major areas of focus and the direction that JBoss EAP is heading in so you can better plan your own deployments. I looked at the feedback forms from last year and the only 2 negative comments were “more chairs please” – hopefully we’ll have a bigger room this year but come early.

Andiamo – Towards Operational Excellence with JBoss, Wednesday 5.30pm

Myself, Andy Miller, Brian Stansberry, Jason Greene and Charles Crouch will be holding this BOF session to discuss some of the changes we’re considering for JBoss EAP 6. Generally the discussion will be around operational ease of use, management, monitoring, tuning, diagnostics, deployment. Getting community input at this stage is super important so come along and tell us what you’d like to see. There’s a good chance of beers afterwards ;)

Java 2020

I’ll be sharing the stage with fellow Brit. and JBoss CTO – Mark Little to discuss Java past, present and future and give a Red Hat perspective of some of the challenges and opportunities ahead. We’ll be covering Next Gen. Infrastructure (aka cloud), Multi-language VMs, virtualization, SOA and many other subjects. We may have time towards the end to discuss England’s performance in the World Cup.

If there are questions or areas you’d like to see us specifically cover in these sessions – either leave me a comment or drop me an email (rich dot sharples at my employer dot com) or DM (richsharples).

JBoss World and Summit represents a great opportunity for me to meet some of my colleagues, learn about other technology areas at Red Hat and spend time with customers. As with all tech. conferences – the real value is in the contacts you make and the hall-way conversations you have. I’ll be around all week – if you want to chat – get in touch.

See you in Boston !

Oracle’s loss could be Rackspace’s gain

I previously highlighted the fate of OpenSSO – a test case for Oracle and a living experiment for Open Source – possibly allowing us to understand how or whether a project really can outlive it’s corporate backer.

Well, it seems that another piece of the Sun OSS portfolio has floated adrift from the Oracle mother-ship. Some of the key developers have left / are leaving Oracle and have joined Rackspace. With this Rackspace essentially becomes the guardian of one of the major development branches of MySQL. It would be interesting to know what Oracle would price their MySQL assets at today.

Happy Birthday Apache HTTP Server

Screen shot 2010-02-23 at 7.40.14 PM.png

Apparently it was Apache Web Server’s 15th birthday yesterday – congratulations to anyone who’s ever been involved in the project. I doubt any would have thought that 15 years on, Apache would have become the dominant Web Server on the Web and the foundation of one of the most successful and recognized Open Source forges. For a history of the Apache Web Server and the Apache Software Foundation, head over to the ASF Blog.

Red Hat has been a supporter of Apache Web Server for a long time and has shipped and supported a version in its Red Hat Enterprise Linux for as long as I’ve been noodling with it. Last year we started shipping a standalone, multi-platform distribution as well – JBoss Enterprise Web Server. Earlier today we released the latest version of it and expanded our support for Apache HTTP Server to 14 different Operating System / architecture combinations. The exact component versions are listed here and there’s more information in the Release Notes. If you’re deploying Apache HTTP or Tomcat at scale – Red Hat also supports management of Apache HTTP Server and Tomcat alongside all JBoss products via JBoss Operations Network.

Immortality of Code / Life beyond Snoracle

One of the benefits we talk about with Open Source is that the license and collaborative nature can offer some protection for users should the main supporter disappear. Rarely has this been put to test but here’s an example that came across in my feeds today. OpenSSO was a Sun project that Oracle seemingly killed last week as part of their assimilation / refactoring process. In less than a week, it seems there’s already a commercial organization twilling support the code-base. From ForgeRock’s web page :

ForgeRock OpenAM is the market leading open source Authentication, Authorization, Entitlement and Federation product. ForgeRock is providing the community with a new home for Sun Microsystems’ OpenSSO product.

Good luck to ForgeRock – I recognize quite a few of the names as fellow Sun / iPlanet / Netscape Alumni. It will be interesting to see how this plays out – it got ugly the last time something like this happened.

Oracle and the Java Opportunity

I guess there’s a chance that we’ll know more tomorrow but regarding the future of Java under Oracle’s control – I’m still neutral to optimistic and sticking to what I said 6 months ago :

DZone: With Oracle’s acquisition of Sun, are you concerned at all about some of the potential changes that will come as a result, to the governance and licensing options to the OpenJDK?

Rich: I’m really not that concerned. There are all sorts of scenarios that people are suggesting. I still believe Oracle will do the right thing. They have far too much to lose, by either accidently or purposely sabotaging OpenJDK. They have a very healthy business based around Java. Creating unrest, creating any kind of distrust or fragmentation of the Java community really isn’t going to help Oracle. So I think they’ll do the right thing. I also think they probably have the ability to invest in Java more than Sun had over the last five years at least. Sun kind of had some fairly pressing financial issues. I think that, above all else, probably hindered some of the progress of Java over the last five years.

So overall, I’m coming in neutral to slightly optimistic. If things do go awry, I’m sure Red Hat the rest of the Java community will step up and help Oracle to get back on track. So, yeah, I’m pretty comfortable with it.

My only real concerns is that Oracle understands products and monetization much better than they understand community and collaboration so I think a misstep or two are more likely to occur than Oracle purposefully sabotaging Java. Harming Java will devalue their investment and their chances of getting a decent return.

On the positive side – I think there’s still huge growth potential for the Java platform – I see no reason why it can’t become the dominant standard for the enterprise – I personally think we’re at the start of the decline of Microsoft and Java is the only viable alternative to Microsoft’s enterprise foothold. Microsoft’s enterprise presence is not insignificant but neither is it guaranteed – it’s largely based on an historically well adopted OS and Microsoft’s missteps in that area are pretty well known by now .

Java needs some strong leadership, investment and a open, vibrant and growing community.

I raising my mug of tea to The Next Decade of Java !

The Evolution of Enterprise Java

400px-Human_evolution_scheme.png

Zallinger’s “March of Progress” from wikipedia.

I’ve been part of the Java ecosystem for long enough to see and be part of every Java EE / J2EE release to date. I still have a Forte SynerJ box-set somewhere – we claimed it as the first fully integrated J2EE 1.2 App Server and IDE – that was around 1999 and I was part of Sun for every subsequent release up to Java EE 5.

With the final votes in for Java EE 6 and with the year and decade coming to an end – it seems a fitting time to look back and see how far the Java EE platform has evolved :

  • J2EE 1.2 (1999) – announced just short of 10 years ago was the first attempt to create an umberalla specification to cover some existing web-tier, messaging and data access technologies (JDBC, Servlets, JTA, etc.) as well as the new middle tier technology – EJBs.
  • J2EE 1.3 (2001) – was from my recollection the first broadly adopted and deployed version, it added Connectors (a standard way to connect to back-end ‘legacy’ systems), some rudimentary support for XML Web Services and a pluggable security layer. EJBs got a major overhaul.
  • J2EE 1.4 (2003) – added JMX, a gaggle of specs. to support Web Services (JAXR, JAX-RPC). I think around this time – everyone had written their first App. using EJB’s and had learned that combined with CMP (Container Managed Persistence) they weren’t exactly getting the productivity boost they were hoping for. I think J2EE 1.4 was the “Vista” of Enterprise Java – over-engineered and ultimately underwhelming.
  • Java EE 5 (2006) – A name change and some new hope – mandatory XML deployment descriptors gave way to annotations, persistence took a lesson from the de-facto ORM solution – Hibernate. There was an alternative to, ahem, RPC-style Web Services with the inclusion of JAX-WS.
  • Java EE 6 (2009) – It’s been a while in the making and had a bad start but after ten years I think we now really see the start of a cohesive platform with a common programming model via CDI (JSR-299) and many of the criticisms leveled at the platform have been answered.

Java EE 6 also defines the new Web Profile – this is essentially a slimmed-down EE focussed on web applications. I think it’s much more than that – I think it’s an opportunity to really redefine the Enterprise Java platform and shed some of the legacy APIs. While the backward compatibility that EE dictates has been good – it’s also contributed to some bloat in the platform.

It’s interesting to see how the size of the Java EE spec. has changed over the years (assuming size of the spec. is a reasonable indicator of complexity)

  • J2EE 1.2 weighed in at just 140 pages;
  • J2EE 1.3 added about another 25% (174 pages);
  • J2EE 1.4 increased it by almost 40% (246 pages)
  • Java EE 5 actually bought the page count down by 10%;
  • and the last draft of the Java EE 6 spec. I read only added about 6% (236 pages) – despite some pretty major enhancements.

Despite several rounds of consolidation and various acquisitions – vendor support has remained impressive. There were 18 J2EE 1.2 certified servers, and even seven years later there were still 13 (for Java EE 5). I’d be surprised if there weren’t at least 10 vendors supporting Java EE 6 at some point – even after Oracle has assimilated BEA and Sun.

Despite its huge adoption, Java EE and the process by which it is defined (the JCP) has drawn a lot of criticism. Releases have often fallen short of expectations, been perceived as overly complex or taken too long to deliver; but despite the criticisms nobody can deny that Java EE has been a huge success. Java EE is not just a specification – its grown into an entire category of the software industry. I can think of no other technology that has bought so many competing vendors together to define such a broad and widely use platform.

I’m sure the JCP isn’t perfect and I’m sure vendor politics gets in the way of progress from time to time and Sun’s stewardship of Java hasn’t been flawless but step back and try to imagine what our industry would be like without an open and collaborative Java ecosystem. It will be interesting to see whether Oracle take a different approach (as they’ve suggested in the past) when they become the new stewards of Java. Let’s hope hey continue to encourage collaboration and diversity.

The various expert groups that define the Java platform is not, as many suggest, completely controlled by big vendors. My own company Red Hat is not an industry behemoth, there are divisions and offices within companies like IBM and Oracle that are bigger than Red Hat and JBoss, the middleware business unit of Red Hat is only a part of the entire company. Despite that – Red Hat has demonstrated yet again it’s willingness to punch way above it’s weight and has had an influence on Java EE disproportionate to it’s size. Congratulations to Gavin King, Pete Muir, Sacha Labourey. Emmanuel Bernard, etc for tirelessly pushing for simplicity in the EE platform.

JBoss AS 6 Milestone 1 is out and includes some of the key Java EE 6 features. Releases seem to be coming pretty frequently so you’ll see more EE 6 feature appearing over time.