When I started off learning Rust, I was reading the Rust book, the official book, and it really resonated with me when they started speaking about option types, and result types, algebraic data types, and all those things. It occurred to me at that time, or it was the first time it clicked, that you could move this burden of discipline from yourself to the language.