Alan Williamson's April editorial was read by more than 100,000
people within two hours of its posting at www.sys-con.com/java. Over
500 readers responded within hours of its publication. The editorial
was instantly picked up and simultaneously published at the
Slashdot.org and JavaLobby.org Web sites.
The Great Java Debate has been raging as a direct result of
the technical points raised by Alan Williamson, Java Developer's
Journal editor-in-chief, in his editorial (Vol. 7, issue 4) about C#,
Microsoft's rival language to Java.
Everyone had been talking about C#, Williamson felt, and in
true Microsoft "Chinese whispers" style, it spread rapidly. "We felt
it was time for JDJ to find out the real truth behind this new
language and present the facts as we found them," he says.
There will always be particularly virulent controversy
whenever an industry commentator mentions Java and Microsoft Corp. in
the same breath. Comments posted to the Java Developer's Journal Web
range from praise such as this from business consultant
David Bolsover ([email protected]) who writes, "I have to agree with
much of what Alan wrote in his editorial - the level of ignorance and
misunderstanding among so-called IT professionals is astounding" to
dramatic criticism such as this from Canadian software developer
Christian Ouellet ([email protected]), who strongly believes
that such an editorial "is not what the Java community needs" to the
extent that, as he says: "that's why I will burn all my JDJ issues..."
Well, Java always did evoke strong emotions!
"Java Developer's Journal is proud to take the lead in
peering over the horizon; that's what readers (developers) expect
from us," says editor-in-chief Williamson. "That makes me kind of
chief scout on behalf of the readership, heading up the gullies and
reporting back on what I find."
"The Java community is one of the most passionate and open
set of people I have seen in my life," he says, "and this strength
will ensure that Java will be a formidable force against the
alternatives that come up on the radar, such as Microsoft's C#."
The feedback generated falls into two camps: those who feel
the writing is on the wall for Java, and those who believe that Java
has never been stronger and that never before have we seen so many
applications and general forward movement in the Java space as we see
Sun Needs to Wake Up and Smell the Java
"Alan Williamson is right and many are too blind to see,"
writes Steven Tower ([email protected]). "I've been a Java developer
for almost seven years now," he continues. "I was very lucky to have
gotten in on the ground floor. However, I have discussed lately with
other developers that we really are at a crossroads. Sun has been
arrogant to the point of insult and has shrugged off real concerns
and problems. Sun needs to completely embrace their community, open
source and otherwise. They need to wake up and smell the Java, so to
Tower explains: "I hope and expect Java to be my language of
choice for years to come. But I can't deny a viable alternative. Sun
has completely failed on the desktop. Yeah, you can argue, oh look at
this great app and that one, but truth be told Sun blew it; OS/2 had
some great apps too. If C# makes even small inroads on the server and
on the desktop, Java is in real trouble. Microsoft doesn't need
massive wins; once they have their foot in the door on both, they
will start to squeeze on all sides. Don't hide your heads in the sand
or hold them so high in arrogance in the belief that because they
haven't already, Microsoft won't find a way."
Developers like to think about the look and feel of an app
they plan to develop, and they like to think about the algorithms
that will make it run efficiently. If Java happens to be the best
language for the job, then that's what they'll use. But they're not
tied to any language, and this is why - as Williamson was trying to
point out - it's important for Javaland to consider the potential
rise of C# very carefully.
Java Will Benefit from Some Healthy Competition
"He's right on the money!" says Michael Julson
([email protected]). "I agree with Alan's suggestions and
beliefs of where Java might be in the future. Sun has been busy
fracturing the language into so many pieces with the hope that it
will be the language for all situations and all needs. Because of
this fracturing, it's become a weaker language and has suffered."
"I welcome C#," Julson continues. "With its similarities to
Java, it puts some tougher competition to Sun, IBM, et al, and will
make the language better off for it. Beyond that, I'll be able to use
it for desktop apps that don't crawl at a snail's pace."
David Bolsover, mentioned earlier, echoed this theme of the
responsibility that Java supporters have to spread the word. "The
Java community must make renewed efforts to communicate the merits of
Java to the wider community if it is to survive," he says.
"Personally, I think Sun must take the lead in this - a few
well-placed full page ads in national daily papers wouldn't go amiss,
free CDs on magazine covers - anything that promotes the Java
And Aisha Fenton ([email protected]) too feels that
Williamson is sounding a very timely rallying cry: "C# is set to
become the dominant client-side language," she explains. "MS will
make it very fast and a natural choice to program in for Windows
(even games could be easily written in it, since they'll have good
Direct X support). We can't just ignore it and attack anyone that
tries to talk about it. We have five years to make Java better, let's
Nobody Knows What's Going to Happen
"It's just branding. Get over it," advises Jason Norman
([email protected]), a health systems software engineer at
Vanderbilt University Medical Center in Nashville, Tennessee.
"Let's face it," Norman says, "nobody knows what's going to
happen. On the one hand we have MS. They have a pretty strong
following in the business world. Their branding is fantastic. They
have all sorts of cool commercials (however cryptic and uninformative
they may be) and for some strange reason, lots of people believe in
"On the other hand," he continues, "we have Java, billions of
lines of Java code floating around the Internet. There are lots of
enterprise applications and systems in place, millions and millions
of dollars already invested. Who will want to basically flush away
everything they already have just to jump on MS's latest buzzword?"
"Just calm down," adds Norman. "In five years, neither Java
nor .NET (if it is still around) will be anything like they are now.
This whole debate will seem silly and pointless."
Critically Important Commentary or Soul Selling?
Miles Parker ([email protected]) is in no doubt:
"What an incredibly important commentary," he declares. "It is
literally laughable to suggest that Alan has some kind of pro-MS,
anti-Java bent. Instead, what he's offering is something we all need
"Strangely," Parker continues, "companies and developer
communities have never lost by overestimating Microsoft; they have
always lost by underestimating them!...Please, please, let us not be
like Netscape ("we own the browser market"), IBM, Sybase, (soon to be
Palm), and so many companies in between."
Referring to some of the criticisms that the editorial
provoked, Parker comments: "That Alan has received such a load of BS
because he is willing to ask real questions is dismaying, to say the
least, and makes me think that Java developers are more concerned
about living in a state of comfortable and smug denial than fighting
to protect the diversity and strength that Java and associated tools
"If we aren't honest with ourselves and willing to fight this
battle day to day in the trenches," he continues, "we will lose, and
indeed there will not be much left of Java in five years. Ask
yourself, what did you think of the prospects of Netscape in 1997?
Now we know that they were already doomed, due in large part to their
own arrogance. We can't afford to have our heads in the sand! .NET is
a very real threat."
Christophe de Dinechin ([email protected]) believes no
computer language can expect immortality, Java included. "Yes, Java
is going to die," he says, "and five years might be a good time
frame. But C# is not the reason. The reason is that we will need to
do things in five years that Java doesn't do well. A new environment
will replace Java, just as Java replaced C++ when the Internet became
the place to be, just as C++ replaced C, just as C replaced Pascal,
etc. New tasks=new programming language."
"By this reasoning, however," de Dinechin adds, "C# should
not displace Java, simply because it only does what Java does, with a
little more. Naturally, C# has the capability to evolve."
Avram Aelony ([email protected]) disagrees that Java has only
five years left. "There seem to be quite a few elderly languages with
less promise than Java," he points out, "that refuse to die.
Diversity is good. If you could write an app in your favorite
idiomatic language and the compiler's task was to make it run fast
anywhere, then there's also room for C# in the world."
For Sarwar Mansoor ([email protected]), however, C# is
simply not something to be mentioned in polite company. "After
reading this I have lost faith in JDJ," he complains. "I thought this
was a true journal on Java. I am reading Java Pro from now on. I code
for a living and love coding, but I am not selling my soul."
John Harrisburg ([email protected]) takes issue with this.
"You can read JavaPro until they go out of business just like
JavaReport did," he retorts. "Do you remember Java Report? Where are
they now? Gone....JDJ is the only honest Java magazine out there."
Tools Are the Key
British developer Nick Riordan ([email protected]) returns
the discussion to a more technical level. "I spent 10 years building
apps exclusively for the Microsoft platform using Microsoft tools (C
and C++)," he explains. "Two years ago I changed jobs and have since
been working with Java/CORBA and EJB. I like Java, but I think C#
offers similar benefits. It has already been said in this discussion
that the client is important, and let's face it, Swing is probably
the weakest area of Java."
"But my real issue," Riordan goes on, "is the lack of proper
tools for Java. If you've spent any time working with MS
technologies, you really appreciate the properly integrated,
high-performance, polished feel - it makes development a pleasure.
Recently I moved across to IDEA as my IDE in Java - it's the best
Java IDE I've found so far (I want to like NetBeans, but it never
seems to be finished and the performance stinks). IDEA is about as
good as Visual C++ 4.2 - a product that shipped five years ago."
"I want seamless end-to-end debugging (client, middle tier,
SQL)," says Riordan. "I want high speed - and no performance
degradation when running under the debugger. I want folding editors,
proper dialog editing, etc., etc. This is the point: you can be so
much more productive under C# just because of the tools."
Is a "Religious" Following a Symptom of Decline?
What does this whole passionate discussion of the future of
Java mean? A very thought-provoking perspective comes from Mark
Miller ([email protected]), who sees what he claims are signs of an
oft-repeated cycle of behavior.
"I've seen this happen too often in the technological world,"
he says, "and I've been in it since the early 1980s. It's a pattern.
A technology starts faltering, and the ways part. Some people use it
until they feel its usefulness is exhausted and then move on to
something else. The others form a cultlike following that is dead set
against using any other technology aside from the one they love."
It's this cultlike behavior that Miller claims to discern in
the current behavior of what he sees as Javaland's die-hards and in
their reactions to Alan Williamson's editorial.
"They say things like, 'If only they would do X, then people
would see how great it is and start using it'...They don't look at
integrating other useful technologies, because, of course, theirs is
so wonderful. They develop strong biases against outside
technologies, in fact. They don't see their own technology's
weaknesses; they don't want to see them."
"Don't make this a religious or social movement," he
concludes, "Make it a wake-up call to Sun that they need to
fundamentally change the way they approach Java's develop- ment."
What do you think? What is the future of Java? What should be done to
boost Java? Can Java and C# coexist peacefully? To add your comments,
go to www.sys-con.com/java/article.cfm?id=1401.
Jeremy Geelan, editorial director of Wireless Business & Technology, is also a regular commentator on alternative social, political, economic, and technological futures for a variety of European journals and newspapers.