This week we have two extra podcast episodes for you, sponsored by Oracle, which is celebrating 25 years since the creation of the Java programming language. This is part one. You can find part two here.
In the tech world, 25 years is an eternity, and in that time, Java has gone from humble beginnings to global, no, interplanetary ubiquity. In the beginning, the nascent Java language project, codenamed Project Green and later Oak, was designed to create interactive televisions. Think of the kind of overlays and interactivity that you see with most flat screen TVs today. Back in 1995, this was brand new territory. There was no hardware or operating system standard for a computing platform within a TV, so the team had to figure out how to create a programming language that could run on virtually anything. Code it once and run it everywhere through a virtual machine.
Interactive TV was way ahead of its time in the early 90s, but Java found a strong foothold for its cross-platform ideal through web applets and WebStart programs that downloaded and ran an application entirely from a web address. Today it provides a lot of the processing muscle for server-side web apps and cloud-based SaaS applications. Here at Stack Overflow, the Java tag has remained one of the most popular over the years, with 1.7 million total questions on the site.
We spoke with Georges Saab, Vice President of Software Development at Oracle’s Java Platform Group, about where the language came from and what Java is doing to stay relevant in the age of fast responses and big data sets. Saab’s work on Java today is a return for him; he worked on AWT and Swing! from 1996-1999. Being the hippest cat on the team at the time, he even gave Swing! its name:
“We had a bunch of ideas of what to call it, and they were all pretty horrible. We were brainstorming—the thing that was great about Java was it was just a great name, and it wasn’t an acronym. At the time, I was living in the Mission District in San Francisco, and the team said, ‘Oh, Georges, you know what's cool, what’s hip. You know what's going on.’
“‘Well, lots of people are doing swing dancing,’ I said.
“‘That's it! Swing! It's great, and what I like best is it's not an acronym.’
“‘And I said, ‘Actually: Sun's Windowing Interface, Next Generation.’ Immediately, it lost all coolness.”
So let’s take a look at some of the factors that went into Java’s early formation and success and the features on the horizon that will continue to make Java a valuable part of the development landscape.
In the beginning...
Java came into the technology world when it was dominated by the pairing of Intel chips and Windows operating systems. Before developing software, you had to pick an OS to develop for, and at this period in time, the biggest market was Windows.
If your software was a hit, then your customers would want it ported to the other platforms. That meant some software companies would have almost the same number of developers just porting software to other platforms as they did working on the software itself. “It was super expensive,” said Saab. “It wasn't much fun. You needed people who are really good to do that, but really good people were not inspired by that kind of work.”
When Sun announced Java in 1995, they did so with Marc Andreessen—then cofounder and “rockstar” at Netscape—on stage with them. Andreessen had agreed to integrate Java into the Navigator browser, a major coup for a brand new language. At the time, Navigator was the clear leader in the browser market, taking over 75% of the share. Even before this announcement at the 1995 SunWorld conference, the volume of downloads of the language became so great that it overwhelmed the T1 line attached to the java.sun.com web server.
“Making a new language in the mid-nineties, where somehow you're going to try to get people to adopt this new thing, that's crazy” said Saab. “It takes forever for a new language to get adopted. Part of the reason why, is because people know that there's a little learning curve, but there's also a tools curve and there's a libraries curve.” Thanks to the deal with Netscape, however, and being the right solution at the right moment in time, it became incredibly popular. It helped set a lot of the paradigms for the web that we now take for granted: in-page interactivity, software as a service through WebStart applications, and cross-platform uniformity.
So how did it go from applets embedded in HTML pages to being the enterprise programming language for server-side applications? For the same reason it made a dent in the desktop market; you could write your application once and have it run on any server OS that you used. As the web became more distributed, platform independence became more important.
Thanks for reading, and we hope you enjoy the podcast. Today's episode covers the past and present of Java. Tomorrow, we'll air episode two, which takes us from the present and looks towards the future. If you want to learn more, Oracle has put together a wealth of resources to celebrate Java's 25 anniversary.
A written transcript of this episode is available here.