doing TODAY and not getting caught in the HYPE of tomorrow

Alan Williamson

Subscribe to Alan Williamson: eMailAlertsEmail Alerts
Get Alan Williamson: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn

Related Topics: Apache Web Server Journal, Java Developer Magazine

Apache Web Server: Article

There May Be Trouble Ahead...

There May Be Trouble Ahead...

As Nat King Cole famously sang, we have to "face the music and dance..." This month's editorial is coming to you with a reader beware warning!

I've been engaged in some great debates over the last month on a variety of topics, but the one that has caught my interest is the old chestnut regarding the longevity of Java. Is it here to stay? If not, how long do we have? Quite rightly, it's being talked about and I've had the good fortune to brush shoulders with a number of big names in our industry who have given me their perspectives on the whole debate. I have my own feelings about where Java is headed and I do believe that if, as a community, we don't get our act together, we may have only five years left at the most. After talking to my counterparts, it would appear I'm being overly generous with five years.

What's happening? Well, it's our old friend C# and its relentless march toward the development community. Setting aside the old argument that due to Microsoft's dominance it may well win the day, it's interesting to look at other reasons why C# may win the battle. Let's blow away some misconceptions that you may or may not be aware of regarding this new kid.

Myth #1: C# is a Windows-only technology.
You could be excused for believing that, but did you know there's a major movement in the open source world to port the CLR (Common Language Runtime, i.e., their JVM!) to operating systems other than MS Windows? Linux, to name one. Imagine for a moment being able to run your .NET services alongside Apache on a Redhat box, seamlessly integrating into the rest of the network. This alone would be a major blow to server-side Java. It's also a subtle way for Microsoft to unofficially support the growing number of Linux seats without losing face (read

Myth #2: C# is an inferior Java clone.
This is the most dangerous one and the one you probably tell yourself in order to keep the scales tipped in Java's favor. The truth is, it's not an inferior clone; it's a different clone, with many arguing that the differences are minute to the majority of the developer community. It will be frighteningly easy for Java developers to move over to C# with no real headaches to contend with. I suspect this was always on Microsoft's mind when developing the language (read

Myth #3: C# is for developing Web services only.
Most definitely not, and I have heard this one retorted back to me on a number of occasions. Ironically, this is the one area that could really hurt Java on the client. As you know, Java has not made any significant headway in this space due mainly to its awfully slow Swing implementation. While the recent release of JDK1.4 has brought significant performance gains, it's still nowhere near the speed of its native Windows applications with respect to fast, snappy responses (although it must be said, the speed of a Swing application on a Mac OS-X does show what could be achieved). C# is the new building block for Windows applications, the next VB! And we know how many applications popped up when VB hit the market (read

Okay, how many of you think I've abandoned all hope for Java and have gone to the dark side? I suspect some of you are questioning my loyalties at this precise moment, wondering if I'm fit to occupy my role as EIC. Well, don't panic, I'm merely being a realist and looking at it from all angles. You'd be the first ones to complain if I buried my head in the sand and just ignored the threat. We have to look at this together and come up with a strategy that will enable us to effectively take on C#. We'll be getting a lot of heat from all over and we need to be armed with the information and prepared to go back to the drawing board and reeducate the masses. Sadly, they are being led a merry dance by Pied Piper Gates.

Allow me to cite you an example of such blind ignorance and if this doesn't scare you, then I don't know what will. I was recently involved with the Scottish government, discussing technology and what have you, where naturally the topic of Microsoft was high on the agenda. Excusing the fact that these people took a certain pride in believing they knew what was going on and loved name-dropping, the phrase that caught me off guard was the following: "Java? No one is doing that now. Microsoft is no longer supporting it."

Wow! Talk about a major miscommunication. And this from someone who controls budgets for the technology sector in Scotland. Ironically, I believe he really thinks he has his finger on the pulse of technology. It's sheer ignorance like this that scares me the most. Microsoft has successfully planted and nurtured the seed in people's heads that just because it isn't supporting Java in Windows XP, Java is dead. I have to admit I was taken aback and quite flabbergasted when I heard that retort. I really didn't know where to go with that. So much background information was obviously missing that I wasn't too sure if I would come over as patronizing and whether, ultimately, they would understand.

Sadly, this is not an isolated incident. Ever since I started writing about this topic in my editorials, I've been hearing stories from you regarding similar misconceptions and it scares me. We have a beautiful language here in Java; it has achieved industry-wide support and is pushing forward with great velocity. What can we do to support it?

You do realize we need an anthem. All great causes have an anthem. Something for us to get behind and sing!!! Suggestions gratefully received. We need a Java song!

Until next month?

More Stories By Alan Williamson

Alan Williamson is widely recognized as an early expert on Cloud Computing, he is Co-Founder of aw2.0 Ltd, a software company specializing in deploying software solutions within Cloud networks. Alan is a Sun Java Champion and creator of OpenBlueDragon (an open source Java CFML runtime engine). With many books, articles and speaking engagements under his belt, Alan likes to talk passionately about what can be done TODAY and not get caught up in the marketing hype of TOMORROW. Follow his blog, or e-mail him at cloud(at)

Comments (82) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.

Most Recent Comments
Floris 01/05/03 12:57:00 PM EST

I have kept all the records of the largest IT online job broker in Britain. A text search over the whole of 2002 shows:

c#: 3477 jobs
java: 65894 jobs

Relax !

Guennadiy 12/03/02 09:04:00 AM EST

So, David,
you are now ASP developer, just because you could not introduce Java Plug-in?
It is not ignorance, the poor guy just does not have time to understand Sun-Microsoft-IBM-e-al games, because he cannot permit himself abandoning rooms.

sean 06/14/02 05:19:00 PM EDT

At best, Williamson's article is the work of a 'realist' and represents the plain facts of a perceived threat to Java technology. At worst the article is factual but also the result of a sloppy editorial decision that adds significantly to MS 'Chinese Whispers'.
I tend towards the latter view, and simply put: it's all a question of tone.

Let's leave the real debate aside for a minute, and focus on that editorial decision in an attempt to better understand its impact.

At once we are confronted with Apocalypse: 'how long do we have?... it would appear I'm being overly generous with five years'. A cynic might argue that this type of tabloid speculation is just good journalism (of a sort), designed to gaurantee a nice bulge in page impressions for the coming weeks. By this view, Williams article is just the hi-tech sibling of a moral panic contrary to his attempts to urge us against this ('Well, don't panic...').

Unfortunately, this panic adds to the 'whispers' of Java's rival's claims
and in fact challenges what one would expect to be the agenda of JDJ. This perceived challenge to the agenda, is made clear in the kind of response whereby a reader threatens to burn all his back issues.

Of course, no-one seriously believes that
the editors of JDJ are pursuing a blind, tabloid and mercenary line that ultimately bites the hand that feeds. But the question of agenda is surely key here. It would seem that many readers would expect JDJ to, at the very least, take an overtly supportive line in opposition to Java's rivals. Claims of realism are all well and good but the readership clearly demands a different kind of realism here.

I would venture to guess that the editorial intention was to court controversy in order to rouse us all to action. Unfortunately, the tone of the piece was misjudged and ran contrary to many readers expectations. The effect for many was that of disorientation, suddenly being confronted with the 'realist' notion that perhaps it was time to learn a new language.

The problem with the article is that no real 'strategy that will enable us to effectively take on C#' is offered(other than some patronising mutterings about educating the masses, and the plainly daft suggestion that we need a new song). With its Apocolyptic tone, the editors clearly made a poor decision for Java in publishing this article, especially since the medium of the internet is so prone to snowballing 'miscommunication'. The result is that we the readership and (by that process of 'chinese whispers'), the wider Java community, are left with a tone of impending doom 'being led a merry dance by Pied Piper Gates', only it seems that Williamson is strangely calling the tune.

Steve R. 06/03/02 04:23:00 PM EDT

There's more to software development than which language to use. One you identify the costs, benefits, and risks, over the short-term and long-term, simply let the customer decide.

Example (in no way meant to be factually acurrate):

+open community standards body
+variety of software available to increase productivity
-can be slow
!Sun's losses could change things

+backed by a strong vendor
+rich libraries
+fast (but obviously optimized for Intel)
-relatively closed standard, and subject to change at MS's whim
-vendor lock-in (anti-pattern)
!MS's poor record for security
!MS's monopolistic licensing practices
!upgrades "break" things
!yet another Microsoft certification "cash cow"

Mark Allred 06/03/02 11:59:00 AM EDT

CLR, Microsoft's virtual machine has to be lightweight. The JVM has gone through and continues to go through many changes. The ONE language it supports is Java. Now imagine the CLR supporting multiple languages. How laughable to think that it can be all things to all languages.

Mark 05/02/02 08:10:00 AM EDT

#1. Java has no good IDEs.
#2. VS.Net and C# are easier and more productive than Java and any of its IDEs.
3#. Java is too slow.
4#. Java GUI development is dead.
5#. C# will soon be on Linux (Uh, major important parts of the framework are still closely held by MS).
6#. VS.Net multiple languages allow developers to leverage their current language (this is only true for C++)

I'm so sick of all the FUD.

While Java may not be perfect, C# really isn't any better. Yeah, it has some neat things.

When C# VIABLY becomes available on other platforms and from other vendors on Windows then I can recommend it to customers.

Microsoft has no interest in having .Net work on any other platform other than theirs. They only have interest in making it seem like .Net will succeed on Linux. In fact they cannot have it succeed. If it does, there will be no need for them.

But as Alan pointed out, perception is more important than reality.

Simon Grantock 04/25/02 06:23:00 AM EDT

guess what, this is the title of a thread over at the site:

maybe both threads are right!

Bill Reister 04/24/02 06:39:00 PM EDT

RE "Trouble Ahead"
Good article, Alan, but Microsoft's incredible marketing is only half of the reason to be concerned. The other half is that we in the Java community are elitists, and have thus actually resisted allowing Java to become "mainstream."

Like many in the Linux community ("Use the Force, read the source!"), many Java developers persist in believing that the only "good" Java is written from scratch. Microsoft, for all it's failings, recognizes that 75% (or MORE) of everyday business problems can be solved adequately and CHEAPLY with simple solutions achievable with 4GL tools. There are two ways to achieve a 4GL: a) Build a simple language that lets you accomplish common tasks easily while hiding the complexity; b) Build a GUI IDE overlaying a complex language (such as C++ or Java) combined with a robust set of class libraries that lets a junior developer whip out quick and dirty solutions to the most common of the dozens of requests his/her boss heaps on 'em. Perfect examples of these two approaches are Visual Basic (simple language, great IDE) and PowerBuilder (Powerful tools such as the DataWindow and class libraries can generate C++ code in the background).

SilverStream made a great stab at developing this sort of interface for Java, but fell short when Sybase successfully prevented them from emulating many features of the PowerBuilder DataWindow. Thousands of PB developers lost faith when the promise of "PB for the Web" turned out to be more hype than reality, and despite a terriffic IPO SilverStream languishes as a niche player. Perhaps frightened by their failure, no one else has truly taken up the challenge to fully create such an integrated environment.

The most interesting, sophisticated, leading-edge projects will always require top talent writing code in uncharted territory using sophisticated languages such as C++ or Java. However, until IDE's exist enabling N-tier web applications employing high-performance Enterprise Java Beans and web services to be developed by junior programmers as easily as 2-tier client-server apps, Java will continue to be relegated PRIMARILY to those specialized niches.

Wake up, folks! For the TRULY talented, opening up the Java playing field for simple tasks to junior developers will not only NOT be a threat to your career; it will instead insure the survival and credibility of Java as a mainstay and centerpiece development language for the 21st Century and beyond.

Bill Reister
VP, Applications Development
MMS Incentives, LLC
Norcross, GA 30092

04/23/02 02:44:00 PM EDT
Ben 04/23/02 08:27:00 AM EDT

"VB had to be radically redesigned as a language to fit with the CLR and I imagine that functional languages are a terrible fit to the CLR as well."

You imagine because you don't have a clue. VB was a terrible language, that's why it had to be redesigned. As a former VB programmer I can tell you everyone was more than happy to see VB re-written.

Dave Mikesell 04/23/02 07:24:00 AM EDT

"Yes... No longer techology stands becoz of its own .. Only the $$$( marketing ) keeps it in the market !!! "

I almost choked on my Wheaties when I read this. Java is the most overhyped language in the history of computing.

Dave Mikesell 04/23/02 07:22:00 AM EDT

"Station Digital Signal Processing" in C# requires everything to be written from ground up, and this is a huge costs and time consuming.

This is why C# will not be adopted by Scientific and Engineering (Electronics, Civil, Engineering Science, Mechanical) communities at any time frame with in the next 15 years. "

Java didn't have these APIs five years ago. What makes you think it will take C# developers 15 years to develop similar APIs, especially when they have the Java APIs that they can easily port?

Mike Piff 04/23/02 06:07:00 AM EDT

I think you may have meant Fred Astaire not Nat King Cole...

GJ 04/22/02 11:43:00 AM EDT

If I want to develop in .NET , it takes me , one day to learn C# , because it is a clone of JAVA . Now I do not understand of why those Microsoft supporters hate Java. There is only one solution :

Because Java is a thousand times harder for any VB developer to understand and comprehend therefore , they hate it . VB developers "Cut & Paste" codes , they don't write real codes.

As I have mentioned above, that if C# has API's for scientific software development then I will probably write some apps using it. Since it has no API,
to support it then I better stick to Java.

Java has tremendous API's , freeware, commercial , and GPL (free-source) in Matrix Algebra, Statistics , Operations Research , Probabilities, Differential Calculus, etc, etc. Developing numerical intensive financial modelling applications saves costs because I do not have to develop , algorithm such as
"Monte Carlo" , "Range-Kutta" , "Fast-Fourier-Transform" from ground up, which are very complex. These algorithm already exists in Java. To develop such apps as "Radar Station Digital Signal Processing" in C# requires everything to be written from ground up, and this is a huge costs and time consuming.

This is why C# will not be adopted by Scientific and Engineering (Electronics, Civil, Engineering Science, Mechanical) communities at any time frame with in the next 15 years.


RP 04/22/02 08:12:00 AM EDT

I have been in denial. Your editorial was a wake up call for me and should be for other Java developers. With the majority of J2EE EJB implementation failures causing large firms large amounts of money, Java is getting a bad wrap from executive management.

I have tried to ignore C# but more and more I have heard .NET being whispered in the circles of those who control the technological focus and budgets of companies. Personally I have heard bad things relayed from some upper management types. Statements like "Java clogs our newtworks." Of course this is not true. Poor programming and implementation have done this to one such company...not Java. But because of this and other issues which you uhave stated in your article, .NET is seriously being considered by many large fortune 500 companies.

I guess I'll go learn C#!

Snotman 04/19/02 11:41:00 AM EDT

Coming from an electrical engineering/physics background, I learned Java because it allows me to build very powerful applications applicable to todays problem domain. However, I don't feel an allegiance to Java, it just seems to be one of the better choices because it also has a big market behind it so this makes economic sense.

Anyway, I have benefited from Java because I have learned a lot about OO and good software design, as well as processes to build software. I can take these skills to any language I want. So, if Java expires and something better comes along, I am not gonna fight the change( which might be considered defeatist ), but rather I will go out and learn it too.

Sothy 04/19/02 11:11:00 AM EDT

And the wild card in this crystal-ball activity is U.S. District Judge Colleen Kollar-Kotelly.

Speaking from inside management of a large corporation in America, .NET is not taking off yet.
Will it? - Most corporations are to stick with J2EE for mission critical applications, java servlets/JSPs only for smaller applications and MS for client side development. I imagine
that American CFOs are suitably pissed with MS with their ever changing licencing policies.

Steve 04/19/02 10:11:00 AM EDT

You obviously haven't been reading JDJ for very long or you would know that Alan does indeed develop in Java. Irregardless, you are correct that M$ is concerned (or scared) of Java. And it's not good to be on the radar of a company with the resources,power, and determination of M$.

There was a "Top 10" list about Win95 and my favorite was : It could have been raw sewage and people would buy it. That is so true. I think Alan is just trying to rally the troops. Don't think M$ is going away. They might not get it right the first time (as evident with most of their stuff), but with enough time (and all their money), they can get it right, or close enough for most.

David Van Camp 04/19/02 12:25:00 AM EDT

Both Java & .NET are both missing an important area: cheap hosted-web sites. No free or cheap host I could find offered either .NET nor server-side Java support -- all offer Perl, PHP and some others.

Many start a websit at, say, Tripod/Lycos and use Perl/MySQL. Or buy a domain name + get hosting with Perl/PHP/MySQL for $35/yr or less!

But, Tomcat, JServ, & many Java/J2EE products & etc are free. Why aren't these sites offering them???

I think the Java alliance must convince hosting sites to add Java to thier offerings. I'm biased, but, the advantage for new webmasters to use similar languages for client-side (javascript, applets) and server-side solutions (JSP, EJB, etc.) would be an attractive option. And would increase the Java hold.

However, I'm now studing PHP since my $35/yr host doesn't support Servlets or EJBs. Bummer.

Murali Varadarajan 04/18/02 11:55:00 PM EDT

Yes... No longer techology stands becoz of its own .. Only the $$$( marketing ) keeps it in the market !!!

yes M$ pretty rich in money so it really push it but Java is equivalently backed by heavyweights !!!!

Linux is making M$ run for money .On any day M$ will certify any of its application on non-windows that too Linux. It is not so mad to slit its own neck..So all porting etc will be a mere hacking work !!!

So bottom line. C# only on Windows.
Java on all platform. Now the question is whether all the other platform will stay !!! No in client side only three OS will be there windows,linux & mac( I luv you mac :-) )

Server side Solaris,IBM-AIX,HP,LINUX.
The real death of Java will happen if it can replace Linux ( The rest all pretty $$$ & they are not in M$ segment )

How to kill Linux. Buy Caldera or someother company. Proclaim to others that you are porting all applications & get more of your customers on your side.. & then make linux as understandized & then finally kill it ..!!! ( Doesn't it sound like the strategy it tried for Java !!! )

david marshall 04/18/02 08:19:00 PM EDT

You are right to call the Java communitity to wake up.

The Java API's have become very fragmented. Forget our zealotry and do a real technical evaluation of the .NET runtime object model.framework. It looks pretty well designed and thought out. The definitions of an object type move between libraries. Much too often in Java I find that I'm having to construct an object "a" from one library from another object "a'" in another library because their type models or namespaces differ, This is even though the objects functionally are really the same.

In addition Java development tools tend to be expensive when compared to Visual Studio.NET Enterprise. With an MSDN Universal you can outfit a 10 person development team in all the software to model, design, develop and test Applications for what it costs for 1 enterprise license of a Java toolset like WebGain.

Now let's discuss the pricing of deploying J2EE. Like many companies, my company will not deploy on open source software unless I have support. That is one reason we use RedHat Linux. Anyway, Deploying BEA, IBM or Sun J2EE products gets you into big bucks fast. They may be able to argue that their long term TCO is better, but it does not sell early on to Business people with tight budgets. The .NET framework on Windows will do esentially the same thing for what appears to be a lot less initial cost.

So I think we have reason to be concerned for J2EE and Java.

Kurt Cagle 04/18/02 08:00:00 PM EDT

If Java continues to be controlled by Sun, it will die. However, in all likelihood, that won't happen; instead, I suspect that a combination of C# and the fact that IBM now actually has a bigger pot in the Java market than Sun does will likely lead to a point where Java will be forced into being totally open-sourced within the year, probably through the auspices of ECMA. For Sun, holding onto Java is as much about prestige as it is the money, but IBM tends to be more mercenary about such things.

I think another factor that will come into play is the effect of licensing. All it would take would be one misplay by Microsoft to spook the developer community at this stage. There has been a steady (and significant) migration of VB developers away from VB.NET even as there has been a fairly small migration of Java developers toward the C# standard, in great part because VB.NET is a Frankenstein monster, too difficult for the minimalistic VB programmers that have made up the largest segment of the dev community. C# is a cleaner language by a long shot, but right now, the choice between C# and jumping to Java is still largely dictated by the fact that Java is stable, C# is not.

A third factor in all of this is the fact that the developer community is shrinking for the first time since the mid-1980s. Most seasoned programmers tend not to migrate significantly from their language of choice, though they will look at other languages to get an idea about how other languages implement the solution to certain problems. On the other hand, new programmers are usually easily swayed to try this or that new language, because the learning curve for any of them at that point is equally steep.

Java hit at a critical time - there was an explosion of new developers entering the field in 1992-1996 because of the Internet, the success of Windows 3x, and the lure of easy money via stock options. This meant that there were people who would learn APL if it would get them a job in the field.

It's 2002, the tech sector is in the worst recession it has ever known, and IT spending has been dropping precipitously for a couple of years now. Colleges are actively discouraging kids from going into computer programming, because there simply isn't the demand for it now. Additionally, the kids who are entering the field are, by and large, Linux hackers who have a very different sensibility than the gold-rush kids of the 1990s. This means that Java is, for the time being, now pretty much frozen in the older dev segment and taken for granted by the newbies as being THE language to work with (of course, there's also a resurgence of Perl, Python, Ruby and so on, coupled with C++).

On its merits, C# is pretty comparable to Java. So? Since when have merit ever really decided what programming languages actually hit it big? People will adopt C# in droves only when Microsoft effectively relinquishes all claims to being able to control it (which, despite publishing the core to ECMA, they have absolutely no real intentions to do). The proof will come when IBM comes up with a C# implementation that's competitive to Microsoft's, and Ballmer turns around and sues IBM on some technicality.

Don Box 04/15/02 07:13:00 PM EDT

For what its worth, the Band on the Runtime is an informal combo that sings "anthems" for .NET developers. Check out for the lyrics of several of our tunes.

James 04/15/02 02:50:00 PM EDT

Even if Java Pro goes out of business I havent seen such non sense article there. I
read JDJ & Java Pro and I think the Java Pro editor has her head straight.

Matt Carter 04/15/02 02:10:00 PM EDT

Hi Hohn:
Obviously you have a bee in your bonnet about Java Pro, but to set the facts straight:
*We're not published by CMP but Fawcette
*We're doing just fine (growing and sharpening out focus on Java developers and community)
*We're not going anywhere.
If you're curious about Java Pro why don't you look at what we cover, and get your information correct before jumping to conclusions. (Probably as wrong as assuming that Alan is jumping from the Java ship he's been solidly occupying for the past few years).

Matt Carter/FTP

Dave Mikesell 04/15/02 12:45:00 PM EDT

Java has found a niche in server-side IT development but C++ is prevalent there, too, as well as many places Java will never go: Windows applications, games, graphics, operating systems, and anything that requires a reasonable memory footprint and acceptable performance. C++ will be around for a long, long time.

Miles Parker 04/15/02 12:06:00 PM EDT

What an incredibly important commentary. It is literally laughable to suggest that Alan has some kind of Pro-MS Anti-Java bent. Instead, what he is offering is something we all need to hear.

Strangely, companies and developer communities have never lost by overestimating Microsoft, they have _always_ lost by underestimating them! How this still happens when the track record is so bad is beyond me, but, please, 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.

WE CANNOT AFFORD TO HAVE OUR HEADS IN THE SAND!! .Net is a very real threat.

That Alan have 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 in fighting to protect the diversity and strength that Java and associated tools have provided.

If we aren't honest with ourselves and willing to fight this battle day to day in the trenches, 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, in large part because of their own arrogance.

Jamie 04/15/02 11:30:00 AM EDT

I have to say that the author of this article has no Java experience. It seems like he will listen to marketing pitch more that looking at reality. Lets see C# wants to be like Java from what I have seen I dont need no nosense opinion from Alan to change my view. C# has a lot of issues that will not be fixed. MS taking .Net to open source tells a lot about Java's success , they are scared of Java. No wonder it is most programmed language these days. I have writing code for 10 years and I have to agree Java is here to stay even when I retire as the most dominant language. Alan stop bitching and start learning Java

david 04/15/02 11:19:00 AM EDT

and JavaPro was called "Microsoft Interactive Developer" before they changed the name to JavaPro. I had a subscription to the microsoft magazine, all of a sudden i started receiving java magazine from them.

Also C++ magazine by the same publisher is now called "Visual Studio Magazine." this publisher just renamed their xml magazine last month too. some magazine publishers often do that when their magazines are in trouble and when they start loosing money.

So they did this in the past, they may do it again. They may soon call JavaPro, .NET magazine and there goes your argument.

Alan Williamson is not sold-out, Rick Ross was not sold-out either when he wrote a piece about the .NET threath in JDJ a couple of months ago.

we need to look at the big picture...

Mark Miller 04/15/02 05:08:00 AM EDT

I've seen this happen too often in the technological world, and I've been in it since the early 1980s. It's like 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 cult-like following that is dead-set against using any other technology from what they love. They say things like, "If only they would do X, then people would see how great it is and start using it," and other plaintive cries of worry. Or, you get the cheerleaders who say, "Let's make it better!" They don't look at integrating other useful technologies, because of course, their's 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.

The reality is a tool is a tool. A language is a language. That's all they are. You are really fooling yourself if you ascribe religious significance to them, or an emotional attachment. It's not the end of the world if Java dies. Likewise the world is not saved if C# doesn't make it. It's like worrying without end whether Snap-On will "fight off" Craftsman tools, or something. If you did that out in public, people would look at you funny, because in the real scheme of things, it doesn't matter that much. In addition, religious fanaticism about a technology is not real attractive in the workplace, for good reason.

Use tools for their usefulness to serve people. The end user and people in management don't give a damn what language you use. Honest. What they care about is if you deliver something that works, fits the requirements, looks nice, is on time, and within budget. In the world of the Internet, people care about ease of use, reliability, and security.

In order for a technology to thrive, it needs to be marketed, both to developers and business people. For developers, they need to see how it makes it easier for them to satisfy their bosses, and reduces their stress level in their day to day activities. For the bosses, they need to see what sort of solutions they can create with it that open up new and profitable possibilities for them.

Sometimes to my own chagrin, I've noticed that ordinary people think that if they can't see it, it doesn't matter. That may be the reason some think Java is fading out. They haven't seen it (as in, on the screen) in action in a while.

Java needs the non-devoted to be excited about it, and recognize that it is very practical at the same time.

Two perceptions I've had about Java, for example, are 1) it's slower than other languages, and 2) it's a world unto itself, and is a chore to integrate with other software technologies. Maybe these are misconceptions, but these sorts of things are not fair. You gotta convince me by showing me or wowing me. One of the two.

In short, the goal should not be to "save Java," but rather Sun, whom everyone identifies with Java, needs to be pragmatic and find out what people want out of a development environment, deliver it, and market the heck out of it. If they don't do it, no "community" effort is going to do much to "save" it. You'll only be delaying the inevitable. I know because I've been there. It takes leadership from the top if anything of substance is going to happen.

Don't make this a religious or social movement. Make it a wake-up call to Sun that they need to fundamentally change the way they approach Java's development. 04/14/02 04:36:00 PM EDT

Um....VB is now over 10 years old....MS is good at throwing out upgrades every couple of years, but actual NEW PRODUCTS don't come along very often. Take your example: Win95 98 and much different are they REALLY????

JohnW 04/14/02 02:16:00 PM EDT

The major market where the cross-platform portability of Java should score is in desktop apps. I agree with an earlier contributor that Sun has not paid enough attention to this aspect in Java. If Java essentially becomes a server side only tool with basically HTML/XML clients then it leaves the client side open to Microsoft. I have been successfully developing multi-user applications software for businesses in Cobol for almost 30 years (Acucobol actually, which compiles to a meta language and a CLR of sorts, and supports a full GUI interface - for all of you who think I'm a dinosaur of the green screen variety. I was looking forward developing a piece of software for the home/very small business market with limited networking elements later this year in Java - now I'm not sure what to do. I would like my product to be able to run on Windows, Linus, and Macs but if Java's Swing doesn't "cut the mustard" from a performance point of view must I go for C# and limit my market to Windows and wait for a CLR for Linux and Macs? I know that IBM and Oracle have invested a huge amount of money in Java development, surely they must be developing efficient and effective client side software in Java as well as all the (good) J2EE stuff? Any suggestions?

RIchard 04/13/02 09:10:00 PM EDT

It is vitally important that C# doesnt take over. It is vitally important that Microsoft are not allowed to rule supreme. Sun are the only company capable of keeping Microsoft from that goal, and they have done a good job so far by producing very high quality products like Solaris (SPARC and x86), Star Office, Forte, and of course Java and making them freely available to almost everybody. We have all seen the rubbish that Microsoft try to feed us, and the extorsionate prices we are forced to pay for them. Sun need Java, and therefore so do we.

Incidentally, if the American Government werent so reliant on Microsoft to prop up the economy, most of the Executives and Gates could be locked up for more crimes that we have laws for, including I believe terrorism!!

B.Hettrick 04/13/02 09:05:00 PM EDT

First you capture the development tools
market with a (potential)cross platform

Then when you have a large % of system
development being done under .NOT you
release a new OS in the process
removing the legacy shackles of Windoze.

Suddenly you have instant application
compatibility with your OS, sure other
Unix based variants will benefit from
the .NOT app portability but be honest
when the crunch comes at decision time
in the IT management arena and you have
the 'risky' left wing O/S's and the
corporately 'correct' M$ OS which one

For that matter which one wins right

Java lost it's fight on the client side
and that's where the rubber hits the
bitumen, server side is not even visible it's the client apps that _everyone_ sees and uses and this is
the domain of M$.

Just my 2 cents worth.

hp 04/13/02 02:28:00 PM EDT

Ti lene tora aftoi oi ka8ysterymenoi?

Hohn Harrisburg 04/13/02 12:03:00 PM EDT

like Java Report did. Do you remember Java Report? Where are they now? Gone. Anyone else except JDJ is on life support, can't afford their payroll. Whatever else is out there, they are not relevant to voice Java.

JDJ is the only honost Java magazine out there. Not only they are the leader and everyone reads JDJ but they are the only one with real editorial content. Did you compare the two magazines lately? Java Pro has a new editor every 3 months. They are in trouble.

Alan Williamson is editing JDJ for 6 years and he is the top authority in the world when it comes to Java. Just offering a reality check... There is a reason why JDJ is JDJ.

Read JavaPro while CMP is still publishing it, when they fold they will mail you .NET magazine because if you ever read JavaPro before, you would know that its editorials are written and signed by Bill Gates himself..

In case you didn't know..

My 2 cents, my friend...

M$hit 04/13/02 11:37:00 AM EDT

ActiveX is simply a bad thing.... who wants it?

Shawn Rummel 04/13/02 10:55:00 AM EDT

The only way I can see C# even coming close to Java is if the are other IDE than what M$ has to offer. I have used VC and it doesn't hold a candle to CBuilder. Your contention is that managers will prefer C# but it is not mangers who do the work. If you re concerned with managers how about exploring the cost of development between JAVA and C#. In the end I think this is just M$ spin to sway people from realizing that Java is becoming more popular tha C++.

Sarwar Mansoor 04/13/02 10:32:00 AM EDT

After reading this I have lost faith in JDJ. I thought this was 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.

Jim Heason 04/13/02 10:20:00 AM EDT

Hey Alan did you ever write code for a living. Well if money talks & shit walks your a good example . I have been coding Java for 4 years and currently trying C# and C# stinks. Dont write these kind of crap in JDJ. C# has memory leak , security holes that Java doesnt have. By the way did u try CLR it is a pure farse. But hey money can buy anything :)

Alan 04/13/02 08:11:00 AM EDT

Joe Sixpack wrote : You can always tell a shoddy article by the number of times you have to click to get to the next page. I mean come on, only 5 clicks? And only 3 or 4 paragraphs a page?
He was being facetious, but it is a bit extreme. I always look for the "print this" link on articles which generally gives you a single page without ads.

matt 04/13/02 07:28:00 AM EDT

java is a tool that helps me do stuff. if there is a better tool around, I use it.

If java can't do what most people want to do, then they will use something that can.

that's kinda how the market works.

wisaac 04/13/02 06:09:00 AM EDT

I didn't study CS so that I could be a C programmer, a C++ programmer, or a Java programmer. I studied CS, because I like computers, and I like developing software. The platform, and the language are irrelevant. I like to think about the look and feel of an app that I plan to develop. I 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 is what I will use. But I am not tied to any language. If Java goes away, I will happily implement my ideas by using some other language.

Nick Riordan 04/13/02 05:19:00 AM EDT

I spent 10 years building apps exclusively for the Microsoft platform using Microsoft tools (C and C++). Two years ago I changed jobs and I 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 thread that the client is important - and let's face it, Swing is probably the waekest area of Java.

But my real issue is the lack of proper tools for Java. If you have 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 really want to like Netbeans, but it just never seems to be finished and the performance sucks). Idea is about as good as Visual C++ 4.2 - that's a product that shipped 5 years ago.

I want seamless end to end debugging (client - middle tier - SQL). I want high speed - and no performance degredation 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.

robert 04/13/02 03:54:00 AM EDT

The editor thinks that whats holding back Java on the desktop for applications is the lack of a responsive user interface. This is a valid point. However the question is, how much does Sun even want Java Apps on the Desktop? The removal of the Java ActiveX bridge in 1.4 shows that they actually dont care wether there is any interoperability with most of the desktop apps/windows out there. Which is really a shame and will help a lot that people move to C#.

David Bolsover 04/13/02 03:44:00 AM EDT

Sadly, I have to agree with much of what Alan wrote in his editorial. The level of ignorance and misunderstanding amongst so called IT professionals is astounding. Only last week, the Technical Manager of the organization I am presently working for referred to a sophisticated web application built on the struts framework as a JavaScript! He was blissfully unaware of the differences between Java and JavaScript.

When I tried to explain that explain the difference between Java and JavaScript, he suggested that we would have to abandon the project in favour of ASP soon anyway because MicroSoft were not supporting Java under XP. - I left the room!

My point is this - The Java community must make renewed efforts to communicate the merits of Java to the wider community if it is to survive; personally, I think that Sun must take the lead in this - a few well placed full page adverts in National daily papers would not go amiss - free CD's on magazine covers - anything that promotes the Java message

Albert 04/13/02 02:20:00 AM EDT

My original comment (What's the point here) is just to reflect the fact that the editorial page is misleading (porting to C# CLR to Linux won't be a potential major threat to Java given the enterprise capability comes with J2EE). I also don't like the pessimistic/non-constructive view of the editor. As a leading Java journal, the editor should be much more constructive and solid in editorial reviews.

I was also not predicting the outright victory of Java without good vision, execution, collorations of the current leaders and java advocates. I simply just point out the fact that currently, in terms of real enterprise applications and suites (eg. CRM, ERP II, SCM, KM etc), Java is way ahead of C#. It will take C# and .NET at least 2-3 years, if at all possible, to reach to the level of sophistication Java currently implements. To put it in a simple sentence, you won't see ERP, CRM or SCM applications implemented in C# in the next 2-3 years. Please note, we are not talking about pure technology here. It is about real application and business needs. The point again here is: business and real world needs will be a major factor in determining a technology's life.

However, I do have concern for Java. Not because of its technology, capability, momentum or business preference. But because of others (e.g. widespred of misleading info, conflicts of interests/visions of the Java advocates/leaders, etc). I also don't think Sun is arrogant in flighting with MSFT. It just positions MSFT differently. Just look at McNealy's recent SunOne speech ("he's fighting it for his children's future"). You know, how to position the target will affect strategy and execution a lot. The outcome might be different.

However, I am still optimistic, given maturity and versatilty in open source, given IBM's big push for linux, given Steve Jobs might port Mac OS to Intel, given so many good practices/patterns/applications in Java, given MSFT might bet wrong and they don't have competitors in their space...

Aisha Fenton 04/13/02 01:12:00 AM EDT

C# is set to become the dominate client-side language. MS will make it very fast and a natural choice to program in for windows (even games could be easily writen 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 5 years to make java better, lets get going.

m0d b0Y 04/13/02 01:02:00 AM EDT

Yup. You can click this f*cker all the way down to 1.0 and change if you wanna. Just keep a clickin, It's like frogger with a bajillion credits!!!

nope 04/13/02 12:54:00 AM EDT

Imagine: being able to run your Fortran# applications on your OS/2 Warp# server!! In a word: WOW#!

Think of how productive# your fat, lazy corpo-programmer-drones will be then!!