IT Analyst James Governor from RedMonk has a posting about what IBM needs to do to get more involved in the web 2.0 world.
Here is my response to James:
Re. WAS CE, I don’t think Buell, or anyone at IBM, would say that WAS CE is IBM’s answer to the Web 2.0 question. <shamelessPlugForMyOldProduct> WAS CE is really intended to answer the question: “how do we deal with customers, developers and partners that want a rock-solid, light-weight J2EE application server with the latest innovations from an open community, that can be used for free or a minimal cost?” </shamelessPlugForMyOldProduct>
Now to the broader question posed by James re. Web 2.0. I think we need a definition of Web 2.0 before discussing it. I like Tim O’Reilly’s seven principles of Web 2.0:
1. The Web as Platform
2. Harnessing Collective Intelligence
3. Data is the Next “Intel Inside”
4. End of the Software Release Cycle
5. Lightweight Programming Models
6. Software Above the Level of a Single Device
7. Rich User Experiences
Before we go much further, I think we need to settle of the fact that IBM is by in large a Java shop (just as Oracle, Sun, BEA and others are). This is not a statement of goodness or badness, just a statement of fact, well near fact, because IBM has lots of customers using COBOL, C, Smalltalk, FORTRAN, and other languages that I can spell but were in use before my birth.
The problem that all Java-vendors are facing is the fact that Java, as wonderful as it is, really isn’t what a typical Web 2.0 developer is using. I could go on, but this article from O’Reilly on Java’s role in web 2.0 does the trick. As a related aside, here’s a great pitch from Cal Henderson of Flickr on the technologies that drive Flickr.
Now, with this in mind:
As stated by James, turing on the infrastructure for hosting a Web 2.0 platform for customers, developers and partners isn’t the major issue, since IBM already has the infrastructure. But having the infrastructure isn’t going to guarantee a “Build it and they will come” success story.
To ensure success for IBM’s Web 2.0 hosting platform (which I’m sure any number of IBM strategy teams are looking at, have looked at, or will look at), IBM needs to give precedence to Web 2.0 technologies over Java. To be fair, this is happening already. If you visited developerWorks 5 years ago, it was really a Java-centric site, now there is a spotlight on many other technologies.
But this is where all Java-centric vendors including IBM have to walk a fine line between current customers and potential customers.
Option 1: If IBM were to announce broad-based support for a scripting language (PHP, Python, or gasp! Perl), then current customers would be calling their sales reps asking if their Java investments were safe. Competing Java vendors would be contacting said customers to spread FUD about IBM’s waning interest in Java. Insert risk, panic and mass hysteria here.
Option 2: If IBM sits on the fence and continues to push for integration of scripting languages onto of current Java-based IBM products, like this or this from BEA or this from Oracle, they stand to miss addressing the core customer need. Web 2.0 notables like Digg or Flickr (Yahoo) wants to use a technology like PHP in a fashion that highlights the light-weight, yet powerful and iterative, nature of PHP. Putting PHP inside of a Java container of any size, adds complexity that a Web 2.0 developer isn’t truly willing to accept, especially when the code-save-refresh metaphor of Web 2.0 development is hindered with the structured development/deployment model associated with Java/J2EE.
Most of the time, given the choice, all established companies will take the less risky route. IBM, BEA, Oracle and Sun are no different. Option 1 above would be laden with risk, but the benefit would be giving the grassroots developer, customer, and partner, what they want, really, really want (random Spice Girls reference). We shouldn’t neglect the issue of Java-centric vendors being known as, well, Java-centric. So, for example, it’s not as if a developer will turn to BEA for a PHP solution just because they announced support for PHP. This roadblock is not insurmountable, but it shouldn’t be neglected.
To date, Java-centric vendors including IBM have chosen Option 2 because it is less risky, plays to their strengths and continues to build value in Java (which is where Java-centric vendors have invested hundreds of millions or billions of dollars over the past decade). And to present a balanced argument, a current Java-centric customer may actually, in the long run, want to write Web 2.0 applications using their favourite Java infrastructure, to leverage their Java investments also. But in the short term, when they are getting their Web 2.0 feet wet, it won’t be by using their favourite Java infrastructure. It will be by following the best practices of ‘best infrastructure‘ that Web 2.0 stars are using, namely LAMP.
So James, I’d propose that the hosting infrastructure for Web 2.0 is one part of the puzzle for IBM’s strategy for Web 2.0. If the hosting infrastructure is just a way to push more Java towards the customer/developer/partner, then a significant portion of customers/developers/partners will look for an alternative platform that lets them use LAMP to get whatever it is they need to get done. At least in the (critical) short term while they get familiar with the ‘brave new world’.