Go vs. Rust

I have been thinking about learning the Go and Rust programming languages, but I am not too sure what their purposes are. I've been meaning to build projects for my portfolio. I have considered using Python or Java. I would like to build a server application that can scale very well. For that reason, I am considering learning Go. But first, I should survey what other people think of Go and Rust.

Go is simple

Rust is complex

It would seem that Rust is considered more ‘beautiful’ and expressive while Go is boring and ‘regressive’. On the other hand, Rust is complex and at times hard to use while Go builds things fast and makes some tradeoffs in doing so. Rust was designed for systems programming, which is already hard to do and explains why Rust can be hard to use (complex controls for complex procedures).

To better improve understanding of Rust and Go, I should try to build some of the following in each language:

  • an HTTP server
  • computer vision application using convolutional neural network
  • securities exchange for processing orders
    • and something to spam orders to the exchange
  • a web application
  • think of something more exciting to build