How Brendan Eich Shaped the Technical Direction of Firefox
Brendan Eich, the creator of JavaScript and co-founder of the Mozilla project, served as Mozilla’s Chief Technology Officer for nearly a decade before briefly becoming CEO in 2014. During his tenure, Eich was the primary architect of the Firefox web browser's technical evolution. This article explores how he guided Firefox from an experimental spin-off into a major industry competitor by championing a lightweight browser architecture, revolutionizing JavaScript performance, enforcing open web standards over proprietary plugins, and initiating the development of the Rust programming language to secure the browser's future.
Shifting to a Lightweight Architecture
In the early 2000s, the Mozilla project was focused on the Mozilla Application Suite, a heavy software package that combined a web browser, email client, and HTML editor. Recognizing that the suite was becoming bloated and slow, Eich supported a small rebellion within the organization led by Dave Hyatt and Blake Ross.
They created an experimental, standalone browser originally named Phoenix, which later became Firefox. Eich used his technical leadership to pivot Mozilla’s engineering resources away from the bulky suite and toward this agile, standalone browser. He also championed the continued development of Gecko, the open-source layout engine that allowed Firefox to render web pages quickly and consistently across different operating systems.
Revolutionizing JavaScript Performance
Having invented JavaScript at Netscape in 1995, Eich naturally placed the language at the center of Firefox's technical strategy. He oversaw the development of SpiderMonkey, Firefox’s original JavaScript engine. For years, JavaScript was considered too slow for complex applications, a limitation Eich was determined to overcome.
In 2008, under Eich’s technical direction, Mozilla introduced TraceMonkey, the first Just-In-Time (JIT) compiler for JavaScript. This technology drastically increased the speed of web applications by compiling JavaScript into native machine code as it ran.
Later, Eich strongly backed the development of asm.js, a strict subset of JavaScript designed to allow computer software written in languages like C or C++ to run inside the Firefox browser at near-native speeds. This innovation proved that browsers could handle heavy tasks like 3D gaming without external add-ons, and it laid the direct technical foundation for WebAssembly, a modern web standard.
Eradicating Proprietary Plugins
During the mid-2000s, the web relied heavily on proprietary plugins like Adobe Flash, Microsoft Silverlight, and Java Applets for video, audio, and complex graphics. Eich viewed these closed systems as a threat to the open web and a major source of security vulnerabilities and browser crashes in Firefox.
To make plugins obsolete, Eich directed Mozilla’s engineering teams to build equivalent capabilities directly into the browser using open standards. Under his guidance, Firefox became a pioneer in adopting HTML5 video and audio tags. Furthermore, Eich championed the creation of WebGL, a standard that brought hardware-accelerated 3D graphics directly to the browser without needing a plugin. He also initiated projects like PDF.js, which allowed Firefox to render PDF documents natively using only HTML5 and JavaScript.
Addressing Browser Security with Rust and Servo
Perhaps Eich’s most forward-thinking technical contribution was recognizing the limitations of C++, the programming language used to build Firefox. While C++ was fast, it was prone to memory management errors, which were the root cause of most browser crashes and security exploits.
In 2006, Mozilla engineer Graydon Hoare began working on a new programming language called Rust, designed to be as fast as C++ but with built-in memory safety. Eich recognized the potential of Rust early on and officially sponsored the project within Mozilla.
Alongside Rust, Eich greenlit the development of Servo, an experimental browser engine built from the ground up to take advantage of modern multi-core processors. Although Eich left Mozilla in 2014, his investment in Rust and Servo directly enabled the 2017 release of "Firefox Quantum," a massive overhaul that integrated Rust components into Gecko, making Firefox significantly faster and more secure.