Kicking Off My Rust Journey (For Real This Time)

Julien Truffaut image

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:

  1. There are hundreds of items, and new ones keep being added (the game is over 20 years old).
  2. Some items form “sets” that grant extra bonuses when equipped together.
  3. Items are periodically rebalanced by the developers.
  4. 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.

Kicking Off My Rust Journey 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.