Matthew Fluet talks about the experience of teaching Rust for two semesters, relating accrued positive, neutral, and negative learnings. Fluet describes and evaluates five programming assignments used: a mini-language interpreter; a puzzle solver; a trie library; a parallel evaluator for elementary cellular automata; and an asynchronous networked Rock-Paper-Scissors server.