Rust developers at Google are twice as productive as C++ teams

Rust developers at Google are twice as productive as C++ teams

March 31, 2024 at 12:37PM

Google reports that Rust is twice as productive compared to C++ and has been effective in rewriting projects. Memory safety is seen as crucial for national security, leading to a shift in awareness. Microsoft and other organizations are also adopting Rust, citing its benefits over C/C++. Developers show confidence in Rust’s correctness and productivity.

From the meeting notes, we can extract several key takeaways:

1. Rust has been shown to be significantly more productive than C++ at Google, with developers being twice as productive using Rust compared to C++.

2. The shift in awareness across the software development ecosystem towards the challenges of using non-memory safe languages is being driven by increased attention to security vulnerabilities in large codebases, with Rust emerging as a solution to memory security bugs.

3. Google’s experience in migrating from Go or C++ to Rust has shown benefits such as reduced memory usage, decreased defect rate, and increased correctness.

4. The migration from C++ to Rust at Google has resulted in a decrease of more than 2x in the amount of effort required to build and maintain services written in Rust compared to C++.

5. Retraining developers from C++ to Rust at Google takes a similar amount of time as retraining from Java to Kotlin, with about a third of developers feeling as productive in their new language after two months, and around half feeling as productive after four months.

6. Rust code at Google is reported to be easier to review and instills an 85 percent confidence level in its correctness among developers, a significant number compared to other languages.

These takeaways reflect the increasing adoption and success of Rust as a productive and secure programming language, particularly in large codebases, and highlight its potential to replace C/C++ in software development at organizations.

Full Article