Moving to Rust for personal projects
by Afanasy Barbarov
Moving to Rust (Again)
Back in 2018, I had to choose: Go or Rust? Rust's syntax looked appealing, so I went with it. Half a year later, I switched to Go.
Rust felt like constantly fighting the compiler. The learning curve was brutal, and I wanted to ship code, not debug lifetime annotations. Go was simple - I could focus on solving problems.
Fast forward to 2024. I decided to give Rust another chance.
What Changed
The ecosystem grew up. Documentation got better. Error messages actually help now instead of just complaining. But the biggest game-changer? AI coding assistants understand Rust well enough to suggest real solutions when you're stuck.
GitHub Copilot can suggest the exact lifetime annotation you need or show you how to structure your borrowing. What used to be hours of fighting the compiler became minutes of guided problem-solving.
Why It Clicked This Time
Here's what I appreciate most: once you build something in Rust, it works. You spend more time getting to a working version, but once you're there, it runs like a charm.
No mysterious crashes at 3 AM. No memory leaks that only show up under load. No race conditions that happen once a week. The compiler forces you to handle edge cases upfront instead of discovering them in production.
The development cycle feels different. Instead of "code fast, debug later," it's "think hard, code carefully, then relax." The upfront investment pays off when your service runs for months without issues.
Performance is predictable too. When Go's garbage collector started causing hiccups, Rust delivered consistent response times. When I needed to squeeze every bit of performance out of a hot path, Rust's zero-cost abstractions delivered.
The Reality
Rust still isn't for everything. Quick prototypes? Go is faster. Web APIs that mostly shuffle JSON? Probably overkill. But for anything where reliability and performance matter - systems tools, data processing, performance-critical services - it's hard to beat.
The language didn't fundamentally change since 2018. The tooling, ecosystem, and my patience all improved. Sometimes timing matters as much as technical merit.
Six years later, I finally get why people love Rust. It's not about the fancy type system or zero-cost abstractions. It's about building things that work and keep working.