Erik Engheim
2 min readAug 6, 2022

--

We are talking general purpose programming languages here and not a specialist langauge such as SQL. So answering "what" is hard as such languages have very broad application.

It is much easier to point out areas where a language is not well suited. For instance I don't think either Go or Rust are well suited for scientific programming, data science or machine learning. I think a language like Julia, R or Python would fit better in this area.

But if you are building a game engine, database, large enterprise system or HTML rendering engine then you would want some kind of systems programming language which is where Rust and Go would fit in better.

My point is that you can start writing usable software much sooner with Go than with Rust. The time it takes to get productive with a language can differ a lot. I have seen many account of Rust developers who love the language but who still admit that it takes substantial time to be good at using it. Many who know both Go and Rust will remark that it is quicker to get stuff up and running with Go.

That is why I call Rust a specialist language. Go will often be the choice which gives you result faster, but Go cannot solve all problems. In some cases not being tied down by a garbage collector is a requirement. In those cases Rust will be a better choice. But don't take this as an absolute. Ultimatley it is the skills of the developer which matters. Doesn't matter if Go is the better option in a project when developers who are on that project are more skilled programming in Rust and are more happy and productive using Rust.

--

--

Erik Engheim
Erik Engheim

Written by Erik Engheim

Geek dad, living in Oslo, Norway with passion for UX, Julia programming, science, teaching, reading and writing.

Responses (1)