I was first exposed to computer programming in 2015. But please, try not to attach my programming experience to that time. It was through a movie, an Indian movie, I can’t seem to ever remember its title. One of the characters - the bad guy actually - caught my attention. He was a lot of things: a traitor, genius, good looker, and hacker…a hacker. The amount of power he had was ridiculous. With just his laptop, he was able to turn the tide of the entire operation in his favour. There was one problem though, I didn’t have a laptop. Sometimes I used my dad’s laptop but not frequently. My saving grace was “Xeus hack”, a mobile application I installed on my phone. It came with lots of articles - bash programming, zip bombs, etc. My “Hacker career” went along fine till I got to a certain chapter. A line read, “what differentiates a “script kiddie” from an actual hacker was programming experience”. I had no programming experience. Lucky for me, at the end of the article, there was a list of programming languages, and at the bottom of the list were Python and Ruby. I randomly chose Python. I still didn’t have a laptop at that time, so I used a mobile application, “Q python”, to write my python scripts. The moment I wrote and ran my first line of python was the last time I thought about hacking. A world of possibility opened up to me.
In all my evangelism, a major question that people seemed to ask was ‘can you make money with Rust?’ People didn’t find it prospective. ‘You haven’t made any money in Rust’ and I sort of agreed…well not entirely. I had written an article on rust, a paid article. I kept trying to get them to understand that if you write code solely for making money, you might not be able to like rust or a couple of other languages and tools. Its learning curve is steep but the fact remains that Rust gave so much power. Who wouldn’t want that? At the end of 2021, people started writing year-in-review. I noticed a trend - ‘...I plan to learn Rust next year.’ This year, 2022, Rust's popularity exploded. It caught on. Its job availability went up and the antagonising about it went down. In fact, if anyone ever spoke against it in groups I was in, I didn’t have to defend it. There were others who would do that. Backend, Frontend, everyone started learning it.
So far, I’ve been reading the book “Zero to Production”, and I’ve had lots of fun working on the projects in it. I’ve also collaborated with other Rust developers on projects like Lazer Pay’s Rust SDK. I worked with Enochwho I met on the Rust Nigeria group chat. In fact, if the Rust Nigeria community hadn’t been created, I probably would have created it myself. A personal favourite of mine is the Thanos Project - a program that randomly deletes exactly half the number of files in a folder and I still have a couple of features I intend to add soon. That project taught me how to work with Rust’s documentation and I developed the notion, one I still hold, that all documentation should be like Rust’s. Another thing about Rust that makes me an unrepentant champion is the Rust philosophy, the philosophy that went into its design. The philosophy of “no breaking changes”, the compiler design, Just genius. I am not saying somewhere along the line we could not find something wrong, but, right now, it’s the closest thing to perfection in my opinion.
My goal for Rust in the future is to write more Rust. To slip it into as many projects as possible that I can, to give talks on it, and more. Like a donkey baited with a carrot, the fun of battling my way through tons of red lines and compiler error messages appeals to me. Rust has opened me up to meeting new people and having new experiences, so you can be sure that I’d always defend it at any chance I get.
This Rust story is based on Ayodeji Adeoti’s experience learning and using Rust.