Rock the Code 10 - Richard Feldman on Roc, AI, Teaching, and Avoiding Fancy Functional Programming
Feb 10, 2026
Richard Feldman, software engineer and language creator behind Roc and contributor to Zed, shares his design philosophy and teaching approach. He discusses why he built Roc, trade-offs vs Rust, Zig, and Go, and Roc’s platform and sandboxing ideas. He talks about avoiding fancy FP jargon, teaching practical FP without starting with types, and how AI and agents fit into tooling and workflows.
AI Snips
Chapters
Books
Transcript
Episode notes
Hide Monads And Teach Practical Concepts First
- Avoid exposing monads and heavy FP terminology to users; prefer approachable APIs and hide advanced abstractions unless required.
- Teach concepts by their practical payoff (e.g., applicative parsers let you statically generate help) not by naming the algebraic abstraction.
Teach Functional Programming By Building First
- When teaching FP, start with building things and IO; don't teach types or IO late.
- Make early examples practical so learners get immediate feedback and motivation, then introduce types as needed.
Avoid One Growing Codebase When Writing A Book
- Don't structure a book around a single evolving codebase unless you're ready for massive maintenance; changing early chapters forces edits across all chapters.
- Instead, wait until the last minute to teach concepts to minimize cross-chapter churn.





