A Tale of Teaching Rust
summary
A quarter‑length class teaches Rust to 26 undergraduates over three weeks, focusing on ownership/borrowing/lifetimes, Send/Sync and rustlings exercises. Assignments include a partially completed dining‑philosophers that reveals about one third of submissions compile but break the problem, and a CVE analysis showing where Rust would prevent memory bugs. Students report the compiler is picky, syntax feels odd, yet most become more confident and many want to continue using Rust.
AI-written summary · about
chapters (26)
- 0:00Intro
- 2:03The Pitch
- 2:56Week 3: Explain why it matters
- 3:32What's the approach?
- 4:27Suggestions: 1. Do examples beforehand 2. Treat rustc as a teacher 3. Don't fake it
- 5:19Rust Playground The (New) Rust Book Rustlings Godbolt
- 6:13The Class
- 7:01Aliasing XOR Mutability
- 7:12Emphasize the rules Give lots of examples Show some complex cases
- 8:55Sometimes you need code that's generic over lifetimes
- 9:37Assignment: do the move semantics Rustlings exercises
- 10:05Threads w/out data races
- 11:11Introduce the key stdlib types: Arc, Rc, Mutex, RwLock
- 11:33Make clear that Rust stops data races, not race conditions
- 12:23Assignment: solve the Dining Philosophers problem
- 14:04Safety & Security
- 14:18Explain Safe Rust & Unsafe Rust
- 15:18Unsafe Rust can't trust Safe Rust
- 15:54Safety lies at the module boundary
- 16:38Assignment: find a CVE that could have been stopped by Rust
- 18:06The Results
- 18:44And the syntax was weird
- 19:38Students felt Rust was really powerful
- 20:07Students felt more confident than they did with C++
- 20:21The ergonomics initiative will help new Rustaceans!
- 21:14Conclusion
related talks
25mLessons Learned from Teaching Rust - Liv
27mRust for Freshmen
51mInterview
24mTeaching Rust to Beginners: Dreams and Drawbacks
03mRust Programming in 5 Minutes
01h 27mRust in Academia and Introduction to Iron
01h 42mIntroduction to Rust (for people who have never used a compiler)
01h 04mRust-ifying Your C# Codebase: A Tale of Adventure and Transformation
