A traveller's journey into Rust 2017, 2018
A Year Of Rust

That image is amazing by the way and CC0 licensed. Thanks!
In 2017 a lot has changed and it has been a great year for Rust. The compiler became a lot more mature, libraries/crates stabilized, and many Rust-related talks showed up on (non-Rust) conferences⦠but letās start at the beginning.
When I started off my journey with Rust it was (and still is) driven by my curiousity and willingness to go the āextra mileā to find out how things work. My first project was a (now defunct) Slack bot to randomly choose restaurants for lunch (off of Foursquareās API), something that was quite exhausting coming from Python! All this static typing wasnāt something I had missed when working with REST APIs.
Soon after that, my curiousity took me down a different road: IoT. I built a client application for the Raspberry Pi, drivers for devices and a distributed database (CrateDB) and shortly joined tantivy (a search engine built in Rust, Paul is doing an awesome job there) and mostly this was good fun, except ⦠for dependency management, upgrades and other (un)expected changes.
Once upon a time ā¦
⦠about a year ago, when the latest nightly build wouldnāt let you use some crates because a feature was removed and a few maintainers of your crates had switched and a few were still working on migrating to the new version(s). That definitely was the source of a few pull requests last year.
A little later, almost the same thing happened again with serdeās 1.0 release, where getting multiple and sometimes incompatible versions (of a crate) would fill my weekends. But itās the price of working on new and exciting things š
Since then, everything has come a long way, getting a small project up and running is only a matter of seconds until you can start coding, ādefaultā crates are forming, and sometimes my vscode will even auto complete my code!
On the community side of things I like looking back on all the kindness and support I received for any of the stuff I do. People come up to me after conference talks or on the booth to chat about Rust, and I have since started to give back and help organize Munichās Rust meetup, tried to find all the Rusteceans within Microsoft, and I am planning to do a RustBridge (or similar) workshop this year. Up to now I have created some blog posts and a recorded talk (wait for what happens in the end!).
Which brings me to 2018 and some personal goals:
Engange more with the community
While I am not much of āwritingā participant online, I would love to engage more with others by sharing experiences and advice or learn from others more in IRC/reddit/the forum.
Do a Rustbridge workshop
Ashley does a great job of explaining stuff to people and she created some material to onboard people onto the language, something I would love to do too!
Contribute & maintain
My contributions so far to many Open Source projects have been rather superficial, but I would love to go deeper and be able to do impactful changes to other peopleās code. And of course build out my own libraries š
Get better at Rust
Catch up on the latest developments, use tokioā¦
I know itās not christmas, but ā¦
Since we can also have some sort of wishlist, hereās mine:
Better leverage
With many of the basic technologies are now stabilized and avaialble, it becomes more important to have higher level crates available to integrate with services, devices, etc. so leveraging existing work becomes easier and lets people worry less about plumbing. In turn this will enable more folks to use Rust š
Dependencies
Working with different operating systems and platforms I keep running into issues around dependencies, e.g. (un)available native libraries, duplicates (with a different minor version number), etc. Of course I understand why, yet itās inefficient and annoying to work around (even if I streamline my dependencies, some crates wonāt) and creates an unnecessary headache. I canāt think of a good solution - but I am sure this warrants a larger discussion.
Onwards!
Rustās ecosystem has grown a lot over the last year and I appreciate what everyone is doing! Itās amazing how many projects and services are built on their (our) work and I imagine a future where Rust can have vendor-created crates for APIs, devices, services etc. for people to safely build large, integrated Rust applications as quickly as more established technologies!
Itās been great to be part of the Rust community in 2017, I am looking forward to an even better 2018. This post was in response to the Rust 2018 call for community blog posts.
Happy new year!
Thanks for reading, if you like this sort of thing let me know on twitter: @0x5ff and share this post. If you want to help or just get me to fix an issue in my crates you should check out my Github repos (or get in touch via twitter):