J2EE vs. .NET "Smackdown"
I was a "referee" last night at the J2EE vs. Microsoft "Smackdown" event created by SD Forum and held in Redwood Shores. There were about 300 people in the room and afterwards I talked with both teams and both felt that it was a good event, so I think there's a good chance that the companies will continue to have at least some kind of "on stage" dialogue with each other, which I feel is the key thing.
Questions were prepared by SD Forum and given to both companies in advance, so they (a) weren't as technically focussed as I probably would have preferred but (b) the companies were able to prepare arguments, with slides and quotes and graphs, which I think was very good. The crowd favored Java, but when I asked how many in the people considered "truly open to the debate" about which platform to choose, a majority of the audience stood.
Several themes emerged: Sun strongly promoted the "community" message while Microsoft had more diverse themes: simplicity == productivity, universal connectivity == heterogeneoous environments, and lower costs. On a purely debating level, I think Sun did a better job of "staying on message" and you did have the sense that the pro-Java crowd noise occasionally damped the Microsoft guys enthusiasm. There was a noticeable exception when Microsoft's Dave Weller answered a question on cost and just hammered through his slides while shouting "400% productivity increase! 200% productivity increase! ... etc ..."
On the other hand, Sun slung mud, especially on the question about security. Security is far too important a subject to be "answered" by saying "they suck." Which was, unfortunately, part of Microsoft's answer to the Pet Store Application question. "They started it!" was a literal quote and both sides made mention of the fact that the use of the Pet Store Application as a "benchmark" was started by Larry Ellison.
To my surprise and disappointment, Microsoft is absolutely not backing off the use of the Pet Store Application as an "independent middleware benchmark." Microsoft's Dino Chelsea showed graphs showing, for instance, SOAP throughput where they did very well; he said that was an area driven by XML serialization/deserialization "and that is something we have optimized the heck out of." But doesn't that just raise the question "So if someone writes a lightning-fast XML parser for Java, those ratios might dramatically change? Is that an important datapoint for a CTO trying to make a platform decision?"
During a break, a Sun guy tried to float a trial balloon on the basis by which a lawsuit regarding Pet Store might be founded and I instantly responded with: "In retrospect, do you think the JNI lawsuit was beneficial to the community?" "No," he said.
Another note I made was that Sun is still making what I think of as the ".NOT YET" argument, the claim that .NET is vaporware. I think that argument is on its last legs and should be retired; Microsoft has pretty good customers running .NET at this point (one that widened my eyes was a Merrill Lynch voice-driven application that does 21,000 transactions per second!). Sun's Tim (Tom? Something else?) Daly, an Australian guy, did a really nice argument on the importance of middleware benchmarking versus database benchmarking, while Sun's Sang Shin was clearly the most versed in professional speaking (modulating his voice, controlled arm gestures, etc.) Microsoft's Weller had the single-strongest presentation with his "cost and productivity" slides.
Afterwards, Alan Zeichick of SD Times (another ref) and I met with Dino Chelsea and Shauna Sickels of Waggener Edstrom. It was primarily just a chance for them to get "face time" with Alan, as SD Times is becoming more and more influential, but we did suggest that it would benefit the community if Microsoft and Sun had a "plug fest" in which they demonstrated Java applets hitting .NET Web Services and .NET rich clients hitting EJB-based Web Services. We suggested that Microsoft trade a booth at PDC for a booth at JavaOne! They pointed out that such a thing would have enormous political obstacles, but I still think it would be good for the community: neither J2EE nor .NET is going to achieve monopoly marketshare and many companies will move forward with applications written on both platforms (Microsoft very clearly acknowledged this reality, which I think is good). There are several natural "join points" (to borrow a phrase from aspect-oriented programming) for integration, but clearly Web Services is the one of most interest to technical managers today.
I think both companies did an excellent job and I was very happy to hear them acknowledge the importance of live events, in a variety of different formats. If an event such as this is organized in your area, I think it's definitely worth going to: it is, of course, primarily a marketing exercise by both companies, but I think the content was quite substantial and provided audience members a good understanding of the substantive issues of the platform decision.