Java: Redlining the Yawn-Meter

by William Grosso

Related link: http://www.onjava.com




Let's start with some disclaimers. I work in a small startup where we use Java as our primary programming language. I co-chair a Java Developer's SIG in Silicon Valley. And I wrote an
O'Reilly book on Java RMI. So maybe I'm just a little too deeply enmeshed in the Java universe. And that, 5 years into my Java experience, I've gotten jaded.


But.


Does it strike anyone else that Java, which once was an interesting new language that had the potential to change the world, has become deeply boring ? That our lovely little language has become completely and utterly disassociated from what's interesting and innovative in the computer industry?


The positive spin that people put on this is that "Java is maturing as a platform" or "Once things get really useful, they stabilize" or "SUN's providing a computing layer so that other people can innovate; you're looking for innovation in the wrong places."


To which all I can say is "Maybe."


But "web services" and "what's new in JDBC" smells like death-warmed-over to me. We've gone from "write-once, run-anywhere" and a world of mobile code flowing over the network to "let's do RPC in ASCII so that our legacy systems can exchange data."


Maybe this is good. Maybe this is a sign that Java is, as so many pundits tell us, "growing up." But, then again, maybe John Cougar Mellencamp nailed it when he sang (in The Authority Song):



Growing up leads to growing old
And then to dying
Ooo-ooh and dying to me
Don't sound like all that much fun.









Bored with Java? What do you plan to work on next?


8 Comments

johnprince
2002-06-09 23:43:29
I thought it was just me
I have been thinking the same thing over the past couple of months.


Borges wrote: 'Fame is a form of incomprehension, perhaps the worst.' Java is now indubitably famous. I think in general that technologies which offer something genuinely new (as Java undoubtedly did, and perhaps still does on some levels) are part of a process of innovation. They play their role and then, unless they continue to evolve in the direction of genuine innovation (which is very rare), they are replaced with something which does offer that innovation. The problem every technology faces is how to get that novelty into real life - that requires mass adoption, which is not compatible with real innovation. Hence CORBA in the JDK, for example. I have nothing in particular against CORBA (unless someone tries to make me work with it, of course, which, mercifully, has not happened yet), but the insertion of a legacy technology into what was a forward-looking one is for me symptomatic of the need to conform rather than lead imposed by marketing factors.


The vast majority of companies (and programmers) are not looking for something new, they are just trying not to fall behind. The trends in programming are as strong as they are in fashion, and we need to keep up. Having said that, I am still shocked to meet other programmers who are still writing COBOL and for whom OO techniques are still something exotic they are thinking about learning one day, but for which they have no actual need right now. Similarly shocking, of course, are the 2500 line Java classes that I keep on coming across. The secret for any new technology aiming at mass adoption seems to be to allow people to go on doing exactly what they have been doing for years while keeping up the appearance of being on the cutting edge. Who was it who said that a good programmer can write Fortran in any programming language?


This is not meant to be a criticism of anyone or any organization, it is just the way things are. There are lots of other factors, of course - competitors catch up with, and profit from the mistakes made by, pioneers, for example. In my local computer bookstore, DotNET books have almost totally replaced Java books in the New Titles section, with the honourable exception of a couple of J2ME books. Technologies are also bandwagons for tech publishers, journalists, and programmers themselves. How many Java programmers are now checking out DotNET because they can feel which way the wind is blowing? I certainly am, though I think I will probably end up going in a different direction.


None of this detracts from the value of Java itself as a tool - I still believe it is by far the best general purpose language around. It just makes it inevitable that its place is the sun will be taken by someone else. A good indicator of this is the number of desperate marketing tracts emerging from Sun about how everything is rosy for Java, how widespread and solid support for it is among managers and programmers, and so on, and so on. That in itself is a sure sign that things are going downhill - if things are really going well, you don't need to tell anyone, because they already know.

ianfairman
2002-06-10 01:58:53
Java is the new COBOL
When I first started programming professionally in 1990 I was writing COBOL applications on ICL mainframes. Over time I came to see this as a really boring part of the industry to be in so I got out and ended up doing research and, five years ago, learning Java.


Now in 2002 I work as an "enterprise" developer using EJBs, Weblogic and all that good stuff and I realise I've come full circle. Sun is focussing Java more and more on business, turning Java into the new COBOL with app servers being the new mainframes.


Like John Prince, I don't consider this to be necessarily bad, but it does make Java less exciting. When Java moved from 1.1 to 1.2 Sun added sound and 2D support, yet since then the main additions to J2SE have been to make it a better platform for enterprise apps: enhancements to JDBC and security and the addition of JNDI.


Jini and JXTA have been attempts to make things more interesting but to be honest they've not really got people excited. What I'd like to see is Sun adding some of the more whizzy APIs into the standard Java platform: Java 3D or Java Media perhaps.


And yes, I am thinking about learning .Net - it's a fickle industry and the wind could blow that way. Having said that, I know of colleagues from my COBOL days who are still doing that so maybe Java could last as long.

kbedell
2002-06-10 06:30:07
You people are crazy
Java is just a tool to do cool things. The buzz was never about the tool, it was about the cool things.


There are more cool things now than ever. Just check http://jakarta.apache.org or http://www.jcp.org -


The stuff coming out of the Apache Jakarta group, JBOSS, and the other open source projects that are centered around Java is way cool. If you've lost "that loving feeling", just look around over there. You may rediscover it...


tomdavies
2002-06-10 17:08:36
I'm excited!
Java excites me beacuse it is an enabling technology for platform choice, and for open source.


Anything I write has to support the platforms which dominate the marketplace, i.e. Win32 and Solaris. I prefer Linux, and that is my development platform. This is only possible because the effort of porting between these three platforms is negligable for Java programs. I'm considering buying a powerbook, because they are so cool -- and because I can still use one to do my work, because of Java.


If all the interesting things Jakarta is doing (POI, Lucene, ant etc.) weren't painlessly cross-platform, they wouldn't be very interesting to me any more.


Sure, maybe you could deliver these benefits without Java, although a cross-platform language like Perl doesn't excite me because it is such a *bad* language for general purpose work.


The bottom line is that Java delivers this freedom to me now.


One of the strengths of Java is that Sun has not changed it too quickly, but there are some exciting things:


-- Genericity: coming in JDK1.5 will be very useful to me.


-- JDO: defining a standard ORM API will hopefully make ORM widely used in Java apps. Yes, I know there have been perfectly good ORM tools for Java for years (Toplink, Cocobase etc.), but being able to avoid vendor lock-in makes using ORM a no-brainer, IMHO.


Tom

anonymous2
2003-10-30 04:12:26
Java is the new COBOL
Yep, it's certainly sufficiently shit-house to take the mantle...
sudhakartv
2005-03-14 09:37:26
Spreadsheet error for converting String to Number.
Hi,


I am using POI to generate Sreadsheet. I am dynamacalli reading a XML file and passing the values to the cells. Some of the values are numbers Ex : 9999. When i open a spreadsheet, the cell has a small geen triangle and if i click that it is suggesting me to conver String to number. How to ignore or resolve this. I want to getride of green things on the spreadsheet.


Thanks for the help.

sudhakartv
2005-03-14 09:41:36
Spreadsheet error for converting String to Number.
I tried this but it does not help.


cs.setDataFormat(HSSFDataFormat.getBuiltinFormat("@"));

sudhakartv
2005-03-14 09:43:44
My Apolozies
My Apolozies . I posted in wrong place.