Java documentary revisits the near-collapse behind a dominant runtime
The Java Story, a new Cult.Repo film, traces how Sun’s failed set-top-box effort became an enterprise programming mainstay.
By Renata Fuchs · Policy Reporter
· 4 min read
A new documentary released Friday on YouTube, The Java Story, revisits how Sun Microsystems nearly shelved the language that later became one of enterprise software’s default platforms. The film’s most concrete revelation is operational rather than mythic: Java’s runtime was crashing so badly before its 1995 SunWorld debut that engineer Tim Lindholm rewrote the threading package three days before then-CEO Scott McNealy demonstrated it on stage.
Java’s current position makes the origin story useful industry context. The language remains near the top of the TIOBE programming language index and is still widely used in large enterprise systems. In 1994, according to Lindholm, Sun was close to abandoning the project after its first target market collapsed.
The documentary was produced by Cult.Repo, the media company formed after Emma Tracey bought back the production operation behind earlier programming documentaries on C++, Python and React. Those earlier films were funded by Honeypot.io, the tech jobs site acquired in 2019 by XING, which later rebranded as New Work SE. The Java Story is Cult.Repo’s first release under the new company.
From set-top boxes to the web
Java began as Oak, a language and runtime created by James Gosling inside FirstPerson, an experimental Sun group pursuing software for devices outside the workstation and PC markets. FirstPerson’s main commercial target was Time Warner’s interactive video-on-demand project for television set-top boxes.
Sun lost that contract to Silicon Graphics, a late bidder and direct rival. The Time Warner effort later struggled and was shut down in 1997, but the immediate result at Sun was severe: most of FirstPerson was laid off, leaving 12 engineers on Oak, including Gosling and project manager Kim Polese. Lindholm, who had joined only a month earlier after work at Argonne National Laboratory, Xerox PARC and Sun, told The Register he was “one of the last people hired before the whole thing fell apart.”
The surviving team’s shift to the web came after one engineer experimented with Mosaic, the early browser. The group built WebRunner, a Mosaic-like browser on Oak that could run animations. That work became the precursor to Java applets. Oak was renamed Java in early 1995, reportedly as a reference to the team’s coffee habit.
The three-day fix
Lindholm and Frank Yellin, a Lisp specialist who also joined Sun around that period, were assigned to turn Gosling’s prototype into a production-grade implementation. They later co-authored the original Java Virtual Machine specification.
Threading was the major failure point. Lindholm said there were no libraries to rely on, and he had limited experience with the model. Shortly before SunWorld, he concluded the runtime’s threading design was broken because interrupts could arrive while a SPARC processor was in the middle of executing an instruction, leaving the system unable to restore state. His fix was to allow interrupts only at specific points. He rewrote the threads package three days before the conference, then watched McNealy’s demo from the audience expecting the worst. The demo held.
Early openness and Microsoft pressure
The film also covers Sun’s early, informal distribution of Java source code. Sun made the binary runtime freely downloadable and gave source code to people who asked for it, according to Lindholm. Thousands did. The project was not formally open source at that stage, and Sun did not release Java as open source until years later.
Java applets gained only limited traction on the web, while ColdFusion and Netscape’s JavaScript carried much of the early web programming load. Java’s larger commercial role emerged on back-end servers, where its cross-platform runtime threatened Microsoft’s Windows strategy. Microsoft licensed Java for Windows in 1996, then added Windows-specific APIs and omitted support for some Java APIs. Sun alleged those changes were meant to weaken Java’s portability. The dispute ended in settlements totaling nearly $2 billion paid by Microsoft to Sun.
The documentary follows Java through J2EE, Java EE 5, Spring, Sun’s decline, Oracle’s acquisition of Sun and the growth of JVM languages after OpenJDK. Lindholm later left Sun for Google, where he worked for about 20 years before retiring earlier this year.
This story draws on original reporting from The Register.