Listen to this story
|
Developers love Rust, and that’s no secret. However, the love for this language goes beyond developers, as it seems that tech giants such as Apple, Google, Microsoft and others also love this fast and secure language. Their love for Rust is so much that they’re even prepared to ditch their internal languages, which they spent millions of dollars creating.
Due to its host of benefits, Rust is seeing adoption across the tech stacks of big companies. Google, Apple, Microsoft, Meta, and more have all adopted Rust in some way or form. This new, much-loved programming language is filling a very important niche for companies with large, old code-bases: that of a modern low-level programming language.
The favourite child
Rust has consistently placed in the top 5 most loved programming languages in the world, according to Stack Overflow’s annual developer surveys. In the 2020 survey, 86.1% of the respondents who used the programming language said that they wished to continue using it. Delving deeper into Rust’s capabilities, there are a few common reasons that developers love using this software.
Firstly, the feature set is a huge draw for developers coming from other programming languages. Concurrent programming is implemented effectively in Rust, allowing for programmers to write efficient code that can run in parallel. In addition to this, Rust is also extremely lightweight and fast, with benchmarks putting it on par with C/C++ in terms of speed.
The language is famous for having been developed with the user experience in mind, leading to it having select features which might be considered ‘boring’ but are must-haves. Features like generics, algebraic type, FFI interoperability with existing code, a robust dependency management tool, and procedural macros make working with Rust a pleasure.
While these features are all nice to have, Rust’s biggest draw for programmers and companies alike is memory safety. The language has a powerful ownership system that allocates memory methodically. This allows developers to write extremely safe code that can be deployed on low-level systems directly. Rust’s memory policy is so stringent that it can get away without the need for a run-time garbage collector: a rarity in modern programming languages.
Memory safety isn’t the only thing Rust is good at. It is also type safe, encourages zero-cost abstractions, ahead-of-time compiled, runs with a low memory footprint, and can even be run on bare-metal hardware. It is also designed to bring together the advantages of many different programming languages. Peter Varo, a software engineer, says,
“Rust found a sweet spot: it is just as low-level as C or C++ with all the advantages of these (e.g. control, size, speed, etc.) At the same time, it is as high-level as Haskell with an amazing amount of functional heritage. It is still imperative, so quite accessible to most people, and it is just as flexible as Python”
Bringing together these advantages isn’t enough. The language has one of the most vocal communities in the developer ecosystem, which also extends to a large amount of tooling and frameworks built for Rust. All these advantages have resulted in a huge swathe of adoption by big techs.
Rust is better than Go, Swift, C#
There is a long list of companies which have adopted Rust for use in both their internal tools and external offerings. Dropbox uses this programming language for some mission-critical parts of their offerings due to its security and multi-threading capabilities. Google uses Rust to program for Android, and has even open-sourced a comprehensive Rust course.
Microsoft is a big proponent of Rust, using it to reduce the number of memory safety issues in Windows. However, the biggest proponent of Rust is arguably Meta. Not only is the company part of the Rust foundation, it uses Rust heavily in its products and services.
The company has also expressed its intention to commit to Rust long-term and welcome early adopters. Apple also uses Rust in many of its projects, including robotics, AR/VR engineering, cloud engineering and video engineering.
The question arises: why are these big techs turning to Rust after pouring resources into developing their own programming languages? For example, Go, a high-level programming language created and propagated by Google, is used widely in their products. Similarly, Swift, developed by Apple, is also used to build apps for iOS, MacOS, and more. C#, developed by Microsoft is also pushed internally, but the commonality between all of these companies is that they find a need for Rust despite having their own languages.
The main reason is the low-level programming niche that Rust excels in. Many have called Rust the first new systems language in a long time, following directly in the footsteps of C but with modern features. Moreover, the practice of programming with Rust also makes developers better in other languages due to the amount of best practices Rust makes them inculcate into their workflows.
Put together, Rust’s much-loved nature, along with its memory safety and feature set caused its adoption. Its unique low-level programming chops, low memory requirements, and systems language capabilities not only makes it suited for current applications, but also for the future of computing.