alphaspirit - Fotolia

Microsoft vs. IBM: A major shift in Java support

Once an afterthought in the Java community, Microsoft has seemingly overtaken IBM as the preeminent advocate among developers at the Oracle Code One conference.

SAN FRANCISCO -- There once was a time when IBM was arguably the most dominant force in the enterprise Java community. And yet at Oracle Code One 2019, signs all pointed to how Microsoft wants in, while IBM wants out -- a major shift in the Microsoft vs. IBM discussion.

It was always IBM, after all, that invested heavily in Java development, while Microsoft didn't bother. As IBM pushes itself away from the Java table, Microsoft appears ready to take a seat.

Microsoft vs. IBM: A reversal of roles

IBM invented the Eclipse IDE. IBM pushed Fortune 500 clients onto WebSphere, which drove widespread adoption of server-side Java. And when Oracle bought Sun Microsystems a decade ago, it was IBM that put in a serious bid for Sun's technologies. If Oracle hadn't sweetened its offer, IBM likely would have become the steward of the Java language.

But IBM's interest waned over the years, and the company has severely neglected its WebSphere user base, providing inadequate updates to the server, portal and web content management (WCM) tools. Even today, the WCM editor doesn't support multiple browser tabs. The web-based server administration UI blows up when you click the back button, and the portal configuration tool is severely outdated. Nobody in the industry was surprised when IBM sold its on-premises WebSphere offerings to HCL Industries earlier this year.

From a user perspective, it feels like IBM gave up on WebSphere and sever-side Java a long time ago. Instead, Big Blue is focused on AI, the cloud and its bewildering assortment of Watson-branded tools. IBM certainly didn't present as strong a front at Oracle Code One 2019 as it did when the conference was called JavaOne, and that contrasts starkly with Microsoft.

Microsoft vs. IBM: One lays inroads for Java developers, the other retracts

Microsoft's .NET platform has always been a direct competitor to Java EE, and any tool that flew under Bill Gates' flag was ripe for criticism from the Java community -- no matter how technically sound it might be. Despite a position behind the 8-ball in terms of Java mindshare, Microsoft has done everything it can over the past 18 months to endear itself to the developer community.

Microsoft became an AdoptOpenJDK sponsor in June 2018. More recently, Microsoft acquired jClarity, which meant respected Java Champions such as Martijn Verburg and Ben Evans were brought into the Microsoft fold. And, despite owning Team Foundation Server, a popular and capable version-control system in its own right, Microsoft spent $7.5 billion on GitHub, a DVCS tool that hosts a variety of Apache and other open source Java projects.

Microsoft servers have never been the primary deployment target of Java EE apps. But a cloud-native Java application that runs within Docker can be hosted on Microsoft Azure with ease. Containerization has opened up the playing field, and Microsoft can salivate over the formerly inaccessible revenue potential the enterprise Java space represents.

Oracle Code One 2019 may well be remembered as the turning point in the Microsoft vs. IBM discussion. This is the year that saw Microsoft start to make serious inroads to the Java community and transform itself from a punching bag to a respected advocate.

This notion really hit home when I saw a session at Code One with Kirk Pepperdine -- a Java Champion who has always been fiercely independent -- and realized that he's now a principal engineer at Microsoft. It's equally as elucidating to see Reza Rahman -- the former Java EE evangelist for Oracle -- represent Microsoft in his "Birds of a Feather" sessions.

It's pretty clear. Microsoft has made a serious play at the enterprise Java space, and IBM has drifted off in other directions.

Dig Deeper on Core Java APIs and programming techniques

App Architecture
Software Quality
Cloud Computing
Security
SearchAWS
Close