Welcome!

Java Authors: Pat Romanski, Adrian Bridgwater, Michael Thompson, Elizabeth White, Rachel A. Dines

Related Topics: Java

Java: Article

Ten Brilliant Years

"2006 – the most significant year in Java's history"

The year 2006 marked the tenth anniversary of the Java language and for me is the most significant in its history.

The most important event was the announcement that a GPL version of Java SE will be available sometime in the first half of 2007. If nothing else, all the back and forth "will they, won't they" discussions over open source have been a distraction for the Java community. They also provided a source of FUD to those who don't believe in Java, enabling them to describe the community as divided, fragmented, and imploding under its own mass of internal fighting. I don't believe for a second that any of this was actually occurring; however, some customers I spoke with did have this perception of divided community. Far from it, the Java community is an incredibly healthy place where the pace of innovation and ability to adapt occurs faster than in any other technology space. The ingredients for this are the mixture of mom and pop teams who create elegant and nimble frameworks that become overnight de facto ways to do validation, navigation, or persistence, while working hand in hand with large organizations whose stock value is based on reliability, serviceability, and portability of the language. Every JavaOne question and answer session I've attended over the years invariably had someone in the audience standing up and berating an onstage developer for a particular bug that hadn't been fixed for the last n years. The answer was always one of prioritization and that the development team had more line items than they could accomplish with the available resources. For the questioner it's an answer akin to, "Your top problem didn't make our top 500." Now the reply can be, "Would you like to be a committer? Would you like to help us do some testing with our release so we can verify your patch?" It's welcoming, it's inclusive, it's how to move things forward, and for me it's the fuel for the feedback loop that makes open source community projects become better at a rate that equals the number of smart, willing, and motivated users.

The second most significant event for me in 2006 was the announcement of the Google Widget Toolkit (GWT) (http://code.google.com/webtoolkit/). It's a brilliant piece of work designed by some very talented people at Google. From a solution point of view, GWT allows developers to write Java code that can be deployed in a browser and achieve the kind of dynamic Web 2.0 functionality that all the Web heads get excited about. Under the covers it does this by compiling the Java to be deployed as a mixture of HTML and JavaScript. What's exciting about GWT isn't just that it's a very cool piece of technology, but also the concept behind how it is using the Java language. Java's founding mantra is "write once, run anywhere." For most of us this translates into "compile to bytecodes and run on a JVM that abstracts the operating system." This doesn't always meet the scenario, however, as evidenced by something like Java applets that are no longer relevant to all but a few die-hard Web page developers. In their place the "cool effects" brigade resort to stuff like AJAX, Flash, and other technology that, while optimized for browser deployment, are certainly not optimized for development. Watching an AJAX developer is rather like watching a C coder of yore struggle with primitive tools and obtuse syntax. Java applets failed because they treated the browser as a delivery mechanism for .class files to the desktop that needed to have a compatible JRE. What if instead you regarded the browser as a smarter beast and used its APIs as a virtual machine you could run within? This is the magic of GWT: it takes the beauty of the Java language with its plethora of high-level development tools and programming suites, then compiles this to HTML and JavaScript. Java has now become a fourth-generation language with the browser being the runtime.

The third most significant event for me in 2006 goes jointly to Eclipse and NetBeans.

Eclipse celebrated its fifth birthday as an open source project, and it's one that has gone from strength to strength each year. I've been fortunate to have been involved with Eclipse from the outset and the thing that pleases me most each year at their annual EclipseCon conference is how the buzz and excitement moves and changes around. One year Web tools are the hot topic, the next year it's the rich client platform. Not only does the technology's focus shift, but the people do too, as new companies and new stars shape and drive its future.

NetBeans is often seen by some as a rival to Eclipse and vice versa, viewpoints I used to hold myself. I regard them differently now, with NetBeans holding the battle standard for Java, giving it a sweet-tasting all important out-of-the-box first kiss experience, a platform that keeps pace with the latest JSRs and language features so they are showcased in IDE samples and tooling rather than PDF specifications; a tool is to Java what VisualStudio is to the Microsoft runtimes. For Java to remain relevant and grow in the next 10 years, we have to look at those companies in whose interests it is to see us fail, work out what makes them successful, and compete with them on their own fronts. The key battles will be fought in ease of use, growth and adoption by customers who feel confident and secure in its future, and adaptability to new scenarios. Java's tenth year laid down some very firm roots to enable it to compete in all of these spaces, and I hope that the next 10 bear fruit and see the language go from strength to strength.

More Stories By Joe Winchester

Joe Winchester, Editor-in-Chief of Java Developer's Journal, was formerly JDJ's longtime Desktop Technologies Editor and is a software developer working on development tools for IBM in Hursley, UK.

Comments (1) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


Most Recent Comments
101010 12/14/06 01:16:20 PM EST

"2006 – the most significant year in Java's history"

Hear, hear!