this post was submitted on
8 points (53% like it)
69 up votes 61 down votes
all 194 comments

[–]mhw 24 points25 points ago

sorry, this has been archived and can no longer be voted on

No, though it may have peaked.

[–]demosthenes02 4 points5 points ago

sorry, this has been archived and can no longer be voted on

But if you're not growing, you're dying, right?

[–][deleted] 15 points16 points ago

sorry, this has been archived and can no longer be voted on

You know what they say -

Life is a sexually transmitted decease with a 100% mortality rate.

[–]rektide 6 points7 points ago

sorry, this has been archived and can no longer be voted on

I know its not very capitalist, but theres something to be said for sustainability too.

[–]nonades 1 point2 points ago

sorry, this has been archived and can no longer be voted on

There's stagnating. But you're really not gonna do that at the peak.

[–]grauenwolf 1 point2 points ago

sorry, this has been archived and can no longer be voted on

No, I wouldn't go that far.

Sun could turn it around with either with major improvments or a "Java 2.0" that fixes its fundemental problems. I don't think they have the will, but it could happen.

[–]recursive 3 points4 points ago

sorry, this has been archived and can no longer be voted on

I thought Java 6 was already out.

[–]flukshun 4 points5 points ago

sorry, this has been archived and can no longer be voted on

aka java 1.6

[–]recursive 4 points5 points ago

sorry, this has been archived and can no longer be voted on

wtf

[–]flukshun 2 points3 points ago

sorry, this has been archived and can no longer be voted on

assuming you'd like me to elaborate...

http://en.wikipedia.org/wiki/Java_version_history

java 5 and 6 are, in terms of the internal release numbering, just 1.5 and 1.6. Java 5/6 is just a marketing thing they did after 1.4

so i guess java 2.0 would be Java 0 or something. or maybe Java Zero..like Coke

[–]recursive 6 points7 points ago

sorry, this has been archived and can no longer be voted on

I see... I think.

Well, from a not-being-pointlessly-confusing-as-fuck perspective, that pretty much sucks donkey balls.

[–]TomDibble 0 points1 point ago

sorry, this has been archived and can no longer be voted on

The most major version number speaks to binary compatibility in many products. The JVM hasn't broken binary compatibility, thus is still on 1.x. However, given that the "1." never changes (as that's a central goal of Java language evolution), it's kinda redundant.

Example: any Java 1.0 application will run just swimmingly in a Java 1.6 JVM (provided the libraries used are present, which is not guaranteed by the JVM in any case).

[–]recursive 0 points1 point ago

sorry, this has been archived and can no longer be voted on

However, given that the "1." never changes (as that's a central goal of Java language evolution), it's kinda redundant.

No, it's not redundant. Either it should always be dropped or never. If it really has no meaning, it shouldn't be there at all.

[–]iofthestorm 2 points3 points ago

sorry, this has been archived and can no longer be voted on

Java 2 is actually 1.2 (hence everything after it being J2SE).

[–]hiffy 2 points3 points ago

sorry, this has been archived and can no longer be voted on

When 1.2 came out they decided to call it "Java 2" and the naming convention more or less stuck ever since.

[–]Leonidas_from_XIV 2 points3 points ago

sorry, this has been archived and can no longer be voted on

Though Java 1.3 and 1.4 were still called J2SE so they were "Java 2 Version 1.4" which is about as pointlessly confusing as "Windows 7 Version 6.0".

[–]Fabien4 2 points3 points ago

sorry, this has been archived and can no longer be voted on

You are indeed confused. IIRC, Windows 7 is Windows 6.9.

[–]paranoidgeek 2 points3 points ago

sorry, this has been archived and can no longer be voted on

It's actually 6.1

[–]grauenwolf 0 points1 point ago

sorry, this has been archived and can no longer be voted on

That was my reaction as well.

[–]hylje 3 points4 points ago

sorry, this has been archived and can no longer be voted on

It's not even that hard to pull off: the JVM already interoperates between completely different languages. A flavor of Java without legacy warts but feeling the same would be only a good thing.

[–]G_Morgan 0 points1 point ago

sorry, this has been archived and can no longer be voted on

There is already a Java 2. The current release is Java 2 1.6. Yes versioning is fun.

Java 3 would need to move the entire VM to use the x86 (maybe 64 bit) memory model so that JNI doesn't suck so much anymore. It can still have primitives but ideally operator overloading will make it reasonable to use bloody objects that hide the mess from me.

[–]TomDibble -1 points0 points ago

sorry, this has been archived and can no longer be voted on

Aside from wanton elimination of parentheses, I see little benefit to operator overloading, and significant failures (see pretty much any C++ application with operator overloading year after the operators were overloaded).

Granted:

a = x + y

is a lot easier to read than:

a = x.plus(y)

... but it's usually important to know that the "+" isn't the same old intuitive language feature you've always known and loved but is different in this particular codebase with this particular version of "x" nd this particular version of "y".

Sucks when you want to work in non-native number objects, true, but when "+" can mean anything from adding an item to an array or adding all the items in another array to this array to adding the smerphlin factor from one object to the geimholf factor of the other ... well, I'd rather have a descriptive method name to know those operations by (even if it's as undescriptive as "plus") than a single-character symbol.

C++ shows that when you overload operators on objects it will always make absolute intuitive sense. Until someone else needs to maintain your code.

[–]G_Morgan 0 points1 point ago

sorry, this has been archived and can no longer be voted on

The problems with C++ largely came about because of a lack of convetions. Java went to great length to establish conventions and it was highly successful. All that would need to happen is that conventions would be established about operator overloading.

The whole market is different now. Back then you were just given a compiler. Now you have whole reams of stylistic guidelines and documentation to show how things should be done properly. Comparing to C++ isn't really relevant, a better example today would be C#.

[–]scruzia 20 points21 points ago

sorry, this has been archived and can no longer be voted on

Indeed, Java has jumped the sparc.

[–]groby 57 points58 points ago

sorry, this has been archived and can no longer be voted on

I don't think so.

As a language, it has COBOL-like momentum in the "Enterprise" space.

As a VM, it's giving a great basis to many cool languages.

As the "hip thing" in magazine/blog articles? Yes, it's dead.

[–]pyres 1 point2 points ago*

sorry, this has been archived and can no longer be voted on

It's not dying fast enough google trends

The only good thing about java is getting paid to support it. And that is not enough.

[–][deleted] 2 points3 points ago

sorry, this has been archived and can no longer be voted on

If you type in many technology keywords to google trends, you will see a downward trend.

http://www.google.com/trends?q=java%2C+php%2C+perl&ctab=0&geo=all&date=all&sort=0

[–]trimbo 1 point2 points ago

sorry, this has been archived and can no longer be voted on

The interesting thing about these trends is that it's mostly driven by searches from India. It could be that what we're seeing an indication of is that the outsourcing bubble of a few years ago has popped. Though if you limit it to the US, you see the same (relative) trend.

I guess, in general, there was a technology bubble a few years ago that seems to have leveled off. Or maybe people stopped trying to Google for answers and bought books instead. Even scala and erlang have been pretty flat with some spikes, and those are supposed to be the hottest languages in the world. (Someone in Lisle, IL is searching for Erlang a LOT).

[–]groby 1 point2 points ago

sorry, this has been archived and can no longer be voted on

He - that "someone" in Lisle is Tellabs - probably by far the leading Erlang employer in the US.

Sometimes, the power of Google just amazes me.

[–]mooli 44 points45 points ago

sorry, this has been archived and can no longer be voted on

Only in the sense that C# is dying.

ie. if you read reddit it has almost no buzz in comparison to things like Haskell, Clojure, Ruby etc etc etc

But out there in the real world it's getting the job done, has been for years, and will continue to do so for many more.

Getting excited about Java at this stage is a bit like getting excited about a hammer.

[–]StringyLow 13 points14 points ago

sorry, this has been archived and can no longer be voted on

I don't know man... have you seen the rack of hammers at Home Depot?

[–][deleted] 21 points22 points ago

sorry, this has been archived and can no longer be voted on

They make me want to go out and nail something.

[–][deleted] 15 points16 points ago

sorry, this has been archived and can no longer be voted on

Looking at your mother inspires the same reaction in me.

[–]nabla 12 points13 points ago

sorry, this has been archived and can no longer be voted on

"Getting excited about Java at this stage is a bit like getting excited about a hammer."

i'm gonna put this in my sig,

[–]oniony 2 points3 points ago

sorry, this has been archived and can no longer be voted on

Why?

[–][deleted] 13 points14 points ago

sorry, this has been archived and can no longer be voted on

because he's unoriginal.

[–]Fabien4 1 point2 points ago

sorry, this has been archived and can no longer be voted on

Getting excited about Java at this stage is a bit like getting excited about a hammer.

Good comparison. Using a Java application on Windows feels like hitting your finger with a hammer.

[–]chrisforbes 2 points3 points ago

sorry, this has been archived and can no longer be voted on

Using a Java * on * feels like hitting your finger with a hammer

There, FTFY.

[–]Rayeth 1 point2 points ago

sorry, this has been archived and can no longer be voted on

This is also true of plain old C. It is certainly not "cool" like those Object Oriented kids, but its still about a million miles better than assembly. Cue the next person in the thread talking about how assembly gets no respect...

[–][deleted] 20 points21 points ago

sorry, this has been archived and can no longer be voted on

C and Java are different in the non-excitability department, though. With C, you don't get excited about it like you don't get excited about a good vintage wine, but with Java, you don't get excited about it like you don't get excited about taking out the garbage.

[–]munificent 10 points11 points ago

sorry, this has been archived and can no longer be voted on

a good vintage wine

In the sense that it's bitter and painful the first several times and you only do it because it makes you look adult? And then you have to tell everyone how great it is because you already bought all the accessories and don't want to look like a fool?

C is a nice language, and was quite excellent for its time, but unlike wines, languages don't get better over time. Your average programmer today could probably come up with half a dozen solid improvements to C.

[–]didip 2 points3 points ago

sorry, this has been archived and can no longer be voted on

Building half a dozen solid tools in C? most definitely. Improvements? Hard to imagine that because C is quite low level.

[–][deleted] 1 point2 points ago*

sorry, this has been archived and can no longer be voted on

I doubt it. The average programmer today doesn't know anything because they do nothing but Java.

As a professor said recently, they're the Dominos pizza delivery boys of the next decade.

C is timeless. The Labs guys are really smart -- they picked the abstractions quite well. Alef improved things, but C is still quite good in comparison.

The only thing C falls down on is string handling.

[–]WalkingDead 4 points5 points ago*

sorry, this has been archived and can no longer be voted on

The only thing C falls down on is string handling.

Which is good, in the sence that processors don't have a builtin notation for strings. Had C defined a rigid string type 30 years ago, it would have been obsolute by now leading to incompatible fixes in the core language.

[–][deleted] 0 points1 point ago

sorry, this has been archived and can no longer be voted on

Good point.

[–]back-in-black 2 points3 points ago*

sorry, this has been archived and can no longer be voted on

As a professor said recently, they're the Dominos pizza delivery boys of the next decade.

That would be the "anti-Java Professor", right?

I learned C first, then moved to Java. Both languages have their merits, and it's best to view them as tools that are useful in different environments.

The pizza delivery boys of the next decade are the ones who have a dogmatic attachment to one language. So from what I can see, this isn't likely to be people who live in the world of Java, who are currently enjoying learning a glut of new languages that integrate into the existing development environment.

[–]uriel 0 points1 point ago*

sorry, this has been archived and can no longer be voted on

As a professor said recently, they're the Dominos pizza delivery boys of the next decade.

That would be the "anti-Java Professor", right?

That would be anyone that is not retarded and that has half a clue about the software industry.

Java is a language specifically designed for clueless retarded corporate droids, so unless one fits that description, it is hard to appreciate its 'qualities'.

[–]back-in-black -1 points0 points ago*

sorry, this has been archived and can no longer be voted on

Wow, that's a logical and well thought out argument.

I bet you're a great software engineer.

[–]chrisforbes -1 points0 points ago

sorry, this has been archived and can no longer be voted on

Probably is, actually.

Having a deep, borderline-irrational hatred of java is a good indicator of programming ability around here.

[–][deleted] 1 point2 points ago

sorry, this has been archived and can no longer be voted on

I guess you can redefine the old CCNA joke into a Java joke!

Q: How do you get a Java programmer off of your porch? A: Pay for your pizza.

[–][deleted] 0 points1 point ago

sorry, this has been archived and can no longer be voted on

Bwahaha

[–]munificent -1 points0 points ago

sorry, this has been archived and can no longer be voted on

As a professor said recently, they're the Dominos pizza delivery boys of the next decade.

Oh, you're a student. That explains a lot. Once you have a few years of experience getting things done, you'll likely have a more balanced viewpoint.

The only thing C falls down on is string handling.

And:

  • Shitty pointer syntax (the whole declaration reflects use thing turned out to be a bad idea).
  • Even worse function pointer syntax.
  • Poorly-defined (or undefined) behavior with increment and self-assignment operators.
  • While it made sense at the time, a lot of design decisions were to allow a single-pass compiler (like requiring declaration before use) and not to make the language better. Those could be fixed now.

[–][deleted] 1 point2 points ago

sorry, this has been archived and can no longer be voted on

wth? Quoting something some professor said on the internet makes me a student? Fuck you, I work full time as a software developer for an investment bank.

To hell with the rest of your comment, your ridiculous assumption just proves you aren't worth arguing with.

[–]munificent 0 points1 point ago

sorry, this has been archived and can no longer be voted on

your ridiculous assumption just proves you aren't worth arguing with.

Whether or not I'm worth arguing with is irrelevant. Are my points?

[–][deleted] 1 point2 points ago

sorry, this has been archived and can no longer be voted on

Fair enough.

Honestly, I don't think the syntax is bad. Far from perfect, but not bad. FP syntax is ugly, but that helps encourage people to not use them, which is probably wise since C doesn't do well with that style. Pointer syntax could have been fixed, sure, but it's usable. I don't see how increment is poorly defined. I think declaration before use is a lot easier to understand. Table aliases in SQL confuse the shit out of me.

Every language has syntactical issues. As long as they are relatively few, I don't think they're worth making a huge fuss over.

You're still a shitcock for being so presumptive.

[–]chrisforbes 0 points1 point ago

sorry, this has been archived and can no longer be voted on

Your average programmer today could probably come up with half a dozen solid improvements to C.

I don't think your average programmer today is even capable of writing decent code, let alone having any kind of coherent thoughts about language design. You're giving the monkeys too much credit.

[–]mycall -1 points0 points ago

sorry, this has been archived and can no longer be voted on

Some people would say Objective-C and LLVM is reviving C.

[–]uriel 0 points1 point ago

sorry, this has been archived and can no longer be voted on

This has got to be the most beautiful comparison of Java and C I have ever read!

Right into my Java quotes file you go :)

[–][deleted] 0 points1 point ago

sorry, this has been archived and can no longer be voted on

woo! Now I wanna go in the fortunes file next to Ken and his "pushed around" quote

[–]checksinthemail 0 points1 point ago

sorry, this has been archived and can no longer be voted on

I'll take the bait.

Takes microseconds longer to crash in any other language (inserts graph)

[–]munificent 13 points14 points ago*

sorry, this has been archived and can no longer be voted on

Please keep in mind that proggit is representative of the programming world at large to the same degree that exhbitionists are representative of people who have sex.

[–]EughEugh 10 points11 points ago

sorry, this has been archived and can no longer be voted on

Java is not dying, it is still used everywhere, from SIM cards to supercomputers.

Even if the Java programming language would become less popular in the future, the JVM will still be used everywhere - there are a lot of new programming languages that are making use of the strong foundation of the JVM, such as Scala, Groovy, JRuby, Clojure, etc. Those are what's hot now in Java-land, there's a lot of attention for those languages on Java conferences nowadays.

[–]back-in-black 0 points1 point ago*

sorry, this has been archived and can no longer be voted on

This is the most sensible answer here.

[–]zerocube[S] 0 points1 point ago

sorry, this has been archived and can no longer be voted on

Well That's the most accurate response. That's to say that the much popularity these languages will gain the much Popular Java will get.

[–]Arconan 0 points1 point ago

sorry, this has been archived and can no longer be voted on

Best answer so far!

[–]Rhoomba 9 points10 points ago

sorry, this has been archived and can no longer be voted on

See the line going down in this graph? that's not Java. But we won't see any threads about the language in question dying.

[–]chrisforbes 2 points3 points ago

sorry, this has been archived and can no longer be voted on

Have a look at that red line down the bottom, too.

The peak coincides with Zed's rant at the end of 2007.

And the spectacular non-impact 1.9 has had.

Beyond that, people have ceased to give a shit.

[–]alexeyr 1 point2 points ago

sorry, this has been archived and can no longer be voted on

I am surprised to see C# tracking Ruby nearly perfectly up to 2008.

[–]chrisforbes 0 points1 point ago

sorry, this has been archived and can no longer be voted on

Well, approx none of the 100+ C# projects ive been involved in are tracked on ohloh, so I'd not assume their numbers are anywhere near representative.

[–]alexeyr 0 points1 point ago

sorry, this has been archived and can no longer be voted on

Certainly, neither would I. And if I saw these numbers equal at one point, or a few, I would draw no conclusion. But these are nearly the same graphs, and I find it a bit hard to put it down just to coincidence.

[–]Tinned_Tuna 9 points10 points ago

sorry, this has been archived and can no longer be voted on

I'd say that it's becoming viewed as more of a dinosaur language. Like COBOL and FORTRAN. Neither are 'dead' in any real sense, they're just mainly in the maintainence stages of their life. I think Java is slowly going that way.

There's going to be a lot of code in the future written in Java, but everyone will be off learning fad language x. This stuff will need to be tended to by someone.

[–]artificialidiot 2 points3 points ago

sorry, this has been archived and can no longer be voted on

I hope so, considering all the awesome languages that target the JVM.

[–]devacon 3 points4 points ago

sorry, this has been archived and can no longer be voted on

I have but one request for this thread... if you post "java sucks" or "java is dead" please post the language that you work in.

[–]chrisforbes 5 points6 points ago*

sorry, this has been archived and can no longer be voted on

Java sucks. Java is dead. Real men write in C + a scripting language.

[–]WalkingDead 4 points5 points ago

sorry, this has been archived and can no longer be voted on

I would have upvoted you more if I could. After 20 years for programming, I am back to C + a scripting language.

[–]chrisforbes 0 points1 point ago

sorry, this has been archived and can no longer be voted on

I'm in the same position.

[–]uriel 4 points5 points ago

sorry, this has been archived and can no longer be voted on

It is amazing how well the old unix tool philosophy of small tools that do one thing well glued together with shell scripts works to this day.

I recently built a whole web anti-framework using the rc shell, which is probably the most minimalist shell around, and it worked out quite nicely.

Almost half a lifetime programming, I still find C + (sane) shell scripts the most pleasant way to get work done, and I'm still frequently surprised at how fun it is and how good the results are.

[–]frutiger 0 points1 point ago

sorry, this has been archived and can no longer be voted on

Java sucks. Java is dead. I work in C++ (which also sucks, but hey, it pays the bills).

[–][deleted] 0 points1 point ago*

sorry, this has been archived and can no longer be voted on

Java sucks. I work with Java and C# to some extent. However, when I wish to solve practical problems, I use Haskell, Scala or perhaps Nemerle.

[–]technomancy 2 points3 points ago

sorry, this has been archived and can no longer be voted on

Java means a lot of things.

Java the language is an evolutionary dead end and has been dead weight for a long time for anything more than very low-level infrastructure. Java the virtual machine is awesome and still unmatched as a platform for building other languages.

Java means a whole lot of other things too in Sun market-speak, but those are the only interesting ones.

[–]jdh30 -3 points-2 points ago

sorry, this has been archived and can no longer be voted on

Java the virtual machine is awesome and still unmatched as a platform for building other languages.

The CLR is much better: tail calls, value types, generics, delegates. The JVM has a nice GC but it is a decade out of date now.

[–]Rhoomba 2 points3 points ago

sorry, this has been archived and can no longer be voted on

The JVM is much better than the CLR. Why do you have to mark methods are virtual in C# and not in Java? Because the CLR is not able to optimize them away like the JVM is. Delegates are a language feature and don't really depend on the VM.

The JVM is already better than the CLR for building other languages with the exception of tails calls, as it optimizes them considerably better and it has just got escape analysis which could help even more.

Value types have their upsides and downsides.

The JVM also is cross platform and has great profiling and monitoring support.

[–]mschaef 0 points1 point ago*

sorry, this has been archived and can no longer be voted on

Why do you have to mark methods are virtual in C# and not in Java?

I'm pretty convinced that this is more Anders Hejlsberg's decision about what's right for the languauge, than anything related to the JVM itself.

Back in the dawn of time, Microsoft tried to compete against Turbo Pascal 5.5 with the little known QuickPascal 1.0. QuickPascal defaulted to virtual methods, TurboPascal did not. Flash forward a few years: Hejlsberg moved from Borland to Microsoft and led the development of C#, which defaults to non-virtual methods.

Because the CLR is not able to optimize them away like the JVM is.

There's nothing about the requirement to mark methods as virtual that says that the CLR can't optimize such calls away, as the JVM (or Self, etc.) might do.

For what it's worth, I tend to prefer default virtual methods.

[–]Rhoomba 0 points1 point ago

sorry, this has been archived and can no longer be voted on

It could theoretically do so, but it can't currently in most cases. Which is pretty lame.

[–]alexeyr 1 point2 points ago

sorry, this has been archived and can no longer be voted on

As it happens, it is getting a new GC soon: http://java.sun.com/javase/6/webnotes/6u14.html

[–]joffotron 2 points3 points ago

sorry, this has been archived and can no longer be voted on

Java still rules the roost in the meduim/large-scale server side space.

It simply has important stuff (distributed transactions, scheduling (ref: quartz), search (ref: lucene), reporting (ref: JasperReports et al), decent ORM (ref: Hibernate), and many many more ) that other, newer trendy environments won't have at all, or in stable form for a few years yet..

[–]sbrown123 4 points5 points ago

sorry, this has been archived and can no longer be voted on

Java will die as soon as you haven't seen a post about Java dieing on Proggit for a week. I don't expect this to happen in the foreseeable future.

[–]mhd 5 points6 points ago

sorry, this has been archived and can no longer be voted on

No. Small startups and other reddit-prone developers never used Java all that much. I can't see a trend of it diminishing in the corporations where being all "Enterprise" is a big thing. The last big blow there was from C#, and both languages/environments have entered a truce right now.

As a matter of fact, the whole Sun/Oracle deal is creating some buzz again.

[–]mycall 0 points1 point ago*

sorry, this has been archived and can no longer be voted on

Microsoft got a great deal hiring Anders Hejlsberg. I loved Turbo Pascal in the 80s -- in fact, TP was the main reason I never got into C back then.

[–]mhd 1 point2 points ago

sorry, this has been archived and can no longer be voted on

I do wonder how Hejlsberg would've done his new language if such a close emulation of the whole Java platform wasn't a requirement, i.e. if C# would be here without .NET...

[–]mycall 0 points1 point ago

sorry, this has been archived and can no longer be voted on

According to this interview, he says C# is not a Java clone, interestingly enough. I hear another interview where he wish Null objects were baked in from start but otherwise he is very happy about the language design.

[–]mhd 2 points3 points ago

sorry, this has been archived and can no longer be voted on

I'm more talking about the common runtime. A more delphi-like, sleek, native C# would be quite interesting...

(Delphi took some hints from fellow Pascal language Modula-3 before Java copied it wholesale, so I'm not one that's saying that C# itself is a straightforward copy of Java. The Pascal and C family tree is quite incestous in general...)

[–]mycall -1 points0 points ago

sorry, this has been archived and can no longer be voted on

Incest is best when you can't get the rest.

[–]pointer2void 13 points14 points ago

sorry, this has been archived and can no longer be voted on

No

[–][deleted] 4 points5 points ago

sorry, this has been archived and can no longer be voted on

God I hope so.

[–]uriel 0 points1 point ago

sorry, this has been archived and can no longer be voted on

We wont be so lucky, people are still using COBOL and BASIC out there, and java will be the same, will take the industry many decades to rid itself of the disease, and will likely be replaced with something even worse.

[–][deleted] 0 points1 point ago

sorry, this has been archived and can no longer be voted on

Uriel, my friend, you're always the most correct when you're being the most depressing :P

[–]uriel -1 points0 points ago

sorry, this has been archived and can no longer be voted on

And today we find out Erik Naggum is dead, the world just became a bit darker and we lost a great mind in the fight against evil and complexity sigh

[–][deleted] 0 points1 point ago

sorry, this has been archived and can no longer be voted on

I feel oddly as if Star Wars has some hint of reality, with people like us the dwindling order of Jedi trying to fight the ever-growing forces of evil. Things will be weird when we lose Ken and Rob. There may be no 'great' sane people left.

[–]zerocube[S] 1 point2 points ago

sorry, this has been archived and can no longer be voted on

I admit that Java is getting widely open in the "Entreprise" society, But ultimately it has certainly been through its most sensitive period, Well, open sourced, Oracle thing, google....

Do you think this gonna help making it better ?

[–]Leonidas_from_XIV 1 point2 points ago

sorry, this has been archived and can no longer be voted on

No, ask the ASF what they think about the "openness" of Java.

As a language it is far from dying (yet), but definitely nothing that is in any way cool, interesting etc. these days. If it wasn't for the cool languages running on the JVM, it would be as boring as a rock. On the backside of the moon.

[–]ytinas 1 point2 points ago

sorry, this has been archived and can no longer be voted on

The language, I would say yes. The weight of all the legacy just makes it awful to learn. How many different ways are there to open a file by now?

C# fixes most of Java's problems, though I hope multicore programming pushes out of the Algol-language run we've been in.

[–]humbled 1 point2 points ago*

sorry, this has been archived and can no longer be voted on

The question is too broad. Java as a platform is most definitely alive; we have the OpenJDK and a host of new languages that run on it (Scala, Clojure). JRuby is competitive and sometimes better than the C Ruby interpreter itself. Android is Java. Google is heavily invested in Java. Is Java dead? I don't know, do you use GMail? Java.

What has "died" is certain aspects of the platform. Swing, applets, and many other aspects have passed on. But the future is still bright and expanding in the Java world.

Edit/update: I feel obliged to mention that "Java" itself is a platform, language spec, and virtual machine. To which does this question really refer?

[–]csixty4 2 points3 points ago*

sorry, this has been archived and can no longer be voted on

Here's my take, as a certified Java programmer who happily left that world behind almost three years ago.

The future for Java the language is great. Java is like COBOL in that it's deeply entrenched in the business world. But, as a modern language with great Internet features, it'll continue to be used for new development instead of relegated to an old, dusty mainframe in the basement until a replacement system can be written.

The future for Java developers, though, is bleak. What I learned from my short tenure in that world is that there's no place for a Java generalist. You have to pick your religion...er, platform...and know it backwards and forwards. I had a lot of interviews end after I told them I only had experience with Oracle's suite, not Websphere or Weblogic (before Oracle bought them). Even if I told them I was willing to learn something new, they needed someone who could hit the ground running, an expert on their platform.

So, sell yourself as a Websphere developer (for example) instead of a Java developer, and you should be set for at least ten more years. You'll get some doors shut because you don't know Weblogic or whatever the other big platforms are these days, but there will be plenty of work using your chosen platform.

[–]finlyandsky 3 points4 points ago*

sorry, this has been archived and can no longer be voted on

Define Java. If Java means JVM, it has a bright future: Scala, Clojure, Jython, JRuby, etc. If it's a programming language, it's peaked. Is a guy in their 60's dying? No, he's just settling down in his age.

Things don't really die. The new projects simply adopt newer tech and the old stuff continues to build on legacy stacks.

[–]sakipooh 3 points4 points ago

sorry, this has been archived and can no longer be voted on

Really, it's dying? I quite like the fact that I can make some pretty sweet games with it. Mind you I don't use any swing as I like to do everything from scratch look&feel wise. But I just love how I can make something and it runs on 3 platforms without any issues (if done right).

And it's fast enough that I can make full screen (at HD res), rich client desktop games with tons of animation/scalling and rotation without much effort at all. In the end, you would never know it was made in Java at all.

I've never had so much fun programming in my life. I don't know why every homeless man and woman doesn't learn Java.

[–]0x2a 3 points4 points ago

sorry, this has been archived and can no longer be voted on

For what it's worth, this trend at indeed.com says no.

[–]contantofaz 5 points6 points ago

sorry, this has been archived and can no longer be voted on

  • Java the programming language is too tough on developers who have preferred to use something else when they get to choose.
  • To this day, Sun regards Java on Windows as one of their most profitable markets, and on Windows Java faces one of its toughest competitions ever when it comes to "Enterprise", given Microsoft's strong foothold. It matters in that when given a choice, managers and programmers choose .NET or some such.
  • Java on the front-end has had many issues, some of them understandable given Java chose some of the harder paths when deviating from the native platforms so it had more "cross-platform" support. But if Java was so much productive then folks should have been able to fix it by themselves, but some of the inherent difficulties have persisted, haunting Java and other languages like it.
  • For many years folks have worried quite a bit more about Java for the server-side than for the client-side. Self-fulfilling prophecy.

[–]Fabien4 1 point2 points ago

sorry, this has been archived and can no longer be voted on

Java is naturally server-side, because that's the thing Sun knows about.

[–][deleted] 0 points1 point ago*

sorry, this has been archived and can no longer be voted on

Sun regards Java on Windows as one of their most profitable markets

Really? It is a huge deployed base and that's good for "Java Store", but profitable? How, licenses? Where are the numbers? -- honest question btw, not trying to be a jerk.

[–]contantofaz 0 points1 point ago

sorry, this has been archived and can no longer be voted on

I read it on Sun's CEO blog:

But not all Java runtimes are the same. For most devices, from RIM's Blackberry to Sony's Blu-Ray DVD players, original equipment manufacturers (known as "OEM's") license core Java technology and brand from Sun, and build their own Java runtime. Although we're moving to help OEM's with more pre-built technology, the only runtimes currently that come direct from Sun are those running on Windows PC's.

And oddly enough, that's made the Windows Java runtime our most profitable Java platform. I thought I'd provide some insight into that business here, and then introduce a project we're planning to unveil at this year's JavaOne, known internally as Project Vector.

[–]StringyLow 2 points3 points ago

sorry, this has been archived and can no longer be voted on

Nope. Not by a long shot. It powers the backend of just about everything Google does and that's just the tip of the iceberg for Java use as a whole.

[–]bonafidehan 2 points3 points ago

sorry, this has been archived and can no longer be voted on

Java also powers much of Amazon. AWS included.

[–]alexeyr 0 points1 point ago

sorry, this has been archived and can no longer be voted on

Isn't much of that C++?

[–]StringyLow -1 points0 points ago

sorry, this has been archived and can no longer be voted on

What? Google's code base?

[–]alexeyr 2 points3 points ago*

sorry, this has been archived and can no longer be voted on

Yes. The links I can find say that Google's production code base has C++, Java, Python and Javascript, but not how much of each:

http://steve-yegge.blogspot.com/2007/06/rhino-on-rails.html

http://panela.blog-city.com/python_at_google_greg_stein__sdforum.htm

So if you have data that shows

the backend of just about everything Google does

is Java, could you please give a link?

[–]alexeyr 1 point2 points ago

sorry, this has been archived and can no longer be voted on

This (in Russian) specifically claims Google File System is C++.

[–]uriel 0 points1 point ago

sorry, this has been archived and can no longer be voted on

Same goes for bigtable, Sawzall and map-reduce.

[–]StringyLow -1 points0 points ago

sorry, this has been archived and can no longer be voted on

The client apps (Earth, Chrome, etc...) are typically done in C++, but those are minuscule when compared to the server-side stuff.

If a Google server is spitting out HTTP, it's probably running Java. The development speed for Web development makes Java superior to C++. Google Web Toolkit will give you an idea of the approach they use.

[–]alexeyr 1 point2 points ago

sorry, this has been archived and can no longer be voted on

Google Web Toolkit will give you an idea of the approach they use.

That would be frontend, not backend. Most of their backend is GFS + Bigtable. Are they Java?

[–]Rhoomba 0 points1 point ago

sorry, this has been archived and can no longer be voted on

My understanding is that search is C++ (GFS and Bigtable), but adwords and some of the other sites are Java.

[–]uriel 0 points1 point ago

sorry, this has been archived and can no longer be voted on

The big infrastructure bits are all C(++): bigtable, Sawzall, map-reduce, GFS, etc. As is pretty much all the search stuff. They would have to be insane to use Java.

As for things like GWT, most of the frontend people at Google are clearly not very bright, and it shows, the reliability and speed of search is magnitude orders ahead from that of java-based services like gmail.

[–]alexeyr 0 points1 point ago

sorry, this has been archived and can no longer be voted on

I rather think Javascript is the bottleneck for Gmail, not Java.

[–]uriel 0 points1 point ago

sorry, this has been archived and can no longer be voted on

the JavaScript is generated with GWT, also one can't blame JavaScript for gmail's lack of reliability, gmail is down way more often than it should and infinitely more than google search.

[–]donhoe 1 point2 points ago

sorry, this has been archived and can no longer be voted on

Anyone remember how long it took COBOL to die?

[–]chrisforbes 3 points4 points ago

sorry, this has been archived and can no longer be voted on

You must be from the future. Bring back any lottery numbers?

[–]pistacchio 3 points4 points ago

sorry, this has been archived and can no longer be voted on

it is not dead, actually.

[–]donhoe 2 points3 points ago

sorry, this has been archived and can no longer be voted on

True. Yet, its not really alive either...

[–]checksinthemail 5 points6 points ago

sorry, this has been archived and can no longer be voted on

ZombieCOBOL has a cool ring to it.

[–]checksinthemail 1 point2 points ago

sorry, this has been archived and can no longer be voted on

Answer: COBOL.NET

(A reminder to self that there are worse hells.)

[–]G_Morgan 0 points1 point ago

sorry, this has been archived and can no longer be voted on

How many billions of lines of COBOL still run today? It is probably easier to find a well paid job as a COBOL developer than as a Java one. Almost nobody knows it well yet the legacy code base is huge.

[–]chrisforbes 1 point2 points ago

sorry, this has been archived and can no longer be voted on

I saw, and could probably have got a COBOL job making $100k+ here. I know COBOL well enough not to apply.

[–]donhoe 0 points1 point ago*

sorry, this has been archived and can no longer be voted on

Too true. Everyone has to shit, but that doesn't mean dealing with it makes for rewarding employment.

[–]chrisforbes 1 point2 points ago

sorry, this has been archived and can no longer be voted on

For the record, I choose to program in C most of the time. I consider Java to be fairly close to COBOL as far as my desire to use it goes.

[–]pistacchio 1 point2 points ago*

sorry, this has been archived and can no longer be voted on

well, if you're programming for fun you go for languages like python or haskell. if you're programming for windows you use .net. if you program for mac you use object c. if you program for linux you use a combination of everything, from c to shell to gtk to ruby and perl. if you are going for somethin "fast to develop" you avoid java and if you go for something "fast when running" you.. well, avoid java. and there are better alternatives for multi-platform programs. of course you don't use java for web programming where php would get the job done, django would make the job done fun and asp.net would make the job payed.

but for all the rest, yes, java may keep having a certain role.

[–]checksinthemail 1 point2 points ago

sorry, this has been archived and can no longer be voted on

If you work for a large corporation, you program in java.

"Coder in cubicle #43227, wipe that smile off your face, you can't be enjoying this!" <- megaBoss at megaCorp

[–]gdm9000 1 point2 points ago

sorry, this has been archived and can no longer be voted on

Exactly. If you want guaranteed steady employment, Java will get you that for the next 25 years. Still dislike it personally, but it will pay your bills if you're willing to settle for Blub...

[–]alexeyr 0 points1 point ago

sorry, this has been archived and can no longer be voted on

but for all the rest, yes, java may keep having a certain role.

So you use Java for embedded programming? The horror...

[–]austin_k 1 point2 points ago

sorry, this has been archived and can no longer be voted on

No. Oh wait, you said "ask reddit". Then yes. I wrote a haskell program that proves it.

[–]blaxter -1 points0 points ago

sorry, this has been archived and can no longer be voted on

die! motherfucker, die!

[–][deleted] 6 points7 points ago

sorry, this has been archived and can no longer be voted on

I don't know why you are getting downvoted. Java is a horrible language.

[–][deleted] 6 points7 points ago

sorry, this has been archived and can no longer be voted on

I concur.

[–][deleted] ago

sorry, this has been archived and can no longer be voted on

[deleted]

[–]zerocube[S] 0 points1 point ago

sorry, this has been archived and can no longer be voted on

Well, honestly talking, Java isn't that horrible well It's cute but sure there are cutter

[–]shevegen 0 points1 point ago

sorry, this has been archived and can no longer be voted on

I dont like it and wish it would die. But there are more than enough people who keep on Java, and often praise other areas such as the JVM as platform.

It also depends on the definition of "dying". To me, dying actually refers to "getting new, young people interested in it". In this regard, yes, Java is basically dying, because it is a money-only language. I.e. a language you write code to get rich (or die trying), but not a language you use because you LIKE it.

[–]deadcat 0 points1 point ago

sorry, this has been archived and can no longer be voted on

It seeems as though demand for dot.net in my city is increasing, while java is declining. I'm not sure if this fits the general trend.

[–]zerocube[S] 0 points1 point ago

sorry, this has been archived and can no longer be voted on

Well That's to conclude Java is not dying, but otherwise taking a deep breath in order to jump pretty further

[–]zerocube[S] 0 points1 point ago

sorry, this has been archived and can no longer be voted on

Long life Java

[–]causticmango 0 points1 point ago

sorry, this has been archived and can no longer be voted on

One can always hope.

[–]sigzero 0 points1 point ago

sorry, this has been archived and can no longer be voted on

No, in fact I am betting that Oracle does some good things with it.

[–]chrisforbes 1 point2 points ago

sorry, this has been archived and can no longer be voted on

Borg nanites are programmed in Java.

[–]ajrich01 -1 points0 points ago

sorry, this has been archived and can no longer be voted on

It is certainly causing problems for the frontend of my company's product. Our product is applet based and the "minor" updates that Sun has been releasing (1.6.9-13) have been causing serious problems with our product's ui. We are looking to phase java out of the front end and maybe replace it with javascript or flash. That said I don't think servlets and JSP are going anywhere, they are far too useful.

[–]pointer2void 9 points10 points ago

sorry, this has been archived and can no longer be voted on

Our product is applet based

Applets died in the 90ies.

[–]bart2019 2 points3 points ago

sorry, this has been archived and can no longer be voted on

For the general public. There's no reason no to use it for professional use (interfaces for administration).

[–]G_Morgan 1 point2 points ago

sorry, this has been archived and can no longer be voted on

No reason other than there are better options. Like there is no reason to eat uncooked chips other than the fact you can eat cooked chips.

[–]Fabien4 1 point2 points ago

sorry, this has been archived and can no longer be voted on

Is there a reason to use it?

[–]bart2019 1 point2 points ago

sorry, this has been archived and can no longer be voted on

Let's just say that the disadvantages, compared to Flash, don't matter. For example: taking 20 seconds to start up. (Flash loads virtually instantly)

[–]uriel 1 point2 points ago

sorry, this has been archived and can no longer be voted on

Developer masochism, and sadism towards users.

[–]Fabien4 0 points1 point ago

sorry, this has been archived and can no longer be voted on

Developer masochism

Not really. In corporate development, I don't think developers can choose the language.

[–]uriel 0 points1 point ago

sorry, this has been archived and can no longer be voted on

Then maybe they should get another job that is less idiotic and that doesn't suck their lives out for no reason.

[–]zem -3 points-2 points ago

sorry, this has been archived and can no longer be voted on

no, that's freebsd

[–]MasonM 3 points4 points ago*

sorry, this has been archived and can no longer be voted on

Yep, Netcraft confirmed it.

[–][deleted] ago*

sorry, this has been archived and can no longer be voted on

[deleted]

[–]G_Morgan 0 points1 point ago

sorry, this has been archived and can no longer be voted on

Netcraft confirms it!