A long time I’ve have been watching Rust and it’s ecosystems from the side line. I always had an interest in statically type and actually natively compiled languages, as my first professionally used languaged was C++. We used it heavily at the German Aerospace Center. In hindsight it was quite a pain to work with. But I don’t knew it better at the time. The only other language I was using was PHP or Java and these where easier too handle but came with a bulky ecosystem.

Since then my language of choice shifted to Javascript and later on, when it became more usable, Typescript. However, it always felt a bit like a step down in my programming career as Javascript could be understand and written by mostly anybody. Everyone was using it, people just learned in and React in a 2 Month Bootcamp. Probably even better than people coding it for years but never using React before. In general, for a progrmaming language it’s actually very good. People can pick it up easily and be productive right away. But this is not only due to the language but also the ecosystem with NPM, it’s modules and the ubiquitous Javascript Runtime. It runs everywhere.

While our machines we are writing code on became more and more powerfu, they were able to handle more advanced tooling and wirting js code is now a bliss. Full IDEs embedded in a website, with several plugins, AI guidance and compiling and running the code form a browsertab became the new normal. However, I never felt, like I wrote software to last ever in Javascript. Maybe it felt like building already outdated UI with v2 already beeing sketch up in a Figma file.

Speaking of Figma. It intruiged me how this Webbased SVG editor felt snappy to me than the native counter part, Sketch. I’m definitly in the Figma camp, if I have to decide for one. It feels lighter, faster and it’s free. I’ve also tried Adobe XD, but nothing felt as quick als Figma. So how come? Beeing so impressed at the time I have been googling a bit and looking into their job descriptions and as it turns how they are using C++ as well and somehow marry this functionality with thier Javascript React frontend. I wasn’t aware until than, that these languages can somehow be used in the web as well.

Not only this but also the fact that Rust is now beeing used by several smart contract platforms as their languages of choice, made me give learning Rust a proper try. I read some Rust code before and cherrypicked the parts of the docs to get through it, but until last week I never made a proper effort oft writing some Rust code myself.

Luckily, beeing a programmer, I never run out of ideas what to build. So I quickly had a use for a CLI tool merging some JSON files for me. So I spun up my VSCode installed some Rust Plugins and followed the first CLI Rust Tutorial I could find, which was this one: https://rust-cli.github.io/book/index.html . It was short concise and already showed some advanced feature of Rust as well as introduced some cool crates. All in all great fun.

However, it only took me thus far. I felt more following instructions instead of writing the code myself. Due to my work with colleagues from bootcamp I knew they where lacking quite a bit of the fundamental understanding of the language they use and how a computer acutally does it’s magic it’s told to do. So I immediatly knew I needed to read a book from back to back to at least have heard of all current topics related to Rust. And again, Rust has this great open and free book: https://doc.rust-lang.org/book/ . Beeing half way through, I really enjoy it. It’s concise and well written. Reading it made me finish the missing pieces of my CLI tools. Pretty sure it’s not the prettiest Rust code, nevertheless, it works and compiles and it’s insanely fast.

Yes freaking fast. I was impressed how fast programs, can be these days. The last time I’ve written C++ was a decade ago. We had multicore processors on the rise with 2-3GHz. Since than we made an enormes jump and working with javascript wasn’t an issue at all. But seeing the same machine running natively compiled Rust code is mind blowing. I don’t have a direct comparison of this programm writtien in Rust and Javascript but this little Rust tool I’ve wrote runs faster in a debug configuration than any javascript code I’ve wrote which is working with JSON files ever. It blew my mind, I was missing out on all of this fun for almost a decade now.

Surely, Rust quite a bit more complex to write. Nevertheless, it’s far off from what writing C++ code was like 10 years ago for me. Cargo the package manager and compile tool is a godsent. It’s as easy as using NPM to installing , updating, removing dependencies. It find all the files to compile, all the tests to run and even is able to create debug and release builds of your code. I love it. And it’s only because it’s based on conventions and easy to understand TOML file, perfect!