The Development Experience Is Different With Rust
2025-08-29 , Room 1 (Main Room)

The Rust programming language and ecosystem changes the code you write, the way you write code, and the expectations you have. This talk goes beyond the hype and shows how the development workflow and expectations change when using this language.


Software development is not only the programming language and its patterns, but the community and ecosystem in which it exists. If one is able to clear the (large) hurdle that is understanding how to write code accepted by the Rust compiler, what is different?

Since 2017, I've used Rust in game development (Will), command line tools (Peace), and web applications (dot_ix, tears). With many languages, I would often become frustrated with some aspect of development -- which is not necessarily related to the language itself. But with Rust, I've found that many of these frustrations just aren't there.

When learning Rust, I originally thought this would be like most languages -- I can be familiar with common constructs within a month. But it took me 6 months to feel familiar, then when async Rust was stabilized, I got to feel like a beginner again. What kept me going were three things: the kind of struggles, the tooling, and the community.

With many languages, coding is 30% software development, 70% making sure "I got it right" and noticing where code had to be written to handle invalid cases. In other words, a small proportion of work is learning and development, and a large proportion is unnecessary effort -- effort because we're working with code that has fewer constraints. With Rust, those proportions are flipped -- most of the code that is written, is software development, and a smaller proportion is writing supporting code to satisfy compiler constraints.

The tooling that comes with Rust makes development seamless. Code formatting, linting, conditional compilation, dependency management and publishing are provided out of the box; for anything extra, typically there is one well-known tool for each task you want to do -- security auditing, license checks, building for the web, and so on. Given set up and usage of tooling is standardized, it's low friction to switch to a different computer and "just start coding". In short, the development software does not get in the way of software development.

All of the above is founded upon the people in the Rust community. The people who stick with Rust and become adept with it, tend to be clever and kind. Extremely clever people still take the time to answer questions on the community forum. Also, because the community generally has a higher bearing for delayed gratification, the libraries they publish tend to be stable and of higher quality, making .

Come and listen as I share my personal experiences in these different facets of the software life.

Heya 👋! Just like you I've spent time plenty of time dabbling with computers.

What got myself into programming was discovering how to modify a game called Little Fighter 2, and it was fun. After working with computers for a substantial period, I began learning to connect and communicate better with people, and try to put the fun back into what we do for work.

My ever growing list of "beginner hobbies" include running, art, sewing, and piano.