I was looking at Rust today ๐Ÿš€. The reason is I understand the importance of knowing a systems language.

Systems languages can help us develop lower-level things like:

  • web servers
  • browsers
  • OS modules
  • CLI tools
  • embedded apps
  • web assembly apps

Why Rust will be successful?

Simple - successful technologies are the ones used by big tech giants in important projects.

I think Rust has a bright future given it is backed by Mozilla but also indirectly by Microsoft. Did you know that Microsoft is actively using Rust for a couple of their critical projects like Azure and Windows, leveraging the powers of Rust while benefiting from it being memory safe?

Not just that, Rust already brings value to NPM, Dropbox, and Yelp.

Let's not forget that Rust can already be compiled into Web Assembly. While WASM is not that popular yet, it surely has potential for the future because it can bring computation heavy apps like games, interactive diagrams, or data visualization software to life.

Why Rust could be used over C/C++

Well... like many other important things in programming that are many times overlooked ... security! ๐Ÿ›ก๏ธ Lot's of important system-level code currently runs in C/C++, and new vulnerabilities are found periodically. Most bugs are related to memory issues.

70% of all security bugs are memory safety issues (source here).

Rust is memory safe while being as fast or even faster than C or C++! ๐Ÿง  Even if you can still write code that has memory issues in Rust, the Rust compiler will do its best to warn you of those issues.

Rust is modern

Rust was designed to have good DX from the start:

  • package manager - Rust libs can be easily distributed as crates
  • crates.io - can be used to explore Rust libraries
  • modern testing tools
  • workspaces

๐Ÿ‘‡ Leave a comment ๐Ÿ‘‡ Let me know if you used, learned, or intend to learn Rust. What was your experience with it? Is it as good as advertised?

Leave a ๐Ÿงก & ๐Ÿฆ„. For more interesting content also check out my Twitter.

This post is also available on DEV.