Software Engineering Radio - the podcast for professional software developers

SE Radio 702: Derick Schaefer on Modern CLIs

6 snips
Jan 7, 2026
Derick Schaefer, a seasoned software engineering leader and author of 'CLI: A Practical Guide to Creating Modern Command-Line Interfaces,' shares insights on the evolution of command-line interfaces. He discusses the history from Unix systems to their modern resurgence in tools like Git and WordPress. Schaefer highlights the importance of the object-command pattern, API-first architecture, and the need for robust documentation for LLMs. He also covers implications of statefulness, credential handling, and user-friendly output formats, painting a vivid picture of the future of CLIs.
Ask episode
AI Snips
Chapters
Books
Transcript
Episode notes
ADVICE

Design CLIs For Personas, Not Just APIs

  • Design your CLI around the persona and purpose rather than blindly mirroring your API structure.
  • Choose behaviors and performance characteristics that best serve the CLI's users and workloads.
ADVICE

Make Long-Running Tasks Resilient

  • For long-running local workloads, split work across cores, manage memory carefully, and implement checkpoints and retries.
  • Shorten jobs where possible and provide recovery points to avoid losing progress on interruptions.
INSIGHT

Languages Shaping Modern CLIs

  • Implementation languages vary: C/C++ remain common, but Go and Rust are rising for their small runtimes and system-level power.
  • Languages with light runtimes and robust concurrency (Go, Rust) suit modern cross-platform CLIs well.
Get the Snipd Podcast app to discover more snips from this episode
Get the app