According to a Giga Information Group report: “.NET helps Microsoft become more competitive in the enterprise development market but won’t make it a real threat to its major competition, Sun’s J2EE (source: Information Week’s Jason Levitt).”
Microsoft isn’t expected to get more than 35 % of the enterprise development market over the next two years. This is clearly in contrast to Sun’s market advantage. While Giga goes on to explain development platform differences, maturity, advantages and disadvantages, it seems to miss the most important point of all: Approximately 85 - 90% of developers and IT managers who adopt .NET are using a server-side Windows OS (i.e., Windows 2000 Professional, Windows NT, etc.).
Server-side Windows OS has between 25% - 32% of the total server-side OS market share, which consists of Windows, UNIX, Linux, Solaris and other. This is clearly in contrast to J2EE developers, who develop mostly for the server-side OS majority that’s not Windows (68% - 75%), consisting of UNIX, Linux, Solaris and other.
Giga goes on to say, “…the J2EE platform provides a richer set of tools and more vendor independence than Microsoft’s .NET. Though Microsoft will maintain strength with small to midsize businesses, the report points out that J2EE has more mature clustering, load balancing, and failover technology, and Java is a more productive language for building enterprise applications, at least until C# and .NET mature.” There is some truth to this, but .NET clearly has some advantages currently, including a standardized Web services framework and better interoperability.
For more on .NET and J2EE platform differences, check out Jim Farley’s article “Microsoft .NET vs. J2EE: How Do They Stack Up?”
Tell me which platform is better, and why?