The Best and Worst of 2009

s_full-moon

On the eve of the last day of the penultimate year of the first decade of the third millennium and continuing a tradition I started in 2005, here’s a quick summary of 2009 – ignoring everything between the peaks and troughs.

Best Moment

Aside from every 3 months when Red Hat announces another knockout quarter 😉

My eight-year old daughter is absolutely racing through the Harry Potter books. She’s finished the first three and is just over half way through the forth (Harry Potter and the Goblet of Fire). After she’s finished with each book we watch the movie version. I’ve always been a big Sci-fi and Fantasy fan and it’s good to have an excuse to watch the Harry Potter movies and fantastic to see my daughter see the magic of books despite the lure of on-demand cable, movies, video games, the internet, etc.

Biggest Disappointment

This is a tough one – it’s a toss up between the right wing nut cases who maintain that this country’s problems only started the day Obama took office; and the TSA who are still punishing millions of innocent travelers every day with their ill-conceived knee-jerk reactions because they have consistently failed to improve air travel security. I can easily ignore the right wing nut cases – but I have to travel and comply with the TSA’s pointless and ineffective rules. So the TSA wins.

Best Application

My utilitarian ThinkPad semi-failed me over the summer so I used that as an excuse to flip back to using a Mac. I still use the ThinkPad as a desktop in my home office running Fedora but it is no longer portable. I’ve been using multiple machines for years (typically running OS/X and one or more flavours of Linux) and never found a nice simple way to share files until I found Dropbox. I use it all the time and now find it invaluable. [note to self – I should probably post some tips and ideas of how I use it at some point]. So Dropbox gets the top-spot. Runners up are MindNode (mind mapping) and Evernote (lists, notes, etc.). Note to personal productivity software developers – it’s no accident that all these apps. integrate with my iPhone.

I should also add; or repeat, as I’ve said it before – AR is going to be *big* – maybe this year enough people will be carrying a powerful smartphone to make 2010 the year of AR.

Best Book

I had high hopes for “And Another Thing”, Eoin Colfer – Book 6 of the HHGTTG “trilogy” but I think it was a mistake to try and replicate Douglas Adam’s style – that’s too high a bar for any author in my opinion. I’m currently wading through “Too Big to Fail”, Andrew Sorkin – an epic and well researched saga of the financial grey goo but I can’t count that as I won’t be finished with it this year. So I’d have to choose the “Omnivore’s Dilemma : A Natural History of Four Meals by Michael Pollan. The book didn’t change my life in a major way but it has made me a bit more selective about what I am wiling to put in my stomach.

Anyway, enjoy the Blue Moon tonight and have a healthy, prosperous and happy New Year.

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.

Red Hat Summit :: JBoss World :: Boston :: 2010

Screen shot 2009-11-17 at 12.15.43 PM.png

Red Hat Summit :: JBoss World :: Boston :: June 22-25, 2010

I think I’ve just about recovered from the last JBoss World. Chicago is a fun place and I’m glad I finally got to spend some time there; next year it’s in one of my favorite cities – Boston. From the email :

A comprehensive agenda allows you the unique opportunity to move between both conferences, and learn about open source advancements through:

  • technical and business seminars
  • hands-on labs and demos
  • customer case studies
  • networking opportunities
  • partner displays
  • visionary keynotes
  • direct collaboration with Red Hat engineers

Sign up for special discounts and 2010 Red Hat Summit and JBoss World updates

Interested in presenting at the 2010 Red Hat Summit and JBoss World? Call for papers will open soon! Make sure to sign up for our “Call for Papers Alert List” on the 2010 Red Hat Summit and JBoss World website.

We’re looking forward to seeing you at the 2010 Summit and JBoss World in Boston, June 22 – 25, 2010.

Follow us on Twitter.
Watch the 2010 Red Hat Summit and JBoss World video.

JBoss : Vision and Execution

Another nice score card from Gartner puts JBoss Enterprise App. Platform in the leader’s quadrant of the Gartner Magic Quadrant for Enterprise Application Servers. That’s the fourth year in a row, in case you were wondering. Unscientific as it is – comparing with last year I’d say the leaders are widening the gap (cumulative advantage ?) and JBoss specifically has inched up on the Ability to Execute axis.

Interestingly, Salesforce.com were joined by a couple of other PaaS vendors in the MQ this year – it will be interesting to see if there really is a new wave of infrastructure bearing down on the established platforms. The contemporary PaaS offerings I see today under-achieve as general purpose developer platforms and that leaves them competing with IAAS based on more traditional / established technology (Java, .NET) on cost and convenience terms. It will be good to see “Cloud” get beyond the current over-hyped phase so we can see how this will play out.

More Red Hat commentary here.

Releases / Lifecycles and other Product Management Miscellany

jbosscorp_logo.png

This week we GA’d JBoss EAP 5.0. As you’d expect from a new release there’s a long list of new features, capabilities and APIs and at some point I’ll talk about those some more. But the intention of this post is to give you an idea of some of the other less visible things that have happened with this release. EAP 5.0 marks a key milestone in the evolution of JBoss and demonstrates where we’re heading with the JBoss Platforms.

Performance

We set some pretty aggressive performance targets for this release. By comparison to JBoss EAP 4.3 we see an increase in peak throughput of about 20%, faster response times and more scalable HTTP connection handling. Performance is an ongoing activity and we’re continuing our investment in improving it in future releases. Performance at any cost is interesting to few outside of Formula 1 and Rocket Science and it isn’t a goal – we’re specifically interested in price / performance using a broad range of typical, real-life workloads.

Quality

Popular Open Source technologies (like JBoss AS – on which EAP is based) have always had the benefit of a large community who actively poke and prod. and push the software in different ways; who peer into the design and code and offer improvements.The result is some pretty decent, efficient and well polished code. But with the JBoss platforms we go one (or several steps) further. For EAP we had a long and active Early Access Program. It started back in April and is only now winding down as FCS customers complete their work. The diagram Below illustrates how we connect the AS and EAP lifecycle, the upstream (AS) GA essentially starts our EAP Early access program. This allows enterprise customers to start using a stable (though incomplete) release with the full backing of Red Hat Global Support.

Screen shot 2009-11-06 at 9.50.09 AM.png

Obviously the diagram is a massive oversimplification – EAP is more than AS – it is the integration point for Seam, RESTEasy, the installer, mod_cluster and the Apache Native components.

With every release we also enhance our QE coverage; in the case of this release there was a bigger focus on Performance, Stress and Longevity testing using larger and more complex topologies and a broader range of workloads.

Lifecycle

We’ve also refreshed and restated our product update and support policy for all JBoss platforms – the hope is that it’s more clear, better aligned with other products from Red Hat and puts even more distance between us and our Open Source competitors.

Screen shot 2009-11-06 at 9.54.11 AM.png

Ease of Use

A while back we kicked of an Internal initiative called “Andiamo” – I talked a little about it at JBoss World, and Mark wrote about it recently. While much of what we have planned around Operational and Development Ease of Use is planned for release beyond EAP 5.0, EAP 5.0 does lay the foundation for some of the things we need to achieve. The new Microcontainer provides us a very flexible and powerful toolbox that will allow us to build the middleware platform for the next decade. Specifically around ease of use, and as a taste of things to come we did provide a first cut of the new embedded console (it replaces the old JMX and Web Consoles). It has pretty limited functionality right now but I think it achieves the goal of making simple tasks simple to do.

What’s Next ?

The EAP Springtime Release (nominally EAP 5.1) is well underway and we’ll be pushing for even greater performance gains as well as defining the target platform for an upcoming Common Citeria (EAL 4+) certification.

We’re also underway with the EAP Lancer Release (nominally EAP 6.0) which will be the first major output of the Andiamo work as well as supporting the new Java EE 6 platform.

Onwards and Upwards.

Tab Sweep : JBoss World 2009

JBoss World 2009

JBoss World 2009 is just under 3 weeks away and it’s still not too late to register. GEICO CIO Jess Reed will be one of the keynotes this year underlining that JBoss World is a great place to come and learn how other organizations just like you have saved money and improved performance and stability by moving to JBoss and Red Hat.

“GEICO is the 3rd largest passenger auto-insurer in the US and provides coverage for 9 million policyholders.”

“Reed will highlight GEICO’s deployment of Red Hat’s JBoss Enterprise Middleware and their use of open source middleware software for mission critical platforms”

You can even save money ($400) on saving money by registering before the event.

I’ll be at Red Hat Summit / JBoss World all week and have a couple of sessions talking about JBoss Enterprise App. Platform both present and future. If you’re around and want to chat – get in touch.

Bugs

I’m still amazed by the diversity of wildlife we see in North Carolina (and previously in California). I seem to remember very little about English wildlife other than Hedgehogs, Crows and the occasional Fox and numerous brown and grey bugs. Contrast that two these two colorful critters spotted in the last few days. The first are a pair (male and female) of Black and Yellow Garden Spiders – named for their Black and Yellowness and their location in the Garden no doubt.

The pictures are a bit crap as I had to poke my arm through the undergrowth and click.

img_0983 img_0979

The next encounter was a bit further a-field – North Topsail Beach to precise. This stunning Yellow Io Moth wanted to hitch a ride home with us. A bit of prodding made her open her wings before we put her safely on the ground.

img_0977

Migrating to JBoss

jbosscorp_logo

An increasing amount of the bigger deals I see at JBoss come at the expense of our competitors like Oracle and IBM. Technology decisions that were made 5, 6 or 7 years ago are being reviewed and JBoss is the clear alternative

If you are looking to migrate from Weblogic or Websphere we have a growing list of migration success stories including :

KLM / Air France expect to save 11 million Euros by moving from Websphere and AIX to Red Hat and JBoss

Education Testing Services (ETS) reduced costs and boosted competitiveness by moving from Websphere and Solaris to Red Hat and JBoss.

Avis Rental Cars reduced TCO and increased flexibility by moving from Solaris and Weblogic to JBoss and Red Hat

More Weblogic migrations stories

More Websphere migration stories

We also have some practical advice in the form of a couple of Migration Webinars this week :

Best Practices for Switching Application Servers

Date: Wednesday, July 29, 2009

JBoss Migration Factory: How to use new JBoss tools to reduce migration risks

Date: Thursday, July 30, 2009

Finally, JBoss World 2009 is just over a month away and there are quite a few sessions on migration from Websphere, Weblogic and Tomcat to JBoss (full agenda)

JBoss EAP 4.3 Achieves Security Certification

cc-logo

A few weeks back JBoss Enterprise App. Platform 4.3 achieved Common Criteria Certification at Evaluation Assurance Level (EAL) 2+ – here’s the press release and here’s the evaluators updated page.

Common Criteria Evaluation is an internationally recognized standard that defines a  framework for computer systems users to specify security requirements; for vendors to implement them and for third-party evaluators to test them. The Evaluation process ensures that this is all carried out in a consistent, formalized and standard way.

The Evaluation Assurance Level (EAL) describes the “depth and rigour” of the evaluation not necessarily the security hardness. Though products certified at Level 7 (the highest) are likely to be deployed more demanding and secure environments than a product certified at Level 1 (the lowest). EAL 2+ means the products have been evaluated in collaboration with the vendor (eg. to provide development, design and test documentation).

What this means is that customers who care about security (who doesn’t ?) can be assured that JBoss Enterprise App. Platform 4.3 will meet commonly accepted, best practice security requirements. Even outside military and government use, who use Common Criteria as a benchmark, this evaluation should demonstrate Red Hat’s commitment to security. It’s a long and fairly involved process and the costs aren’t insignificant.

This is the first successful evaluation for a JBoss product but the JBoss Data Services Platform is currently in process and we’re already planning for a more stringent evaluation (higher EAL) for JBoss EAP 5.x.