In the year 2000, Joel Spolsky (founder of Stack Overflow) wrote a famous article titled “Things You Should Never Do, Part I.” In it, he talks about how rewriting your code from scratch is the single worst strategic mistake any software company can make. However, times have changed.
The cost of writing software is dropping exponentially and that has changed the math entirely on if it is worth rewriting your codebase. For instance, this year Anthropic’s Jarred Sumner (
@jarredsumner ) rewrote Bun in Rust in 11 days leading to many performance and correctness benefits.
Likewise, Stephen Toub (Distinguished Engineer at Microsoft,
@stephentoub ) rewrote the GitHub Copilot runtime (400,000-line codebase) in Rust by himself. I thought it’d be interesting to lay out everything he learned in the process. So I interviewed him about how and why he did it.
In this episode:
• Why he choose Rust of all languages
• Rollout strategies (incremental vs all at once)
• How he prevented regressions
• Steering agents and which models he used
• Career lessons and engineering advice
Where to watch:
• YouTube -
piped.video/watch?v=PLMOVlZC…
• Spotify -
open.spotify.com/episode/4zt…
• Apple Podcasts -
podcasts.apple.com/us/podcas…
• Transcript -
developing.dev/p/e073-stephe…
Thank you to the sponsor of this episode 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
workos.com/
Chapters:
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