Reliable software engineering with Rust

<p>We all want to build reliable software that makes users happy and keeps our heads free from late-night production crashes on Fridays. But every engineer already knows some stack that can handle the users&rsquo; needs while tests can check the correctness, so why would anyone bother learning Rust?</p> <p>You might have already heard that it&rsquo;s a complicated language requiring considerable onboarding time. For me and many other devs, it wasn&rsquo;t love at first sight. Memory safety didn&rsquo;t sound like something I missed in my projects and Rust looks kinda boring in many other aspects.</p> <p>Why is there so much hype around it, then? I hope this post will clarify why so many devs from all backgrounds and tech companies are getting addicted to it.</p> <h1>My background</h1> <p>I&rsquo;ve been programming for about 12 years, starting with casual HTML and simple algorithmic problems in Pascal, but since then worked with JS, PHP, Python, and a bit of C#, C++, Go, and others. For the past two years, I&rsquo;ve been learning and practicing Rust, and now I believe it stands out above all the other general-purpose programming languages I&rsquo;ve encountered.</p> <p>I don&rsquo;t think that it is a panacea, though. For example, when I need to create a casual blog, I just pick up&nbsp;<a href="https://wordpress.com/" rel="noopener ugc nofollow" target="_blank">WordPress</a>&nbsp;and be done in 15 mins; when I need some heavily interactive web UI, I just take&nbsp;<a href="https://react.dev/" rel="noopener ugc nofollow" target="_blank">React</a>&nbsp;with whatever libs I might find for the task at hand; when I need to experiment with machine learning models, I&rsquo;m definitely using&nbsp;<a href="https://pytorch.org/" rel="noopener ugc nofollow" target="_blank">PyTorch</a>. But, when I need to build something non-trivial, where performance and reliability are of concern, or the whole architecture is quite complex,&nbsp;<strong>Rust is my go-to choice</strong>.</p> <p><a href="https://medium.com/globant/reliable-software-engineering-with-rust-5bb4553b5d54">Website</a></p>