Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I've seen the news yesterday that Java 7 and Java 8 passed but the majority weren't very happy. Can anyone clarify what consequences does this have on Java and the community ? What licenses did Oracle change to be exact? A lot of people think that this might be the end of Java. Should I go ahead with learning Java or should I maybe move to .NET ? I don't have any preference as to one or the other, but I'm a bit concerned now with all this pressure surrounding the Java ecosystem. Since time is important for everyone and time is what I have less have these days I'd like some advices from the community here.

share|improve this question
1  
A lot of people are concerned also there is a thread on hackernews which I can't find atm. –  Stephen Dec 8 '10 at 9:51
    
Edit title to make into a question. –  adolf garlic Dec 8 '10 at 11:02
    
@adolf Why does the title have to be a question ? –  Stephen Dec 8 '10 at 11:06
1  
You may look at programmers.stackexchange.com/questions/6847/… and programmers.stackexchange.com/questions/2846/… before choosing between Java and .Net. –  Gulshan Dec 8 '10 at 11:09
    
@Gulshan I don't think that would help me but thanks. –  Stephen Dec 8 '10 at 11:10
show 2 more comments

5 Answers

up vote 22 down vote accepted

I seen the news yesterday that Java 7 and Java 8 passed but the majority weren't very happy. Can anyone clarify what consequences does this have on Java and the community?

The major consequence is that the JCP (which ratifies JSRs) is not a completely free and open place for the various stake holders in Java to agree on technical and licensing issues. Was this ever actually the case? YMMV

A secondary consequence is that Apache foundation will leave the JCP - so that's one part of the community who won't put their vote to Java technical standards (so the community is less well represented as a whole). Other independent academics etc have also left the JCP, so arguably its dominated by corporations now (which only represent part of the community).

An arguably larger concern is the Google vs Oracle lawsuit, but that's headed into mediation, so I'm optimistically hoping that the two companies will settle out of court and get mobile Java moving again.

What licences did Oracle change to be exact?

No license were changed by Oracle. Sun had a FOU (Field of Use) restriction on the TCK (Technical Compatibility Kit) which basically stopped a rival open source implementation of Java (Apache Harmony) from being allowed to run against the TCK and therefore call itself 'Java'. Oracle have simply chosen to continue that stance that Sun had (which many people are upset about since Oracle voted against that stance in the past).

A lot of people think that this might be the end of Java. Should I go ahead with learning Java or should I maybe move to .NET?

It's absolutely not the end of Java - 10,000,000 or so developers, an incredibly diverse and vibrant community, languages on the JVM, conferences sold out in matter of days, JUGs growing, open source frameworks that don't go through the JCP have massive market share etc etc.

And besides, there's no compelling alternative to Java yet and what ever that might be it's going to have to be easy enough for 9-10 million developers to easily transition, not too mention all of the enterprises out there (you're talking trillions of $ relying on Java). I'm sure someone's going to weigh in here ;p

My advice is to learn the technology stack that you're passionate about, both Java and .NET eco-systems are going to be around for a long time yet!

Hope that helps :)

share|improve this answer
    
I agree, I don't think Java will disappear overnight, but the lack of Apache and academic input in the JCP could damage any potential improvements –  Richard Dec 8 '10 at 18:06
    
Apache resigned from the Executive committee already, and are stepping down from any positions in the working groups. When the terms of the JCP agreement are complete they'll be gone from that as well. Bottom line no Apache, no academia. Just corporate lackeys. –  Berin Loritsch Dec 17 '10 at 0:25
    
This is indeed a sad turn for the Java community. However, it may not be all as bad as it seems. I estimate that a significant percentage of Java tools , frameworks and technologies are already used as a 'std' outside of the JCP (e.g. from log4j through to the Spring framework). I expect to see that continue. –  Martijn Verburg Dec 17 '10 at 8:17
add comment

Better one skill too many than one skill to few ;-)

share|improve this answer
    
Programmer of all languages, master of none? –  Christopher Mahan Dec 11 '10 at 23:02
1  
@Christopher, master programmer or master Java programmer? –  James Dec 11 '10 at 23:10
    
Sure, it's nice to be really, spiffingly good at something but it is also useful to be aware of other technologies. Quite often it will help you become better in your core skill. I don't think it is an either / or decision. –  paul Dec 13 '10 at 8:23
    
better to know a couple of languages, in my opinion. –  the0ther Dec 14 '10 at 18:02
add comment

I've seen the news yesterday that Java 7 and Java 8 passed but the majority weren't very happy. Can anyone clarify what consequences does this have on Java and the community ?

My guess here is as good as anybody else's. I also listened to Oracle keynotes to Devoxx conference (>3000 people, biggest Java conf in Europe) and to Jug leaders, and my opinion is that Java will be moved by Oracle in a model much closer to .NET that it was before.

There are good things in this as bad things, for sure it will be different.

Good things:

  1. Much clearer direction and vision. Sun was missing both
  2. Stronger and more aggressive marketing for Java in the enterprise
  3. More emphasis on better performance in real world scenarios (especially with Oracle db)

Bad things:

  1. Less "openess". Java will be driven by Oracle agenda and not by the comunity.
  2. More expensive. There'll be a "enterprise java" that won't be free.
  3. Less 3rd party Opensource. It's logical to expect for company like Google and Ibm to reduce their effort on Java open source projects, as they would directly help a competitor (Oracle).

What licenses did Oracle change to be exact?

It refused to give to ASF Harmony project (a clean room implementation of Java) a free version of TCK. Actually it didn't change anything from Sun's policy and ASF was complaining since 2007. Only that now there is no hope for a solution. At the moment project Harmony is quite useless, without TCK you're subject to Oracle lawsuits unless Oracle-Google will result in a complete discharge of Goole (unlikely). The current TCK license in OpenJdk has several limitations, for example you cannot use on embedded or mobile and you cannot implement a subset or superset of java features.

A lot of people think that this might be the end of Java. Should I go ahead with learning Java or should I maybe move to .NET ?

As I said before I think that it'll be a change, but in no way the end of Java. Also as Java will became more similar to .NET could be that it will be .NET to not be able to survive to a direct competition.

I don't have any preference as to one or the other, but I'm a bit concerned now with all this pressure surrounding the Java ecosystem. Since time is important for everyone and time is what I have less have these days I'd like some advices from the community here.

For my part, I'm keeping an eye on Scala, Ruby and Javascript (server side). I think the future will be one of these 3, but the present is still Java.

share|improve this answer
    
"For my part, I'm keeping an eye on Scala, Ruby and Javascript (server side). I think the future will be one of these 3, but the present is still Java." Here here! –  yzorg Dec 18 '10 at 6:28
add comment

no company or ecosystem is perfect... java is free-er than the .NET environment that's why more used, but not total free... don't bother too much with that in your position

and you should have a prefference (therefore go make one) or just get a job in whatever [pays better] and don't care

share|improve this answer
    
Well, I don't know enough about either one to prefer one over the other. –  Stephen Dec 8 '10 at 16:23
1  
go learn some. play with some quick tutorials –  Belun Dec 8 '10 at 16:30
add comment

The future is likely a higher level of abstraction/framework. Scala/Clojure on server and JS+markup client. The future on the server is highly parallel and implicitly typed (not the huge legacy painful frameworks from Java/.NET).

share|improve this answer
    
What a surprise, Oracle wants to make money on Java, and is willing to risk the future of the technology stack to do it. No mottos like "don't be evil" there. –  yzorg Dec 18 '10 at 6:39
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.