Great Canadian Builders

James Gosling

The prairie programmer whose quiet revolution made software universal

In my heart of hearts, I'm an engineer, and what makes me happy is building something that works and having someone use it. That's cool.

Written by: 

Before James Gosling, software development was a wild west of specialized development for every OS. The prairie programmer, however, saw an opportunity to build a Babel Fish with Java, creating a universal translator that let the same code speak to any platform.

Born in Calgary in 1955 to Joyce Morrison and Dave Gosling, James Arthur Gosling displayed an early fascination with systems that connected across boundaries. While still at William Aberhart High School, he wrote software to analyze data from the ISIS 2 satellite for the University of Calgary physics department. 

After doing an undergraduate degree in science at the University of Calgary, Gosling went to Carnegie Mellon, pursuing his PhD in computer science. There, Gosling created numerous innovations including Gosling Emacs (Gosmacs) and a multi-processor version of Unix. Already, the young Canadian was solving the fundamental challenge that would define his career: how do you make something work everywhere, for everyone?

In 1984, Gosling joined Sun Microsystems, where he spent 26 years building the foundation of modern computing. In 1991, he and colleagues Mike Sheridan and Patrick Naughton launched "The Green Project," which was designed to create a new programming language that would replace the widely used C++. The language was renamed Java and became the most widely used programming language in the world. At a time when the internet was in its nascent stages, Java offered web developers their first tool for creating dynamic, interactive content that worked on any device. While originally designed for consumer electronics, Java found its true calling powering the web revolution of the late 1990s.

Gosling's approach to innovation reflected deep principles about simplicity and collaboration. "I think in any kind of design, you must drive for simplicity all the time," he explained. "If you don't, complexity will nail you. Dealing with complexity is hard enough."

His philosophy extended beyond technical elegance to community building. Gosling became "a proponent of community-driven development, recognizing that the diverse perspectives and experiences within the Java ecosystem are essential for guiding the language's evolution." This beautifully Canadian worldview on the value of diversity and community was embodied in Java. 

"The goal is not to be cutting-edge; the goal is to solve problems effectively," Gosling said. When Oracle acquired Sun in 2010, he left rather than compromise these principles, citing ethical challenges and declining Oracle's request to make him the public face of Java by saying he was "the wrong Myers-Briggs quadrant for that."

Java embodied Gosling's core innovation principle: "write once, run anywhere." The Java Virtual Machine allowed code to transcend hardware boundaries, creating true software portability. As he explained, the concept emerged from his early work when "he saw that architecture-neutral execution for widely distributed programs could be achieved by implementing a similar philosophy: always program for the same virtual machine."

Java made sophisticated programming accessible regardless of your hardware, your budget, or your platform. It became the foundation for enterprise applications, mobile devices, scientific studies, and computer science education worldwide.

In 2007, he was made an Officer of the Order of Canada, the nation's second highest civilian honor. He continued to push the frontiers of software at major firms including Google and AWS until retiring in 2024.

James Gosling built a virtual machine on top of which the whole world continued to build. In doing so he embodies the distinctly Canadian approach to innovation.