Author: Kirill Podoprigora
Created at: 2025-11-19 09:34
Number: 137
Clean content: Miraculixx: Not a core dev, yet experienced in large scale sw development including changing of core tech. Spoiler alert: these efforts usually fail. We’ve received a lot of messages from people who want to help, and even members of the Rust core team are willing to support us. As we mentioned earlier, there are two strong examples of Rust adoption done right: Rust for Linux and Rust for Android. Here’s the blog post from the Android team: Google Online Security Blog: Rust in Android: move fast and fix things We’re fully committed to putting a lot of effort into this initiative, and to making sure we don’t fail Miraculixx: Is the new stack introduced for its coolness instead of solving an actual problem? We’re addressing a real problem: CPython like many other projects written in C or C++ suffers from memory-safety vulnerabilities. Rust can drastically reduce the number of these vulnerabilities. From the Android blog post: We adopted Rust for its security and are seeing a 1000x reduction in memory safety vulnerability density compared to Android’s C and C++ code . Miraculixx: Will the new stack introduce new problems that the old stack does not have? I’m pretty sure this project will encounter at least one challenge: CPython contributors who don’t know Rust will need to dedicate some time if they want to contribute to the Rust parts. Other challenges will only become clear as we move forward, and that’s where members of the Rust core team may be able to help us. As I understand it, they supported the Rust for Linux project as well. Miraculixx: Does the investment in time and effort to introduce the new stack compete with more worthwile work that delivers value to users? Sorry, but I’m reading that part of your message as if this were about business. CPython is an open-source project, and most of us volunteer our time for free. Because we’re volunteers, we’re free to choose whichever problems we want to work on. So, we chose this problem and here’s the solution we believe in: Rust . Miraculixx: Efforts will stall and the resulting two-stack system is more complex than ever before, effectively meaning the change will be consuming ever more resources to no good cause. The complexities introduced by the new stack have a far higher blast radius than previously anticipated, triggering a complete rewrite, eventually reaching feature parity with no added value. I’d like to quote Android blog again: But the biggest surprise was Rust’s impact on software delivery. With Rust changes having a 4x lower rollback rate and spending 25% less time in code review , the safer path is now also the faster one.
