The Struggle To Keep Java Relevant
snydeq writes "Fatal Exception's Neil McAllister questions Oracle's ability to revive interest in Java in the wake of Oracle VP Jeet Kaul's announcement at EclipseCon that he would 'like to see people with piercings doing Java programming.' 'If Kaul is hoping Java will once again attract youthful, cutting-edge developers, as it did when it debuted in 1995, [Kaul] may be in for a long wait,' McAllister writes. 'Java has evolved from a groundbreaking, revolutionary language platform to something closer to a modern-day version of Cobol.' And, as McAllister sees it, 'Nothing screams "get off my lawn" like a language controlled by Oracle, the world's largest enterprise software vendor. The chances that Java can attract the mohawks-and-tattoos set today seem slimmer than ever.'"
Someone emulating the punk movement of 40 years ago is "cutting edge"? If that's his idea of "cutting edge, hot talent", he needs to stop thinking he's in the movie "hackers" and he's looking for Angelina Jolie. Associating dress or style with talent is stupid no matter if it's "you wear a suit, you're smart" or "you've got 3 piercings and drive a crotch rocket you're the next big thing"
Demanding innovation never works. Innovation just happens from a need, not a demand from some Oracle guy who desires it and thinks it'll be good for marketing. There are interesting things happening in Java. Scala is certainly interesting. I haven't used it myself, but I'd love to try it if I had a good project to use it in.
AccountKiller
um google app engine? spring? android? gwt? groovy?
Please it's evolving and even finding new uses.
All those "java is going to die" people are silly and not grounded in reality. Plenty of talented developers see its power and use it.
piercings and mohawks somehow make someone 'cutting edge' or a better coder? i think not.
good developers will follow the jobs.
i'll save you the trip to monster.com, here are some search results from there:
search results
------ -------
java 5000+
.net 4581
c++ 3706
c# 3369
perl 2569
python 1035
ruby 547
cobol 286
- 5000 is apparently the limit for the number of results a query can provide at monster.com (weak) so there are most likely far more that 5000 java jobs in their database
- couldn't figure out how to search for C reliably, but it's probably up over 5000 as well.
Java will remain relevant because of the large number of languages being built for the JVM: scala, erjang, clojure, groovy etc. Thus writing libraries in java has significant appeal.
JJ
The problem with Java today is... it's syntax looks too much like C. And as everybody knows, C is for geezers. Can't we write java code as follows:
<class>
<classname>MyPony</classname>
<method>Run</method>
<code>
<if><condition>IsExcited</conditon>
<if_block>walkFaster </if_block>
</if>
<method>trot</method>
<method>gallop</gallop>
.
.
etc...
Once the java manufacturing association fixes the syntax to my satisfaction, I'd give up on my 10 GL super auto functional metaprogrammers language (Saufml) and start writing java code. Until then, I'll keep working on my latest NoSql data-store for my soon to be mobile-social-media-empire (leveraging P2P crowd-sourcing) in my beloved Saufml.
I have tattoos, and I used to have piercings. I'm also a damn good coder. I seriously doubt the two are related.
I make a lot of money working with Java. I have piercings. I've been known to have hair in a primary color.
Seriously though. Android applications. Eclipse. Adsense, GMail, Wave - in fact, just about every big Google web application (yes, even the client side stuff is written in Java and translated to Javascript). Openfire XMPP. Tomcat. Geronimo. ActiveMQ. Azureus.
You can badmouth Java all you want, but performance and tooling are excellent and there seems to be an infinite supply of libraries and sample code. It runs in lots of different places. There are 100% open source implementations. You can compile it to native code. You can run it in the CLR.
I know it's trendy to play with Ruby and Python, and that's fine. I'm a big fan of Scala, which runs on the JVM. I believe Twitter's backend is at least partially built on Scala. El Reg, I know, I know.
Anyone who thinks Java is fossilizing needs to give their head a shake. It's everywhere, and it's being used in very diverse ways.
If that doesn't excite this mythical "pierced programmer", then said idiot is too busy practicing the Hipster Doctrine - studied disinterest.
None. Learn algorithms, data structures, and theory. You can and will change languages a half dozen or more times in your career. Theory works for everything. And the good employers know that.
I still have more fans than freaks. WTF is wrong with you people?
I was just by the Apple Store in Palo Alto, CA. There are people lined up for the iPad launch, some sleeping in tents. Three TV stations are covering the waiting line. Reminds me of Apple's "Lemmings' video.
Actually, the state of the art in programming languages still sucks. The mindset that "it has to be unsafe to go fast" is so deeply entrenched in the C/C++ community that fixable problems aren't fixed, and as a result, millions of programs still crash every day. The "virtual machine" thing has resulted in ".NET", a virtual machine for x86 only. The "scripting language" approach is useful, but fanatical late-binding coupled with naive interpreters makes for very slow execution, as with Python. Few mainstream languages do concurrency well; the notion that concurrency is the operating system's problem results in pain for all concerned.
Looked at that way, Java isn't bad. Memory safety is good. There are efficient compilers. There's some language support for concurrency. It's not too weird, and not too theoretical. Java is mediocre, but better than most of the alternatives when you need to get large amounts of work done.
Uhuh... so you determine language quality by the terseness of it's text.
Interesting.
Well, you have fun writing your terse programs with inexplicably named, but I'm sure very compact, variable and function names, while the rest of us move on to writing code other people can actually, you know, read and understand while putting up with the horrible hardship of having to type a little bit more.
Oh, and BTW, any language that has namespaces has an import keyword. Maybe you should try it out sometime.