Programming language Rust's adoption problem: Developers reveal why more aren't using it

The Rust project wants more developers to use the programming language but admits it has a challenge with adoption.

Programming languages: Python is now more popular than Java

Rust has been voted the "most-loved" programming language by developers on Stack Overflow for four years in a row. But the Rust project now admits it has an adoption problem among developers and organizations.  

Rust's adoption issue surfaced in January's Stack Overflow's 2019 survey, which revealed that despite developers' positive feelings toward Rust, 97% of them hadn't actually used it.   

Rust maintainers have now explored the adoption challenges in their latest annual survey of nearly 4,000 developers across the world. Of those who use Rust full-time, most developers report working in back-end web applications, distributed systems, and embedded systems. 

SEE: How to build a successful developer career (free PDF)

Asked why developers have stopped using Rust, the most common response is that the respondent's company doesn't use it, suggesting an adoption issue. 

Other common reasons are the learning curve, a lack of necessary libraries, and a lack of integrated development environment (IDE) support.  

The top issues that respondents say the Rust project could do to improve adoption of the language are better training and documentation, followed by better libraries, IDE integration, and improved compile times. 

"Most indicated that Rust maturity – such as more libraries and complete learning resources and more mature production capabilities – would make Rust more appealing," the project noted. 

The three most popular IDEs among developers who use Rust are Microsoft's Visual Studio Code (VS Code), followed by Vim and JetBrains' IntelliJ.

Just over half of developers who use Rust are building on Linux systems, while just under a quarter develop on Windows, and the same proportion develop on macOS. 

The Rust project also has explored learning-curve challenges among developers. While 37% of Rust users feel productive within a month of using it, 21% say they do not yet feel productive.    

"The results show the overriding problem hindering use of Rust is adoption," the Rust project said. "The learning curve continues to be a challenge – we appear to most need to improve our follow-through for intermediate users – but so are libraries and tooling."

However, one positive is that Rust daily use rose slightly from 25% last year to 27.63%, while daily or weekly use is up from 66.4% last year to 68.5%. 

Another positive is that this year 82.8% of respondents say they use Rust compared with 75% in the 2018 survey. And this year, 7.1% said they don't currently use Rust but have in the past, versus 8% in that category last year.  

Rust, which hails from Mozilla Research, has become popular with some developers, including those at Microsoft who are experimenting with Rust to reduce memory-related bugs in Windows components written in C and C++. 

SEE: Goodbye Python 2 programming language: This is the final Python 2.7 release

Mozilla used Rust for its Quantum rewrite of Firefox's browser engine, and AWS also last year decided to sponsor Rust's infrastructure after adopting it for parts of its infrastructure, such as performance-sensitive components within services like Lambda, EC2, and S3.

And Google has used Rust for components of Fuchsia, which some speculate could be the successor to Android. However, after Google assessed using Rust for Fuchsia, it decided not to support Rust for end-developers because none of its current end-developers uses it and it's not a widely used language. 

That was despite the members of the Fuchsia Platform Source Tree having had a "positive implementation experience using Rust". Google also barred Rust from use in the Fuchsia's Zircon microkernel, which is "using a restricted set of technologies that have established industry track records of being used in production operating systems".  

rustsurveyapr20.jpg

Developers provided a variety of reasons for never having used Rust.

Image: Rust Team

More on programming language Rust