Oracle Hasn't Killed Java -- But There's Still Time
snydeq (1272828) writes Java core has stagnated, Java EE is dead, and Spring is over, but the JVM marches on. C'mon Oracle, where are the big ideas? asks Andrew C. Oliver. 'I don't think Oracle knows how to create markets. It knows how to destroy them and create a product out of them, but it somehow failed to do that with Java. I think Java will have a long, long tail, but the days are numbered for it being anything more than a runtime and a language with a huge install base. I don't see Oracle stepping up to the plate to offer the kind of leadership that is needed. It just isn't who Oracle is. Instead, Oracle will sue some more people, do some more shortsighted and self-defeating things, then quietly fade into runtime maintainer before IBM, Red Hat, et al. pick up the slack independently. That's started to happen anyhow.'
Other than that, the only use I can see for Java on the desktop is to enable machines to get infected with malware.
Never email donotemail@WeAreSpammers.com
What else does this article's author expect Java to be? A programming language and a runtime are exactly what Java is supposed to be.
Oracle can't figure out how to screw over java, and we are complaining?
Really?
I guess I missed that.
Some random nobody proclaims death of Java. Thousands of companies that do depend on Java EE just vanished in puff of logic.
Oracle can't figure out how to charge $5000 per CPU per year for Java, so it's not really interested.
Hail Eris, full of mischief...
E pluribus sanguinem
Huge troll. They got Java 7 released after Sun let it stagnate for years, they released Java 8 with major improvements the community has wanted for years, they are currently working on Java 9 and the module system, etc. Java EE and Sprign certainly are not dead. I regularly attend a local JUG and I would say the majority of people are using Java EE features such as Servlets, JPA, JAX-RS, JAX-WS, many are moving into CDI, and yes there are even a bunch of JSF users. There are Spring users too. IMO the Java community is alive and well.
Personally, I'd rather not see Oracle get any big ideas. They usually end badly.
With Lambda expressions in the last release, and the renewed focus on mobile - Java is awesome. For a language which forced Microsoft to up it's game with C#, and with Linux has stormed into taking over most of financial services - it's as least as alive as COBOL. Which - like Sarah Palin - cannot be killed and will not go away. Java has the Colbert of Languages. Wildly successful, despite being in a suit.
Where cool technology goes to die.
Large corporations often do not have the vision, flexibility, or ability to execute on these things.
They're not making technology for the sake of making better technology, they're doing it purely to monetize it and make money -- for example, Oracle's insistence on keeping that stupid ask.com toolbar in the Java installer.
Oracle doesn't need the revenue from putting shitware on computers, but they do it anyway. Something about "One Rich Asshole".
Instead of writing a good platform which people use, Oracle have just been doing the greedy asshole thing.
Which, considering how much of their stuff runs on Java, you'd think they'd have an interest in keeping the platform working and widely used.
Sun could be visionaries, but Oracle not so much apparently.
I think a lot of people expected Java to begin its decline once it was in the hands of Oracle -- who are completely incapable of being the stewards of an open standard which doesn't generate huge amounts of revenue.
Lost at C:>. Found at C.
"The reports of my death have been greatly exaggerated."
Andrew Oliver? The shit mountain of self-importance? Still hasn't died of a heart attack? WhyTF is this on /.? Has this website really sunk that far?
In a word, "Yup."
Hey, COBOL still lives... Sorta
"File to fit, pound to insert, paint to match" - Aircraft Maintenance 101
yeah.
" for it being anything more than a runtime and a language with a huge install base." makes me confused. why the heck would it be something else? what does he want? he wants them to brand some operating system as JavaOS or what the fuck?
world was created 5 seconds before this post as it is.
Oracle bought sun to gut the outfit of IP and maybe con some of Sun's userbase in to Oracle products.
That, and some misplaced idea of becoming a vertically integrated one-stop solution. (Yeah. What kind of fucking moron that suffers Oracle's software pricing wants Oracle's cold clammy hands squeezing their nuts for hardware costs too)
They don't give a wet fart about Java, Java's users, or any of other's Sun's formerly important initiatives.
RMS was right about closed software. If you depend on it, you could find yourself at the mercy of some narcissistic slimy fuck like Larry Ellison who buys the company you used to have a good relationship with.
The world is now running away from Java in every possible place it's not irreplaceable (like, say, blu ray players)
'snydeq' isn't a member of the community, he's a paid writer. Go look at his submissions v. comments. This whole site is a sham anymore. This will be my last logged in post. Complete troll bait anymore. Have fun being cogs in a money making scheme. Like Facebook they're done making money off me.
But the JEE framework went against some of the Java founders' quest for simplicity, and byzantine configuration-based frameworks were not brought out at dawn and shot soon enough, so they took over. And the language has some annoying verbosity and stuttering.
20 years later we need to move on. Less is more.
Where are we going and why are we in a handbasket?
I've been saying for a couple of decades that Java is just a fad. I'll be right, sooner or later.
rewriting history since 2109
Seriously, how much language "innovation" do we need? The platform is huge and there's more than enough third-party libraries to satisfy any needs.
I think the problem is Oracle isn't innovating, isn't advancing the technology, some aspects of it are essentially dead, the Java Community Process is largely ignored ...
Java is moving along under its own intertia, but as stewards of the technology, Oracle isn't really doing a damned thing with it.
They're doing exactly what you expect a company like Oracle to do ... maintain the status quo, fail to innovate, and rest on their laurels.
Lost at C:>. Found at C.
"runtime and a language with a huge install base" describes a future where Java just coasts. By contrast, Python, Ruby, and .Net are all runtimes and languages (several languages in the case of .Net) with a huge install base that are actively introducing new frameworks, development tools, and feature on a regular basis. I'm calling an interpreter a runtime for the purposes of this conversation.
Sorta? If you have a home mortgage in the US, I can say for a fact that you've got a 50/50 chance of using COBOL every month.
So, what you're saying is that Oracle's stagnant "sit on it" leadership is bad for people for whom the language and runtime are the end, the product, the point of it all.
As opposed to in the real world, in which the language and runtime are just tools to get shit done, and its users want stability.
You don't have to guess which community Oracle cares about. But if you're not sure, ask yourself which community can Oracle extort support contracts out of, or can be upsold on other products.
Follow the money. How much is the JCP paying Oracle to give a rat's ass about their concerns? Innovation is a cost center to someone protecting a market share, and competing against others who are protecting a market share.
If you want novelty, go find it someplace else. The other posters comparing Java to COBOL, even if jokingly, are very nearly right. Especially if you stipulate that, at the time of COBOL's dominance, the primary implementation of COBOL was associated with IBM big iron.
And that's your historical analogue of the day: COBOL was to IBM what Java is to Oracle.
Welcome to the Panopticon. Used to be a prison, now it's your home.
I get a popup every other day with an update.
Sorta? If you have a home mortgage in the US, I can say for a fact that you've got a 50/50 chance of using COBOL every month.
And if you pay taxes, at least in the US, there is a better than 80% chance of COBOL being involved.
Java - Write once. Run everywhere.
Java - Write once. Test everywhere.
Java - Write for one version. Run on one version.
Java - Write once. Run scared!
He probably wants "Innovation", you know, change for the sake of change? Taking something that works and making new partly incompatible versions of it so that it does not have the taint of old and uncool.
Besides, who would want to work on a stable platform where all the major library needs have been met and vetted when one can be on the bleeding edge of something new to show off?
With most programming languages there are 3 sorts of programmers: There are those 9-5 programmers who examine their paycheck more closely than their code; there are those programmers who have mastered the language and can do amazing things to make it dance, and there are the hard core insiders who give talks at language specific conferences and are on steering committees.
With some languages such as assembler the bulk of the programmers are in the middle category, while with a language like PowerBuilder the vast majority were in the first category. But what I have found with almost all languages there are very very few people in the steering committee category and they can be very detached from the first category.
With Java I would hazard a guess that the absolute majority of programmers are in the 9-5 category and about the only thing they want from the next version of Java is to "Please please please" don't break their code. Beyond that their needs are simple.
So Oracle can let Java Stagnate and it will probably actually please that first group for the short term. Obviously, this can be unhealthy for the language so even that first group will lose out if the language dies as they will then have to learn a whole new language when they thought they could spend a whole career in Java.
But one thing that I have also observed in many of the mega Java based projects is that they are often 1 or more versions of Java behind. Thus even newer versions of Java are totally irrelevant unless they solved some critical existing problem in the codebase of these mega projects. The real issue is that as Java moves on it becomes more and more of an effort to upgrade a mega codebase to a newer version making it eventually impossible under that company's coding management.
So if Oracle ever did want to push forward with new Java ideas then it should also push a huge program where zillions of programmers were taught to manage a version upgrade for a large codebase and given the tools to make it as painless as possible. Remember 9-5 programmers love free trips to sunny places.
I think that Java started to fail when it went into a split of Standard Edition and Micro Edition
Under Java 8 ME
http://www.oracle.com/technetwork/java/embedded/overview/javame/java-embedded-system-requirements-359229.html
* Alignment with Java SE 8 language features and APIs, enabling more streamlined creation of embedded software through a unified development model between Java SE 8 and Java ME 8
Oracle has been trying to fix that...
You don't have to guess which community Oracle cares about. But if you're not sure, ask yourself which community can Oracle extort support contracts out of, or can be upsold on other products.
Follow the money. How much is the JCP paying Oracle to give a rat's ass about their concerns? Innovation is a cost center to someone protecting a market share, and competing against others who are protecting a market share.
At the moment, lawyers seem to be a bigger cost center in protecting Java market share. See Oracle vs. Google, still ongoing.
C - the footgun of programming languages
This is all about your definition of "dead". COBOL is "dead" in the sense that it's not being developed, it's not generally taught, and it's not generally used.
It's "not dead" in the sense that some people are still using it to do meaningful work.
The number of dead languages will vary considerably based on which definition of "dead" you use.
-- "So they told me that using the download page to download something was not something they anticipated." - Bill Gates
That's true, but there's a difference between an open source support contract and the way in which Oracle does a support contract.
Jave does what it needs to, and does it well. So does JEE.
There isn't a lot of "innovation" in the stack because the stack serves it's primary purpose quite well, and is used by tens (if not hundreds) of thousands of websites to deliver business functionality.
And that is, of course, the crux of the matter: functionality. Business is not interested in jumping on the latest and greatest craze just for the sake of doing so. Business wants stability. It wants predictability. It wants reliability.
Not "innovation" for the sake of being different.
I do not fail; I succeed at finding out what does not work.
Complete nonsense. New upgrades have been carried out for COBOL, including COBOL 2002 which adds objects. There are several actively developed COBOL implementations. I think COBOL is more useful and available than its ever been.
That is dead to this crowd. 1/2 of them were probably in diapers in 2002!
I think you missed the half-decade under Sun's stuardship where Java moved quite slowly between 1.2 -> 1.5. A language evolves to suit its community, and if it doesn't shove out the latest buzz word to the populace immediately, then I'm fine with it as long as they get to it eventually. Most library based tools have been out years before Sun/Oracle decided to standardize on a given set, which is 100% FINE. Let the trail blazers blaze trails and the standards follow. The aternative is building OSI model or maybe X.500 and expecting the world to change for them. Let a dozen interesting implementations develop and then combine the best parts of a few into the 'defacto' implementaion.
Bye!
That is dead to this crowd. 1/2 of them were probably in diapers in 2002!
Really? My impression is that Slashdot is mostly geezers.
Besides, who would want to work on a stable platform where all the major library needs have been met and vetted when one can be on the bleeding edge of something new to show off?
It is nothing to be too concerned about, it is part of the normal life cycle.
Like happens to all languages before it, Java has slowly changed from a lean and sexy system into an overweight, middle-aged, sometimes nagging system that is not really much to look at. While it is great to have around, cooks great meals, and keeps the house clean, it is not attractive any more.
Nothing to be ashamed of.
Systems get older. Usually they get less attractive as they age and stop attracting people.
Java was once that lean and sexy system when compared to its contemporaries. I was there when C++ was lean and sexy compared to predecessors. I remember hearing stories about C being lean and sexy compared to needing to rewrite the program for every system.
Lots of new languages are popping up that are new and sexy. Dart and Go and Boo languages are all cute (and are mature enough that people don't look away and mumble 'tsk tsk'). Apple's new Swift language looks cute but is still a bit too young. While I have a lot of code in Java, I'm not married to the language and can use them as they appeal to me.
Now for my rambling "get off my lawn" story. Stop reading here if you don't want to listen to grandpa babble about his old conquests and drift into a drooling sleep.
I first started playing with C++ around 1985. It was so easy to create systems compared to the C systems I was also working on. I could modify behavior really easy with inheritance. I didn't need to specify my structure on every single function, just use the fancy new member functions that passed it automatically with the this pointer. Function names were much simpler, instead of the format NounVerbNoun they could be reduced to VerbNoun or just Verb. So much less typing. I didn't need to maintain tables of function pointers inside every object. I didn't need to follow every allocation with a series of intialization statements, but throw them into a constructor. I didn't need to search the entire code base and make hundreds of changes when adding something to a structure, I could just modify a single file. It was wonderful. But over time people kept adding new requirements and best practices; when you do this you also need to do five other things. Build times radically increased as features like templates were added (they were not there originally) and then huge swaths of code was automatically generated at runtime, or hundreds or even thousands of potential types were evaluated as potentially deduced types. It slowly changed from young and sexy to old and ugly.
I first started programming with Java back in the 1.1 days, around 1996. It was so easy compared to the C++ systems I was also working on. I could create a good looking graphical program that I could run from a web page in a matter of minutes, or hours at most. My first real project at the time was a distributed image processing tool, with back-end clients running on 12 machines and a coordinating server, and the whole project took less than a week. If I needed to build a similar tool in C++ at the time it would have taken five or ten times the effort. Being able to simply rely on java.net.* rather than trying to find a networking library, relying on java.awt.Image classes to process the work, and otherwise having everything instantly available made development very easy. I could dynamically build images and pass them over the web with a trivial amount of human effort.
Today I could still do that, but it would upset people. I would be asked things like "Why doesn't it use Maven to build it? Why don't I use more advanced image processing packages? Why are these talking directly with network libraries rather than using a comprehensive REST-based system? Why is there no comprehensive unit testing?" All the little additions have crept
//TODO: Think of witty sig statement
The JCP under Sun was completely broken. Java 7 was YEARS late. Under Oracle, we got Java 7 released, OpenJDK sorted out, and Java 8 released with Java 9 on its way. As a Scala developer, I don't feel like the Java world has stagnated, but then the Open Source "Community" has been proclaiming the death of Java since Java 1.5. The Open Source "Community" could learn a hell of a lot from the Java community, like how to actually have and maintain large open source libraries that work for years and years. How to build systems and platforms that mature and age and function for decades without needed to be rewritten. I'd bet there are far far more programmers developing on Java than there are for Linux as a desktop OS, and I shudder to think how a post submitted to Slashdot that declared Linux as a Desktop OS is dead would fare.
Everyone is living in a personal delusion, just some are more delusional than others.
You would be surprised how many banks, insurances and transportation companies still use COBOL. Or are running legacy COBOL applications ...
And your claim that it is not actively developed is plain wrong.
Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
I can write a one-liner script that will bring a Unix machine to a crunching slowdown. Stupid in, stupid out.
If your little editor / mini-IDE craps out your machine, it is poorly written. Noticeable garbage collection will only be triggered if your Old Gen memory space is too full, which means you're maintaining references in memory which you should not (circular references are fun-- in someone else' code). Also possible is that it's simply not updating the UI while running a compile script, which is definitely bad programming. Blaming Java for that is idiotic.
Disclaimer: I write high-performance Java applications using Spring. Also maintaining a pile of spaghetti that has grown over the past ten years, that still performs adequately.
Java browser applet will go surely.
How often do you see Java browser applets used anyway? Not that much, because they never really took off in the first place (despite being by far the most hyped aspect of Java when it first came out in the mid-90s).
Yeah, you do see them used sometimes for banking applications, custom internal-use corporate tools and the like, but for general use Java Applets were massively outnumbered by Flash apps.
In fact, I'd say that Flash on web pages ended up almost entirely fulfilling the general-purpose embedded code role that Java Applets were originally meant- but failed- to fill.
The problem was that Java was just too heavyweight and slow for computers of the time, whereas Flash was more lightweight- having started out as little more than an interactive animation creator- its increasing capabilities better matching slowly-improving computer power.
I wouldn't say that Flash stole that market from Java, because the latter had already had a run at it (during the mid-to-late 90s) and failed to take off by the time that Flash started growing up around the turn of the millennium.
Obviously it's in decline now, but Flash had at least ten- and probably closer to fifteen- years at the top, whereas Java Applets never took off in the first place.
"Slashdot - News and Chat Sites Deviant". (Click "homepage" link above for details).
Most of what you're complaining about is in the standard library, not the core language. The standard library is semi-open, you can alter the code, rip out what you don't want. Only the core language is Java, the rest is just a programming aid.
As for what COBOL has, Admiral Hopper was running software on a non-networked sequential architecture. This is rather different from operating in a multicore SMP-architectured server farm. There is nothing complicated about parallelism, but naivety and self-blinding are two great ways to make every mistake in the book - and then some.
It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
That is dead to this crowd. 1/2 of them were probably in diapers in 2002!
Really? My impression is that Slashdot is mostly geezers.
Being geezers and wearing diapers are not mutually exclusive.
"Convictions are more dangerous enemies of truth than lies."
Old languages never die, they just stop being hyped.
"Convictions are more dangerous enemies of truth than lies."
I still continue to see Java applets being widely used in tasks that require trusted signatures — Say, filling in the tax declarations in my country, or submitting the grades for my students. For both actions, we must use a x.509 client certificate, and for both actions, quite different entities do not trust client-side Javascript validation, Flash code, or anything like that — Only Java applets.
Which quite sucks, right, but anyway there'sa point to them.
Yes, the hole was dug 25 years ago, the grave stone ordered 23 years ago, the undertaker paid 20 years ago. But the hole has got filled with leaves, which had a lot of time to be composted into new ground. The undertaker died two years ago. The grave stone shows signes of decay. And COBOL is happily breathing.