Rust vs Go – Which Is More Popular?

Go and Rust are two of the hottest compiled programming languages. I develop in Go full-time and love it, and I’m learning more about Rust recently – its an exciting language. Let’s explore some differences between the two and look at which is growing faster in the popularity polls.

Popularity Stats

According to the StackOverflow 2019 surveys, Go is ahead in the polls when it comes to programming and markup languages.

However, compare that to the previous year:

Rust wasn’t even on the chart just one year before.

Go did grow by an impressive 1.6%, but it would seem Rust might be growing even faster as a percentage over time.

Some more supporting evidence for the hypothesis that Rust is growing faster is another poll – the most loved languages survey:

Rust is a clear leader here, but Go isn’t far behind. There is a lot of hype around Rust right now, for good reason.

Let’s take a look at the most dreaded languages:

No one dreads Rust. I suspect that a contributing factor is that Rust isn’t used much yet. That said, the data indicates that Rust is currently more loved and less dreaded. Hard to argue with that.

Go actually makes the most dreaded chart, but close to the bottom. I suspect most of the hate is salty Java devs that have been forced to move to Go and give up their precious objects and generics.

So Which Is Better?

I don’t think one is strictly better than the other, and a lot comes down to preference. Let’s examine the claims made by the maintainers:

Go is an open-source programming language that makes it easy to build simple, reliable, and efficient software.

golang.org

A language empowering everyone to build reliable and efficient software.

rust-lang.org

Based on their official headlines it would seem they are in direct competition. The key difference is that Go also aims to be simple. Rust makes no such claim.

Here are my current fast and loose opinions on the strengths and weaknesses of each:

Go Rust
Speed ✅✅ ✅✅✅
Memory Safe ✅✅✅ ✅✅✅
Simple ✅✅✅
Standard Library ✅✅✅ ✅✅
Memory Optimized ✅✅ ✅✅✅
Support/Community ✅✅
Concurrency (Simplicity) ✅✅✅
Lane’s Sloppy Rust vs Go Comparison

I think Go will likely be the go-to for performant backend systems. Go’s rich standard library and easy concurrency makes standing up HTTP servers or other networked services simple and easy. Go is also faster, safer, and less memory intensive than most of the legacy competition. For example, Go is less memory intensive than Java and C#, faster than Python and Ruby, safer than C++.

Rust seems like it may steal some of the spotlights from Go in deeper backend processes that need to get every ounce of efficiency that they can from the hardware. In microservices and polyglot architectures, it makes sense to mix and match technologies behind the scenes a bit.

Even more important than web programming for Rust, I see it being used for more systems-level applications. Rust could easily steal some business from C and C++ for uses in embedded devices, command-line utilities, and so forth.

Check out some of my other articles here:
Running Go in the Browser With Web Assembly (WASM)
Qvault Classroom Launches Golang Crash Course
Sorting in Go – Don’t Reinvent This Wheel

Thanks For Reading

Follow us on Twitter @q_vault if you have any questions or comments

Take game-like coding courses on Qvault Classroom

Subscribe to our Newsletter for more educational articles

2 thoughts on “Rust vs Go – Which Is More Popular?”

  1. First off, big love to Go and Rust, great languages and topics for articles and discussions. I thank you for writing about it!
    I’m not 100% in agreement with you on everything, memory safety to be one, I would argue that rust has a lot more memory safety than does Go.
    But – for the bit thing – Go and Rust don’t really compete in the same groups. First of, Go is not a systems programming language, and cannot do that.
    Rust is not easy to get started with, and going might be tough for new developers for something that is trivial in Go.

    Go is the microservice dream. It builds fast and and you are out in production in no time at all.
    But Rust is able to perform like few other, it has the performance of other systems programming languages, but with built in safety, that relieves the developers from entire phases of the development cycle debugging and finding memory leaks.

    This is also a great read on the topic of Go vs Rust (and why it’s they don’t compare very well): https://blog.discord.com/why-discord-is-switching-from-go-to-rust-a190bbca2b1f

    Again, great read, I really appreciate it =)

%d bloggers like this: