Like professional wrestlers and politicians, the high-tech industry is always game for a showdown.
At its professional developers conference in Los Angeles in late last month, Microsoft continued this tradition by opening up a big can of whoop-ass on its competitor – or, in wrestling terms its nemesis – Sun Microsystems.
This we’re-number-one proclamation came in the form of a white paper presented by Scott Stansfield, CEO of Point Richmond, Calif.-based Vertigo Software. The white paper documents a comparison of Microsoft .NET with Sun J2EE in the development of an application.
“We do a lot of C# development in our company. We also do a lot of Java programming,” Stansfield said in his general session presentation with Eric Rudder, vice-president of technical strategy at Microsoft. “We [used] Sun’s Java Enterprise Reference Architecture [which is] designed in a book called Designing Enterprise Applications, the Java 2 Platform Enterprise Edition. They have a little program called the Java Pet Store and we thought this would be a great opportunity to take this application and migrate it to C# as a way of giving the Java developers a migration path and give them something that they’re comfortable with in understanding how to do development in .NET.
“So we had this book, had the time in the company, and we were already familiar with the program, so we got a couple of developers together and over the course of…five weeks we proceeded to really understand what this application is about to make sure we duplicated the functionality, but do it in a way that makes sense for .NET.”
According to Stansfield and the white paper, the results were surprising. In a comparison of lines of code required, which compared the implementation logic of the exact same application functionality for each platform, the .NET Pet Shop weighed in at 4,410 lines, while J2EE’s Pet Store used 14,273 lines of code.
Stansfield attributed the dramatic difference in line count to Microsoft’s new framework.
“We thought it maybe had something to do with the model view controller architecture in Java or the beamed managed persistence architecture or the fact that it’s just a little bit heavier architecture, but I think a lot of it has to do with the fact that we were able to take advantage of new features in XML in ASP.NET,” Stansfield said. These features included “data bound server controls, dragging and dropping them onto the surface…we also used user controls to reuse some of the common UIs like searching and product catalogues and lists. We were able to use the ASP.NET form spaced authentication.”
Stansfield took the process a step further, by taking the application to the lab and testing its performance. The developers replicated hardware that was used to do benchmarking of the Java Pet Store application by Oracle, and tested user support and speed.
“What they [Oracle] did is they cut off the testing once the pages were coming back longer than one second. So how many users could they support with pages coming back in less than a second? Well, they peaked at about 450 users,” Stansfield explained. “So we go into the lab. How many users can we support? What’s our page response time when we hit 450? This number is actually 35 milliseconds, and for the very few of you that can’t do long division in your head, 1,000 milliseconds divided by 35 is a very big number. It’s 28, a factor of 28 times faster. So we said, ‘let’s let this thing rip. How far can we go until we cross the 1.0 threshold?’ We got over 3,000 concurrent users. That’s six times more capacity.”
In wrestling terminology, that would be called a half-nelson.
Dwight Davis, an analyst with Boston-based Summit Strategies, found the results of the white paper to be interesting, although he is uncertain about Vertigo’s affinity to Microsoft.
“It is definitely compelling information, and is the kind of thing that could put Sun forces on the defensive,” Davis said. “This is exactly the kind of thing that could be hotly debated and will probably spark competing development projects with competing points and benchmarks. This is where the rubber meets the road for all Web services initiatives.”
Karen Tegan, director of Sun Microsystems Inc.’s J2EE platform services and compatibility for Java software in Boston took the high road when asked about the benchmark by stressing what J2EE is rather than what it isn’t.
“J2EE is much farther ahead in the technology and the real key here is the market adoption,” Tegan said. “There are application servers available today to support the technology, and the fact of the matter is, our blueprint applications will run if distributed with almost all of these application servers. If you write to the programming model it’s portable across the wide variety of servers. That’s the Java mantra and will continue to be. That’s our passion.”
The Microsoft .NET implementation source code can be found online at www.gotdotnet.com/compare, and the Sun J233 code is at http://java.sun.com/j2ee/blueprints/index.html.
There will be more on the petstore showdown in the next issue of ComputerWorld Canada.
In the print version of Issue 23 of ComputerWorld Canada, a graph that accompanied this story appeared incorrectly. The colours in the graph were reversed, making it appear as if Sun’s results were Microsoft’s. We regret the error and will present the correct version of the graph in the next issue.