
| Home | Blog | Services | Portfolio | Resumé | Contact | Search | Lynton Research Digest | Casa dei due Mori |
| Portfolio overview | Publications: | Writing | Speaking | Case Studies: | SpiritSoft | CatchFIRE |
In the face of rampant bias and exaggeration from both J2EE and .NET camps, how can you decide which of these great platforms will give you, your web services project and your company the best return on investment?
The more we at SpiritSoft thought about the question, the more this sounded like the kind of agony questions typically posed to a gossip columnist like "Should I date a Gemini?" or "Should I practice monogamy in my dating relationships?". As with most dilemmas, it's hard to make the right choice; it depends on understanding your particular problems, and matching them against the strengths and weaknesses of each of these platforms.
So we thought we would try and answer the .Net or J2EE debate with a slight Ann Landers or Dear Abby twist. Here's a multiple choice quiz that we hope will help you in your decision:
Your choice of platform will be strongly influenced by the kind of application you are building. An investment bank may need to use complex derivative pricing algorithms that are encapsulated in existing spreadsheets or DLLs; a manufacturer relies on its enterprise resource planning software:
Microsoft's development tools are legendary; they get you from nowhere to a functioning application in double-quick time. But they have not mastered round-trip and re-engineering, or the range of well thought out development patterns now being implemented in the Java community. It seems .NET is geared towards instant gratification - support for open asynchronous messaging standards (like JMS - the Java Message Service) is simply not in place.
It's tough to go against the grain. Re-training staff is time- consuming and expensive. If you're a Microsoft shop, or rely on multiple languages, then you probably have the right infrastructure to support .NET; even COBOL programmers can join in:
Distributing complex client applications to hundreds of users can be a major cost. Do you need to be thinking about standardized desktop configurations and software asset management? Will Java applets take too long to download? Do you need to think about page caching or a multi-tier caching framework?
Both Microsoft and Java platforms support huge - and partially overlapping - economies of software vendors. Which would you like to play in?
Really - religious differences aside - you can legitimately choose either or both platforms. "The question is not whether J2EE or .Net is the better architecture," says Yefim Natis, an analyst at Gartner Inc. in Stamford, Conn. "The question is, how to integrate them, how to make them work together, what are their strengths and weaknesses?".
With web services standards in place, architects can assemble complex applications where Microsoft "owns" only the fat client piece, and the Unix/Java world takes over - or at least gets a goodly share of - the server side (and some thin clients); a return to the typical "client/server" split of the early 1990s, but with internet and web services rather than the LAN as the common connection bus, and with a more complex network of loosely- coupled processes.
Software vendors - even those like SpiritSoft who are firmly in the Java camp - have to recognize that .NET has considerable merits - and even if we don't wholly approve, in the real world our customers are bound to adopt it to a greater or lesser extent anyhow. We can't simply ignore it and hope it goes away.
We can either whole-heartedly embrace it - or we can contain it, by offering Web services- based interoperability with J2EE. That way Java software vendors will ensure that we continue to have a major part to play in the heterogeneous environments that will inevitably be found in most real enterprises, and that our customers don't get trapped into a false choice by one side or other.
| Copyright © 2000-2007 Nigel Thomas Preferisco Ltd. |