Kicking Off My Rust Journey (For Real This Time)
Julien Truffaut
29 September 2025
I’ve tried a couple of times to get serious about Rust, but each attempt fizzled out—life, laziness, and other excuses got in the way. This time feels different, and here’s why:
- I finally have a pet project that excites me, and Rust seems like the perfect fit.
- After 12 years of working almost exclusively with Scala, I feel some market pressure to diversify my skill set.
- I’m adding some peer pressure by sharing this journey publicly. (So please, feel free to nudge me if I start slacking on updates!)
The Project
I occasionally play an old-school tactical RPG called Dofus. Like many RPGs, your character wears magical gear to gain strength. The challenge lies in finding the right combination of items for a given situation. That challenge is harder than it sounds, because:
- There are hundreds of items, and new ones keep being added (the game is over 20 years old).
- Some items form “sets” that grant extra bonuses when equipped together.
- Items are periodically rebalanced by the developers.
- High-level items can take weeks of grinding to obtain.
My goal is to build a tool that, given a set of constraints (e.g. at least 120 fire resistance and 900 agility), recommends viable combinations of items. I’ll start with a simple CLI prototype, and if motivation holds, I’d love to expand into a frontend for a wider audience.
Example of a character in Dofus (yes, I play a cat)
Why this project?
I think this is a great learning project for Rust, for a couple of reasons:
- Personal connection. I used to play Dofus a lot as a teenager, so the nostalgia factor will keep me motivated.
- Technical variety. The project will require scraping data, interacting with third-party APIs, data validation, persistence (database), optimization, building a CLI, and maybe exposing an API.
- Performance. The optimization piece excites me most. Rust has a reputation for efficiency, and I’m curious to see how it holds up in practice.
A Word of Warning
My Rust experience is minimal—I’ve only read one book and done a handful of exercises. So don’t expect polished, idiomatic Rust code right away.
But that’s the point: this series will document the messy, realistic process of learning Rust through building something non-trivial.
If you’re an experienced Rustacean, I’d love your feedback and suggestions. If you’re learning alongside me, maybe we can figure it out together.
Next stop: actually writing some Rust before I get distracted again.