As you know, my main role is an Embedded Software Developer. This requires a certain skillset. These skills include different operating systems, different programing languages and some environments. Rust is a new language that can be used in embedded systems, and it has been on my TODO list for a while. I think the time may have come for me to learn Rust. Here’s why:
Rust is a new performance and stability-based programming language. It has lots of cool features for security, and it is also FAST. It would be easier for an embedded dev since the syntax is C-like, and it can be used for WebAssembly? Wow this is too much. I will explain one-by-one.
Rust is high-performant. It is so fast and effective, it is comparable versus C. You’ve heard right. It provides a perfect way for handling data safely, and also it is as fast as C. Yeah, that is something. See https://github.com/ixy-languages/ixy-languages/blob/master/Rust-vs-C-performance.md for the comparison.
Rust is safe to program. There are no unpredictable branches, since you would mostly use “match” expressions for that, there are no unhandled exceptions. Ownership of the variables is one of the key concepts, and it is a must to learn for a Rust programmer. Thread-safety is another issue. If your issue is long-time stability and memory or program safety, you should definitely check out Rust.
Also, it is used for web applications?! For real. Web assembly (Wasm) is used to create applications that are stored on a server and can be called from your web browser. Did you know that you can play Doom3 from your browser, or use AutoCAD near to the native performance? This is because of Wasm. Since Rust can both be run at front-end and back-end, it is clearly a nice skill to pick up.
It is also industry-proven. Drivers written in Rust are in linux-next. Cloudflare has ported their main app to Rust, which hosts 25M+ applications. Dropbox re-wrote their file sync engine with it, and npm uses it for package registry operations.
It is definitely time for me. How about you?
Check my homepage if you dare to look some other content by me.