Gosling and Hamilton discuss Java licenses to ease community development of the Java language

James Gosling and Graham Hamiliton introduced modifications to the Java platform’s licensing structure and terms on Wednesday. The main change is the introduction of the JRL, Java Research License which is geared to supporting contributions to the Java language from the community. It’s still not open source as Sun is still in control, but it’s opening the door for some flexibility at least.

I personally don’t think that Sun should release Java as open source – to do so would introduce the possibility of the language branching in many different directions. Although initially this may seem like a good idea to encourage innovation, at the same time you would end up with a platform with many incompatibilities, and the great benefits of Java (write once, run anywhere) would be gone.

Is Java the new Cobol?

Tim Bray, co-inventor of XML, recently listed everything in the industry that he considers boring or not boring in his blog.

His point being that good news is often boring; it’s not exciting as bad news, and good news is often about things that are safe and predictable.

Java, in his opinion, has become boring. It’s reached a stage in it’s development where it is now accepted in many different application development areas (financial, telecoms, healthcare, etc) as a good, stable, reliable platform on which to build applications – Java has become the new Cobol.

This is an interesting perspective, but one that is great for everyone currently working with Java – it is truly mainstream and acceptable, and is no longer considered a risk. Companies are building multimillion dollar systems using Java, and it is accepted as a viable platform for building solutions.

All good things usually come to an end however. I don’t see that end as being .NET – Java has too much industry momentum to be overtaken or replaced by .NET. I see the main changes coming as a shift in development technology, possibly with AOP. Just as assembly was superceeded by high level languages, I think OO languages such as Java are going to not be replaced, but eveolve into more AOP like development languages. Java of course already has interest in these areas with Spring AOP, JBoss AOP, and AspectJ.