Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise.
If this question can be reworded to fit the rules in the help center, please edit the question.

10 Answers
10

Yes. Oracle need to make money and if they can do this without 2 happening then it's in their interests to do so. It's not about Oracle "harming the community" or otherwise, it's whatever makes them more money. Sun gave it away because the more people that knew it, the more that would buy their products; the first hits always come free, it's how they get you...

Probably not. There's too many people who know Java as a language and people tend to be "sticky". I think it will push some people professionally away from it but if it begins to kill it then Oracle would surely back away from trying to directly monetise it. It will probably help C# as those sticky people will find it the easiest to move to.

Ah, I only thought technologywise, but you're right. So many people & jobs are java-related that it can't be killed quickly. Some day, something else will take over, but not this year or next.
–
cringeNov 7 '10 at 11:08

4

If you're going to use # of jobs available to judge whether a language is dead or not, you could make a strong argument that COBOL and MUMPS are both still among the most thriving.
–
InaimathiNov 7 '10 at 22:09

Good point. However, how many brand-new business apps are being written in them?
–
Michael KNov 8 '10 at 1:23

Java as a language will not be killed. Just look at Java for Android. As specific as that example are, Google has its own implementation for Java for Android. However, it will make it hard for Oracle to be the choosen way to go - especially for beginners if they see Oracle not giving them the best free tools.

Given that there are billions of dollars invested in Java based enterprise solutions and the multitude of languages that execute on the Java JVM (JRuby, Groovy, Jython and so on), the JVM is definitely not going away any time soon. Java the language is well established, and Google have leveraged that knowledge for their Android platform (which does not use a JVM).

What will almost certainly happen is that Oracle will seek to license Java in such a way that any applications that use it will have to pay them a fee (see MySQL for an example). OpenJDK (if I understand the licensing terms correctly) should be exempt from this and anyone wishing to avoid paying fees to Oracle will probably invest serious support for this project.

However, "Oracle Java" will probably be packaged within other Oracle offerings and various fees charged. They are a business after all. It's doubtful that Oracle will actually go forward with charging directly for JDK downloads because that would seriously harm Java in the long term. Note that Apple has moved away from supporting Java themselves (they have labelled it deprecated) which is probably a move to avoid paying Oracle fees rather than a lack of faith in the language. OpenJDK should step in to fill this gap for Mac based Java developers.

I'm curious what will come out of the fight Oracle vs Google in the future. I'm not sure if Dalvik really avoids the licensing, and I think Oracle will go to great length to get something out of the Android devices.
–
cringeNov 7 '10 at 13:44

I agree. There is a lot of money at stake in the Android market and Oracle will definitely want to take a slice of the pie. However, I think that Google will have gone to equally great lengths to ensure that their approach stands up to Oracles claims. Either way Java will remain.
–
Gary RoweNov 7 '10 at 20:04

It is my opinion that this is going to be an attempt by Oracle to extract a lot of money from IBM.

It is also my opinion that Oracle (as a corporation) does not "understand" open source, and the MySQL and JVM situations will reflect that. They're going to try to figure out some way of recovering the money spent/wasted in take-overs and those gyrations will unnecessarily piss off too many FOSS users and developers.

I guess Java will become like .net, i.e. controlled by one big company. Other big companies like IBM will probably pull back, because Oracle is not the nicest possible partner to work with. So in the long run, Java won't be dead, but also not as universally used as it is today.

Don't worry. GNU will create their own version of java. You can take a look at the GNU Classpath project.

GNU Classpath, Essential Libraries for Java, is a GNU project to create free core class libraries for use with virtual machines and compilers for the java programming language.

Development of GNU Classpath is always in progress. There have been various public 0.x releases, slowly working towards the first major 1.0 release. The current development source code is available via GNU's anonymous CVS server, and periodic public releases of the GNU Classpath tree are made available on ftp://ftp.gnu.org/gnu/classpath/ ...

I consider software applications one of the most important assets from which humanity can get extraordinary benefits. I also strongly believe that in order to fully achieve this, they must be innovating to the highest possible rate.

Software applications are built through things like programming languages, compilers and virtual machines. From this point I will generically refer to these things as Software Building Blocks (SBBs).

By being foundational to sofware applications, having the highest possible innovation rate on SBBs is key to achieve the same at the software application level.

Because of the stated above I will focus SBBs on innovation.

SBBs are influenced by four very important forces.

Open Source Communities, which are mainly driven by the desire of improving software.

Free Software Communities, which are mainly driven by the desire that software be entirely free.

Markets, which are driven by all sort of needs that lead them to consume things.

Business which are mainly driven by the desire of making money (while protect from competition).

In general, SBBs innovation must be driven by a balanced interaction between those forces.

In particular, I think that Open sourced SBBs should be able to go closed or viceversa driven by the balanced interaction named above.

Licensing models like BSD or Apache 2.0 allow the first.

The two kind of communities currently have an important influence and awareness and can increase it; they are also capable to answer back strongly to keep great code available if businesses decide to take it all and giving back nothing.

Markets are gradually starting to acquire software-related knowledge and to make more informed decisions. They will push the innovation by making final decisions when the other forces get stuck.

Businesses can provide a definitive support to key free software or open source initiatives or come up with a great and quick proposal when communities get stuck in improving things that clearly need to improve. The downside is their legally-supported need to protect from competition; this legal support comes in form of patents.

By tying patents to SBBs their owner will certainly get protected (at least for a while). But when this owner get stuck on improving those SBBs at the speed that the market requires it, no one is going to be able to provide a fully independent alternative without running a legal risk.

In the specific case of Java Platform this has happened more than once in recent times and the latest example is the Oracle lawsuit against Google.
For Google, Java ME was not good enough to satisfy the requirements imposed by mobile hardware limitations, the JCP wasn't going to improve it at the speed they needed it and the GPL license could scare mobile phone makers from getting in (something key for Google to has a chance to succeed on that market). That is why they decided to develop a VM on their own (called Dalvik VM) and license it under Apache 2.

At other hand, Oracle consider that by doing this, Google infringed its IP rights. Despite of hiding under several patents, in practical terms Oracle claiming establishes that the concept of VM is Oracles' IP. In other words (again in a practical sense), you can't create a VM from scratch which is capable of executing java bytecode without express permission from them!

This kind of things reduces the rate of innovation on SBBs !

However, as long as I firmly believe in this, I also recognize that by being originated in the human (and businesses) need of being protected from external threatens (things, other human beings, other businesses, etc.), patents are unlikely to easily go away from SBBs.

So in case that Google wins but its brand new java-alike platform is populated by patents, the problem will continue.

At the Microsoft side, even though they seem to be starting to get the point, their
technology still involves a lot of patents.

There is another option: the creation of (or support to), a set of SBBs without patents, under BSD or Apache licenses and with the sponsorship of a truly neutral party.

This sponsor could be Apache or an organization at inner United Nations, maybe at the same level of NATO or WTO. Having in mind the enormous impact that software apps have in mankind, it makes sense to me.