Skip to content

Microsoft Distinguished Eng: Why And How To Port Your Entire Codebase to Rust | Stephen Toub

November 2, 2026 · 1 h 22 min

Show notes

Stephen Toub is a Distinguished Engineer at Microsoft who single-handledly rewrote the GitHub Copilot runtime (400,000-line codebase) in Rust. We talked about why/how he did it, how Rust compared with other languages, and everything he learned in the process.

• My ergonomic keyboard project I mentioned, you can follow along here: https://read.compose.llc/
• The Kickstarter page for it: https://www.kickstarter.com/projects/ryanlpeterman/compose-simple-ergonomics-beautifully-done

Podcast links:

• YouTube: https://www.youtube.com/watch?v=PLMOVlZC4eU
• Apple: https://podcasts.apple.com/us/podcast/the-peterman-pod/id1777363835
• Transcript: https://www.developing.dev/p/e073-stephen-toub

Thank you to this episode's sponsor for supporting my work:

• WorkOS: makes your app Enterprise Ready with easy to use APIs to add SSO, SCIM, RBAC, and more in just a few lines of code, check them out at https://workos.com/

Timestamps:

(00:00) Intro
(01:06) Why the Copilot runtime needed a Rust port
(05:38) Why he chose Rust
(11:28) Discussing rollout strategies
(21:57) How he caught regressions
(32:08) Guiding the agents
(42:11) Catching regressions before prod
(45:16) Which models he used
(50:03) The end benefit and costs
(01:03:24) When to do a full rewrite
(01:06:40) Career learnings on the way to Distinguished
(01:16:00) Top technical book recommendation
(01:17:49) Advice for young engineers
(01:21:00) Outro

Where to find Stephen:

• GitHub: https://github.com/stephentoub
• X: https://twitter.com/stephentoub
• LinkedIn: https://www.linkedin.com/in/stephen-toub-75979745/

Where to find Ryan:

• Newsletter: https://www.developing.dev/
• X/Twitter: https://x.com/ryanlpeterman
• LinkedIn: https://www.linkedin.com/in/ryanlpeterman/
• Threads: https://www.threads.com/@ryanlpeterman
• Instagram: https://www.instagram.com/ryanlpeterman
• TikTok: https://www.tiktok.com/@ryanlpeterman

Referenced in this episode:

• Stephen Toub’s post on porting the GitHub Copilot runtime to Rust: https://github.blog/ai-and-ml/generative-ai/migrating-the-github-copilot-runtime-to-rust-using-copilot/
• Jarred Sumner’s post on porting Bun to Rust: https://bun.com/blog/bun-in-rust
• Code: The Hidden Language of Computer Hardware and Software: https://www.charlespetzold.com/code/index.html

All episodes of The Peterman Pod

Settings

Display

Language

Decides which stations you see first on the home page.

History

Recently played stations and episodes and your latest searches are only stored in this browser.

Notifications

A short notice when a podcast you follow has a new episode. Turn off single podcasts with the bell on their page.

Account

Save favorites – in the app and on the website.

Keyboard shortcuts

/
Open search
Space
Play or pause
← →
In the player: back 15 s, forward 30 s (episodes) · in a row: next tile
↑ ↓
In a row: target within the tile
Home / End
In a row: first or last tile
Esc
Close window or menu
?
This overview
Now playing

Go to station page

Play next

    Add episodes with “Play next” – they play after the current episode.