As I write this, I'm heading home from a trip to New York City; while I was there, I got together with some old friends I used to work with at a major Wall Street firm. Two of them still work there; another has gone to work for a company that builds and markets software for energy trading.
All three of them swear by Java. What was once considered iffy and experimental is now the standard. We talked about .NET, and our conversations led me to the following conclusion: although .NET is a huge improvement over the old Microsoft way, it makes only incremental improvements over J2EE -- none of which are compelling enough to convince a Java shop to rewrite everything in C#.
Sun can look at these incremental improvements, take what's actually useful, and incorporate it into future revs of J2EE. And Microsoft would do the same for their next rev of .NET. Essentially, Microsoft has caught up with Sun, and they'll be neck and neck for a long time, as each raises the bar slightly. And while .NET is not going to lure people away from J2EE, I think it will keep Microsoft shops from switching to Java.
Microsoft has a tremendous edge in Visual Studio .NET, however; from the Visual Studio .NET cockpit, you can get at every feature of .NET. From creating Web services to publishing them, you don't need to leave the development environment. I haven't seen anything comparable in the Java universe, but parts of it seem to be there in products like Borland's JBuilder, iPlanet's NetBeans and Forte, and other IDEs. Visual Studio .NET's ease-of-use has raised the bar, but its capabilities are not out of the reach of others.
.NET Framework Essentials
By contrast, I recently ordered the Sun ONE Starter Kit. The first CD was full of white papers; the next CD was Java stuff I could download from java.sun.com, and the other two CDs contained different versions of iPlanet. Compare that to Visual Studio .NET: minutes after installing, it walks you through the essential tasks, keeps a to-do list for you, deals with deployment issues, and folds your laundry. I was expecting more from the Sun ONE CD. It doesn't help Sun to reiterate the features of J2EE, which is what the Sun ONE CD does. I'm sure that for most features in J2EE, there's a corresponding one in .NET, and vice versa.
Maybe it's wrong to compare the Visual Studio .NET distribution to the Sun ONE Starter Kit, but I think people evaluating the two technologies will make these comparisons. Visual Studio .NET reduces the initial learning curve, and this is a huge advantage in wooing developers who haven't yet chosen between J2EE and .NET.
|Do you agree with Jepson's take? Or will .NET take a bigger bite out of Java?|
I would like to be able to insert the Sun ONE CD into my CD-ROM drive and find myself creating Web services 15 minutes later; even a road map would have been helpful. I felt overwhelmed when I saw all those white papers in my browser.
So while .NET certainly won't kill J2EE (not that I ever thought it would, but it feels reassuring to say it :-)), it does finally make Microsoft a viable contender in the enterprise space. With Visual Studio .NET's ability to make complex things very simple, Microsoft will not only keep its current customers but also make new customers out of people who, six months ago, would have gone with J2EE without a second thought.
Brian Jepson is an O'Reilly editor, programmer, and co-author of Mac OS X Panther for Unix Geeks and Learning Unix for Mac OS X Panther. He's also a volunteer system administrator and all-around geek for AS220, a non-profit arts center in Providence, Rhode Island. AS220 gives Rhode Island artists uncensored and unjuried forums for their work. These forums include galleries, performance space, and publications. Brian sees to it that technology, especially free software, supports that mission. You can follow Brian's blog here.
Return to the .NET DevCenter.
Copyright © 2009 O'Reilly Media, Inc.