Red Hat is looking for some awesome Product Managers

Looking for a new challenge in a fast growing business ? Familiar with Java, JBoss and Open Source ? Able to kick competitor butt and have fun ?

Product Manager, JBoss User Experience (UXP) Mobile Platform

The Product Manager, JBoss User Experience (UXP) and Mobile Platforms Group is looking for a Product Manager, to be responsible for the overall product life cycle of Red Hat’s User Experience Platforms including Mobile and Portal. The Product Manager will be responsible for determining the market requirements for a successful product and driving the overall product strategy. This Product Manager will also work closely with the product development and engineering teams to determine product priorities and plan product releases and determine the product roadmap.

Sr Product Manager, JBoss Application Platforms

JBoss Enterprise Application Platform is the market leading platform for innovative and scalable Java applications. Integrated, simplified, and delivered by the leader in enterprise open source software. Responsible for the overall product life cycle of Red Hat’s application platform products marketed under the JBoss brand name. Responsible for determining the market and technical requirements for a successful product and driving the overall product strategy. Will work closely with product development to determine product priorities and plan product releases and determine the product roadmap.

Sr. Product Manager, JBoss Enterprise SOA

The Sr. Product Manager will be responsible for the overall product life cycle of Red Hat’s JBoss Enterprise SOA platform, Enterprise Service Bus, BPEL engine, related tooling and integration with related technologies. The individual will be responsible for determining the market requirements for a successful product and driving the overall product strategy. This person will work closely with product development and engineering to determine product priorities and plan product releases and determine the product road map.

Java Container Popularity and a Prediction

Hey, 3 days into the New Year and my second blog post !

Another day, another survey – this one from Tools Vendor ZeroTurnaround. From what I can tell survey participants were self-selected – but the results underline what has been a solid trend over the last several years and I’ve seen the same in internal surveys I’ve commissioned.

Below is the 2009 / 2010 Container Popularity chart. Note the significant decline of Websphere and Weblogic and the growth in leaner, Open Source containers like JBoss, Jetty and Tomcat.

Screen shot 2011-01-03 at 10.55.01 AM.png

Glassfish bucked this trend – likely due to uncertainty about it’s future under it’s new owner Oracle. JBoss showed only a little growth – I’ll put this down to a fairly slow year in 2010. But 2011 is going to be very, very different. We already have a Java EE 6 Web Profile container (released last week) and JBoss AS 7 is taking shape pretty rapidly. With our increased attention to slimming the footprint and increasing the speed of adopting new technology and standards like Java EE 6 — my prediction is that JBoss will catch or overtake Tomcat in the next year.

The JBoss Product Lifecycle Explained

There was a fairly innocuous post on the interwebs at the end of last week which Oracle employees have jumped all over in an effort to discredit JBoss. I’ll rise above the petty mud-slinging and instead use this post to explain the relationship between upstream projects that JBoss uses and the downstream platforms that JBoss supports. It is my hope that people can then make their own informed decision about what to use to deploy their own applications.

So thanks for the opportunity to explain some of this.

First the obvious disclaimer – yes I work for Red Hat. Specifically I am the Director of Product Management for JBoss Enterprise Application Platforms and as such responsible for the product roadmap and technical direction of JBoss branded products like JBoss EWS, EAP and EWP.

So let me explain Red Hat’s model – something we call the Fedora / RHEL model internally. Red Hat provides subscriptions for use of its Enterprise distributions. A subscription provides the following (in no particular order) :

  • long-term world-class technical support – and we do it very well (PDF report)
  • long-term application compatibility
  • long-term stability and predictability
  • long-term partner certifications
  • legal assurance
  • long-term provision of security patches, performance enhancements bug fixes and RFEs

It may seem contrary if you’re used to the traditional model of “buying bits” but in our model, the provision of the bits is somewhat secondary; it’s something we have to do to support the value outlined above. For example, partners will only certify their applications and products if we have some way of identifying specific releases – supporting a continuous stream of releases is impractical. We can only provide application compatibility if we focus on specific identified releases.

So, one of the entitlements of a subscription is access to the supported binary distributions of a product – this is the thing to which we can apply all the other things I’ve outlined above.

For all of Red Hat’s products there are one or more upstream Open Source projects. In the case of JBoss EAP – the JBoss AS project is the primary components but JBoss EAP also includes Seam, mod_cluster, Apache CXF to name a few. Some of the projects that Red Hat uses in it commercial platforms are essentially Red Hat (or JBoss) projects – we provide the majority of developers, drive the roadmap and the release cadence (eg. JBoss AS, Seam, Hibernate), for others we’re merely one collaborator among many (eg. Apache CXF, OpenJDK, Apache HTTP).

Screen shot 2010-11-21 at 8.55.41 AM.png

The upstream Open Source projects is where the innovation happens – the focus of many of the Open Source projects driven by Red Hat is to act as technology incubators. Releases for projects like JBoss AS are frequent, experimental features are released, refined and re-released. That’s the focus – agility, speed, innovation. There’s never been any promise, implicit or otherwise that any given release is suitable for running your business critical applications. In fact we make it pretty clear on JBoss.org :

Screen shot 2010-11-21 at 8.40.58 AM.png

OK, so let’s dig into the relationship between project (or community) releases and platform releases. I’ll use JBoss AS (project) / JBoss EAP (platform) as examples as they are among the most widely downloaded / deployed :

Let’s take the JBoss AS 5 branch which was the foundation of the most recent JBoss EAP 5 family. JBoss AS 5 was focussed on a couple of big things : i) providing a new level of modularity via the Microcontainer 2.0; and ii) providing a Java EE 5 certified container. JBoss AS 5.0.1 was released in February 2009, followed a few months later by 5.1.0.

JBoss AS 5.1.0 met our functional criteria for JBoss EAP so that is what we picked up for our ‘productization’ process and JBoss AS 5.1.0 essentially became the Alpha Release for JBoss EAP 5.

Screen shot 2010-11-21 at 8.56.33 AM.png

The productization process is really not dissimilar to the kind of process you’d see in any other software company – we bring in all the major components, refine the dependencies, remove duplicates, perform additional testing above and beyond the community / project testing – focussing on security, performance, scalability, failure, longevity and the component integration points. We also look at documentation and the certification of third-party products like databases, Operating Systems, JVMs and other Application that work with JBoss. During this process we also run a traditional Early Access Program (aka Alpha, Beta) – this augments the attention the individual components receive during their own community release cycles. We’re fortunate to have some very willing customers who are able to apply significant resources to push our technology very hard using real-life applications and operational scenarios – often finding issues that are very hard to flush out in QE or during community release cycles.

The result of this process is an Enterprise Platform GA that differs from the upstream binary release we started with. First, we bundle additional components – like APR (Apache Portable run-time), Seam, mod_cluster, Apache CXF. And the core JBoss AS we include has a large number of fixes to address the security, performance and other issues identified during the productization process.

But that’s just the start.

Screen shot 2010-11-21 at 9.17.25 AM.png

JBoss EAP is supported for 7 years and with every additional minor or micro release we further improve the performance, security and stability of the Enterprise Platform. We’ve now released 2 micro and one minor release of JBoss EAP – that’s about 150 top-level issues in total. While the issue rate will slow over time – we’ll still be in a position to fix issues and respond to new security threats in 2016.

All those fixes are made available upstream and will ultimately make there way in to upstream binary releases but what the upstream project can’t guarantee is that those fixes will be isolated from more substantial changes and improvements – community releases typically don’t distinguish compatible bug fixes from more intrusive changes that provide the innovation.

OK so what happens to the community project once we’ve delivered an application platform? Well in the case of AS 5.0, from a Red Hat contributor perspective – the work was complete and Red Hat’s developers moved on to the next wave of innovation in AS 6 and AS 7. The goal of AS 6 is to deliver a Java EE 6 Web Profile implementation, the goal of AS 7 is to tackle the operational use-cases with a new domain model and console.

So to summarize this rather long post – if you want to deploy your business critical applications and receive long term support from Red Hat then the JBoss Enterprise Platforms are what I would recommend – if you’re more interested in seeing how those platforms will evolve and more interested in emerging technology but willing to take on more risk then upstream projects are where you should be looking. It all a matter of assessing the risk.

Lies, damned lies, and statistics

First some insight into how my twisted mind works. I rarely believe any bar chart, pie-chart, percentage I see presented unless I can access the raw data myself and draw my own conclusions. I’m not a statistician by trade or education but I’ve spent a lot of time running surveys and analyzing large data sets; so I have the benefit of some experience.

Replay Solutions just published a survey about Java Platform usage. The questioning, subsequent analysis and presentation of the results was poor IMO. But they did one thing right – they provided the raw data. Thanks for that.

There’s a posting on TSS entitled “Why is JBoss at the bottom of this list ???”. In typical TSS style – few people actually bothered to read the survey results or question them and a long and rather pointless thread ensues. This post is an expansion of my comment at the end of the TSS thread.

The original report has this chart :

Screen shot 2010-04-09 at 11.07.48 AM.png

Update – Sunday 4/11/10

My initial (very quick) analysis was wrong. My formula for searching for different categories had a basic reg-ex flaw so I was over-counting JBoss by fair bit. I’ve fixed that mistake (spreadsheet here) and also removed duplicates (responses with both “JB + TC” and “Tomcat” or “JBoss” – I’d already admitted to this minor double counting (in the comments) – the original author’s analysis still includes this error.

So the ranking is now the same as the original author’s but the %’s are different. My apologies to IBM for originally stealing their #2 spot 😉 By the way – Red Hat fully supports both Tomcat and JBoss AS – so #1 and #3 rankings and being able to satisfy 87% of the market isn’t such a bad result for us.

Screen shot 2010-04-11 at 8.25.17 AM.png

[As percentages of respondents – that’s : Tomcat = 59%, Websphere = 39%, JBoss = 28%, Weblogic = 23%, Other = 19%]

These rankings (WAS above JBoss) are more representative of larger organizations (where both WAS and WLS have traditionally been stronger) – the latest Eclipse survey shows a similar break-out. Unlike the Eclipse survey – this survey doesn’t have any information on the respondents and they seem to be largely self-selected.

My original points still stand – poor questioning, poor analysis and presentation are common in these kinds of surveys. Always ask for the source data !

JBoss Application Platform Q&A

Yesterday we started a series of Web Casts covering JBoss Application Platforms (Recording, Slides). We didn’t manage to cover all the questions in the Q&A so as promised here they are :

Q: When using your Apache & Tomcat bundled software, do you provide any additional security patches above and beyond what the Apache & Tomcat communities provide ?

A: Red Hat has a dedicated Security Response Team who’s role is to track alerts and security vulnerabilities in the community which may affect users of Red Hat products and services. They work with Open Source communities to identify, classify, diagnose and coordinate fixes. If Red Hat discovered a vulnerability in any Open Source project we would work with the community to coordinate a fix, we wouldn’t keep it secret.Where we might differ from the upstream project is in how we communicate the presence of vulnerabilities and deliver fixes to our customers.


Q: can you guys point out to any benchmarks on jboss as in comparison to the other j2ee containers available (ideally updated every once in a while) online for the people who look into jboss AS evaluation to come and compare it easily with the other AS and

We don’t currently have any public benchmarks comparing JBoss to other vendors. All proprietary vendors have specific restrictions in their EULA forbidding use in benchmarks, so the only viable way to provide a comparison is by comparing vendors submissions for some thing like SPECjAppServer2004. JBoss has long argued that SPECjAppServer2004 does not represent contemporary use of modern app. servers (a position that IBM now agree with) as such we’ve never paid much attention to SPECjAppServer2004 and we’ve never made a public submission. JBoss has been working with SPEC on a new benchmark which we think does better represent modern application server usage and we will, in time, provide our own public submissions.

Meanwhile, many customers who have moved large deployments from our proprietary competitors to JBoss typically cite overall cost saving as the main reason. Performance and overall cost are tightly linked.


Q: what is the official release date of EWP ?

A: Right now the best date I can give you is that it will be released sometime in this Calendar Quarter.


Q: why isn’t seam part of the web toolkit ?

A. That’s the long-term goal. ie. to separate the frameworks from the run-tmes as they typically evolve at different rates. We also want all the frameworks to be certified on all the run-times. This is a form of Pace Layering and I think it provides the greatest flexibility / agility.


Q: What is the level of support you give spring as part of the web toolkit ?

A. With the first version of the Web Framework Kit – Spring is a Technical Preview and not recommended for production use. The intention is to promote Spring to fully supported in the next minor release.


Q: why do you think glassfish managed to have jee5 server so soon ?

A. Because Sun is the spec. lead for Java EE – they have to deliver the Spec., the Reference Implementation and the TCK. It’s impractical for anyone to deliver an implementation before Sun. Just as it is impractical for anyone to deliver an implementation of Java CDI before Red Hat (the spec. lead).


Q: Are these versions (EWS, EWP, EAP) available in the community version, or only the enterprise version ?

A : The community version for EWS is Tomcat, mod_jk and Apache HTTP – you can see the exact versions included in EWS here. JBoss EWP only exists as a ‘profile’ in AS 5.1. You can see the exact component versions for the platforms on their respective web pages, eg. component page for JBoss EAP.


Q: When will EAP 5.0 be Java EE 6 certified ?

A. There is no plan to certify EAP 5.0 with the EE 6 TCK. EAP 5.0 supports Java EE 5, though it does include some features of Java EE 6 – specifically JAX-RS (RestEasy) and the Web Profile. If you want to see ho were progressing with Java EE 6 then take a look at JBoss AS 6.


Q: I would like easier upgrade path in RH Jboss vs jboss.org when you have your customized apps.. or is this a no problem ?

A : As long as you’re using the same base versions – portability should not be a problem. You can use this page to see what version level of components are included in EAP.


Q: What type of improvements are you looking at in order to support Cloud environments ?

A. Here are some of my thoughts :

  • Larger managed domains, possibly shared across BUs, requiring delegated administration and isolation.
  • More automated – everything needs to be easily automated or autonomous by design
  • Automation is just as likely driven by pre-defined policy as by a human sys. admin.
  • Better support for virtualized environments
  • Lower resource utilization
  • More dynamic – eg. to deal with elasticity – grow and shrink environments depending on pre-defined policies

Bob McWhirter and Marek Goldmann have been experimenting and prototyping some of these areas as part of the StormGrind project – take a look.


Q: Would web application developed in Jboss work on tomcat ?

A: JBoss EWP / EAP is a superset of Tomcat – as long as you limit your app. to use just the Web Container (ie. Servlet, JSP) – your app. will be portable. The web-container in JBoss EWP / EAP is based on Tomcat 6.0.18 so obviously supports the same versions of the Servlet (2.5) and JSP (2.1) specs. Tomcat 6.0.18 is also what we include in JBoss EWS.


Q: are there any limitations in the number or requests handled by using mod_jk ?

A. Good one – let me find out. Check this space for an update.
A. I checked with Jean-Frederic Clere, his response is :
“Apart from the OS limitations and httpd limitations (configuration in
httpd.conf, MaxClients for example) there aren’t any limits in the
number of requests mod_jk could handle.”


Q. where can I get the slides ?A. At some point they’ll appear along with the recorded sessions here.

JBoss Open Choice, Part 1 – JBoss Enterprise Web Server

It’s July 4th and we have an extended weekend in the US which is a good enough excuse to catch up on some blogging; at least until the Strawberry Margaritas start flowing. At Java One this year we announced an initiative called Open Choice which I blogged about previously. Fundamentally Open Choice is about broadening our footprint and giving customers what they want and moves us closer to supporting the whole applications infrastructure tier rather than just parts.

Open Choice isn’t some big, far-into-the-future vision thing it’s something we’re doing now. This year. Product-wise it consists of four offerings (where previously there was only one) and as we release them I’ll give you my perspective on why they’re important. Unfortunately I’m already a little behind – we’ve already delivered two products out of four and the third is in Alpha moving quickly towards Beta.

So let me use this post to talk about JBoss EWS 1.0 (Enterprise Web Server). EWS is basically a packaged, certified and tested bundle of Tomcat and Apache HTTP – the industry’s dominant Java web-container and Web Server respectively. We round out the bundle with mod_jk, APR and most importantly a management agent for JBoss ON. We currently support and certify on Red Hat Enterprise Linux and Solaris with Windows coming next.

Providing JBoss ON management support is pretty important – it gives customer the ability to manage the application and web stacks easily and consistently using the same toolset. If you want to learn more – there is a free Webinar on July 14th at 2pm Eastern – more here.

The rationale for supporting Tomcat is that it is absolutely the dominant Java web-container and has become an important part of the corporate IT fabric. Tomcat has been popular for years but in the last two or three  I’ve seen it evolve into a much more strategic platform for IT. Many customer I speak with have defined two distinct tiers of functionality – essentially a full Java EE stack and a lighter-weight Tomcat platform. By supporting both the dominant Java EE implementation (JBoss EAP) and Tomcat, combined with the ability to manage from a single tool – I think we can do a much better job of satisfying a much broader customer base than our competition. Here’s an (albeit unscientific) chart from a recent survey that demonstrates this well :

Most often use Java EE containers

It’s also interesting to note that from this survey JBoss’ deployment share is more than Websphere and Weblogic combined.

OK, so JBoss EWS 1.0 is out and we have customers deployed or deploying some pretty large, strategic apps. but I’m already thinking about the next version (code named Cavalier). Some initial ideas for Cavalier are :

  • increasing platform support to include AIX, HP-UX and maybe other Linux flavours;
  • alternative Connection Pool implementations for Tomcat;
  • looking at a more recent version of Apache HTTPD;
  • possibly supporting mod_cluster.
  • soft-appliances to better support virtualized hosts.

Any other thoughts are always welcome – leave a comment or get in touch directly.

Tab Sweep : JBoss

Another couple of super-busy months here at JBoss. If anything the pace of new releases and new projects is increasing. Here are some of the more prominent Community announcements I managed to bookmark :

JBoss App Server 5.1.0 CR1 – 5.1 is a pretty big milestone – it includes the new Jopr powered embedded console  – something you’ll like but also something we really need some early feedback on. Also a preview of Web Beans / JSR-299. [release notes, downloads]

Data Integration goes Open Source – I missed the launch of the Teiid Project you can find out more on the project page.

This has been brewing for a while and Manik has finally announced Infinispan – I predict that this is going to  be a pretty disruptive technology. [home page, quick guide]

JBoss Tattletale is a new tool that will analyze your code and produce detailed dependency reports – for example highlighting duplicate jars / classes, missing jars / classes, etc. [downloads, project]

The latest release of Jopr (2.2) is out – Jopr is the upstream project for JBoss Operations Network (see below). There are a shedload of UI enhancements, support for JBoss EWS and Performance improvements among other things.

Also a nice article on JBoss Cloud over on DZone.

On the JBoss Enterprise side of the house :

JBoss Operations Network 2.2 is out and JON receives a pretty decent makeover (see Greg’s post on some of the major enhancements) – product page is here.

One of the new capabilities of JON 2.2 is support for JBoss Enterprise Web Server (EWS) which was also released a few weeks ago – more on that in a future post.

If you’re currently stuck with Oracle Weblogic or IBM Websphere and need help getting off – here’s an opportunity you can’t ignore.

Sorry for the length of this post – I need to do this more frequently. The next couple of months are going to be even more hectic and you can follow the @JBossNews via Twitter. Finally, something from the happy news files – we’re still hiring.