Building Pi, and what makes self-modifying software so fascinating
The Pragmatic Engineer
20 HOURS AGO
Building Pi, and what makes self-modifying software so fascinating
Building Pi, and what makes self-modifying software so fascinating

The Pragmatic Engineer
20 HOURS AGO
In this episode, Mario Zechner—the creator of the minimalist, self-modifying AI coding agent Pi—and Armin Ronacher—the creator of Flask—engage in a candid, deeply technical conversation about their evolving relationship with AI tools. Both seasoned open-source builders with roots in retro computing and game development, they reflect not as AI evangelists but as skeptical practitioners who build *with* AI while remaining wary of its overreach.
The discussion centers on the tension between AI's accelerating capabilities and enduring engineering fundamentals. Mario explains Pi’s design philosophy: minimalism, transparency, and engineer-in-the-loop control—born from frustration with unstable agentic systems like OpenClaw. Armin emphasizes judgment as irreplaceable: senior engineers curate simplicity, navigate trade-offs, and uphold standards that AI cannot learn or internalize. They observe how AI agents are democratizing code creation—enabling non-engineers to build tools—but also flooding open source with low-intent, unreviewable contributions that erode maintainability. Over-automation risks dehumanization and accountability gaps, especially in sensitive domains. The pair critique hype-driven complexity, advocate for deliberate friction (e.g., reviews, checklists), and champion the mantra 'Slow the F down'—prioritizing conviction over velocity. While MCPs and CLI tools evolve toward better composability, they stress that no protocol or agent supplants human context, ethics, or the lived experience embedded in robust software ecosystems.
05:06
05:06
Armin and Mario, along with Peter Steinberger, were experimenting with AI before OpenClaw and Pi
10:07
10:07
AI agents gain real utility when granted direct access to files
20:25
20:25
A good engineer says no to keep complexity down, while using agents often leads to saying yes without considering complexity
21:50
21:50
AI agents give access to world knowledge, making it harder for experienced engineers to say no to juniors or product managers
27:05
27:05
We'll realize AI is better for jobs earlier than in previous cycles
31:14
31:14
Pi succeeded by packaging cloud code into an intuitive, workflow-aligned agentic search tool
42:48
42:48
Pi was built to enable specialized performance for specific tasks, with Mario Zechner using only two trivial extensions for the pymonorepository
48:09
48:09
OpenClaw uses an auto-closing mechanism for pull requests from unknown users
56:32
56:32
Few AI-engineered projects have been successful
57:33
57:33
We're in a 'messing around and finding out' stage
1:00:23
1:00:23
Machine learning models may converge towards the 'mean' of the garbage code on the internet
1:05:33
1:05:33
Friction, like checklists and approval processes, is deliberately added to slow things down and help engineers think before making significant changes
1:14:32
1:14:32
The best software specification is the software itself
1:19:29
1:19:29
CodeMode proposes TypeScript-based MCP servers to improve coherence and composability
1:25:06
1:25:06
There's a split in access to top-tier AI intelligence