How a broken elevator led to one of the most loved programming languages available today
What started as a side project on one developer's laptop has become one of today's most successful open source projectsBy Jimmy Pezzone 28 comments
The big picture: It's not uncommon for programmers to build and reuse one-off solutions to meet specific needs or overcome never-before-seen challenges. However, having that solution stay relevant, evolve, and flourish after 17 years is pretty uncommon. The Rust programming language has done just that, growing from one man's side project to one of today's most heavily supported open-source projects.
Seventeen years ago, Mozilla developer Graydon Hoare returned from work to find his building's elevator out of order. Forced to climb 21 flights of stairs, he became increasingly annoyed that a software malfunction caused his unplanned cardio session.
Hoare went on to pour these frustrations into a fast, flexible language project aimed at minimizing memory errors and preventing issues such as his elevator breaking down. The Rust programming language has since become a heavily supported open-source project for programmers ranging from small, solo projects to massive applications developed by technology giants like Microsoft and Amazon.
Programming languages such as C and C++ come with a tradeoff. They provide the flexibility needed to program functions required for an application's successful execution but, in turn, require developers to manage memory transactions carefully. Failure to account for these memory transactions can introduce crashing and instability within the application.
To ease the burdens of memory management, languages like Java introduced the concept of garbage collectors. These collectors are designed to clean up system memory periodically, minimizing the risk of memory errors. However, this comes at the expense of higher overall memory utilization and more resource draw to keep the collectors running.
Hoare attempted to create an effective and efficient programming language to bridge the gap between these legacy memory management approaches. While it requires developers to adhere to somewhat rigid coding rules, the language manages memory on behalf of the developer, ensuring any developed code is memory-safe.
By 2013 the language's supporters had refined Rust's memory management system to the point that it no longer required a garbage collector function. The language continued to mature and gain support from developers worldwide, prompting Rust's first official stable release in May 2015.
In 2022, the size of the Rust community had effectively tripled to more than three million users and was featured on the National Security Agency's (NSA) recommended list of memory-safe languages. This ranking put Rust in the company of other well-established household names such as Java, C#, and Ruby.
Rust's use in the automotive and aerospace industries and by IT companies, including Microsoft, Amazon, and Dropbox, continues to increase daily, decreasing overall reliance on legacy C and C++ development.