Jonathan Blow on Programming Language Design

Jonathan Blow on Programming Language Design

Author: Richard Feldman November 16, 2025 Duration: 1:41:42

Jonathan Blow, creator of popular games Braid and The Witness, talks with Richard about programming language design - including the design of the programming language he's been building for game developers.


Keynote & Tech Demo - https://youtu.be/IdpD5QIVOKQ

ECS and Rust's Borrow Checker - https://youtu.be/4t1K66dMhWk

"The 30 Million Line Problem" - https://youtu.be/kZRE7HIO3vk

"A New Programming Language for Games" - https://youtu.be/TH9VCN6UkyQ?si=Z5cqazo4QU7AibzB

Roc Programming Language - https://roc-lang.org

Casey Muratori's "Performance-Aware Programming" Course - https://www.computerenhance.com/p/welcome-to-the-performance-aware

File Pilot File Explorer - https://filepilot.tech/

Ghostty Terminal - https://ghostty.org/

Language Server Protocol - https://microsoft.github.io/language-server-protocol/

WebAssembly Integer Sizes - https://developer.mozilla.org/en-US/docs/WebAssembly/Reference/Numeric/Const

Cliff Click's Sea of Nodes Compiler IR - https://github.com/SeaOfNodes/


Chapters

00:00 The Programming Establishment

02:04 Metaprogramming

05:04 Compile-Time Execution

08:05 Language Feature Interoperability

10:53 Compile Time Execution

27:52 Cross-Compiling and FFI

31:04 Determinism in Programming

35:07 Balancing Power and Safety

40:11 Memory Safety vs. Performance

50:15 The Evolution of Software Performance

55:32 Performance Awareness

01:03:56 Dependencies and Version Control

01:14:54 Dependency Availability Risk

01:18:42 Memory Management

01:24:51 Sandboxing

01:30:23 Operating Systems


Hosted on Acast. See acast.com/privacy for more information.


Richard Feldman hosts Software Unscripted, a weekly podcast that feels like pulling up a chair next to a fellow developer who’s seen it all. The conversations here are off-the-cuff and genuine, delving into the realities of writing code, navigating tech trends, and the often-unspoken challenges of building software. Rather than rigid interviews or dry lectures, each episode unfolds as a natural dialogue, exploring the intersection of technology, continuous learning, and the news shaping our digital tools. You’ll hear discussions that range from practical programming techniques and language debates to broader observations about the industry’s direction, all through a lens of lived experience. This isn't about polished presentations; it's about the authentic, sometimes messy, process of thinking through problems and sharing insights. For anyone who spends their days deep in logic and syntax, this podcast offers a relatable and thoughtful space to reflect on the craft. Tune in for a candid and engaging take on the world of software, one unscripted conversation at a time.
Author: Language: English Episodes: 100

Software Unscripted
Podcast Episodes
Escaping Software Disenchantment with Nikita Prokopov [not-audio_url] [/not-audio_url]

Duration: 48:42
Richard talks with Nikita Prokopov, an open-source Clojure developer and creator of the Fira Code typeface, about some of the reasons he'd felt a sense of disenchantment with the direction of software in the past, and st…
WebAssembly in Practice with Brian Carroll [not-audio_url] [/not-audio_url]

Duration: 50:15
Richard talks with Brian Carroll about his experience using WebAssembly in practice - including some of the benefits and challenges of using WebAssembly in practice, why WebAssembly adoption might not be as high as it co…
Disassembling Languages with Matt Godbolt [not-audio_url] [/not-audio_url]

Duration: 1:07:01
Richard talks with Matt Godbolt, author of the godbolt.org Compiler Explorer, about how certain aspects of the Compiler Explorer work, as well as "disassembling" language designs themselves - talking about reference coun…
The SemVer Rabbit Hole with Predrag Gruevski [not-audio_url] [/not-audio_url]

Duration: 58:14
Richard talks with Predrag Gruevski, author of the cargo-semver-checks tool for detecting accidental semantic versioning mistakes in Rust packages, as well as Trustfall, which is an incredibly flexible query engine. They…
Making Parsing I/O Bound with Daniel Lemire [not-audio_url] [/not-audio_url]

Duration: 1:17:46
Richard talks to Daniel Lemire about his work on simdjson, arguably the fastest JSON parser in the world. They also talk about parsing performance in other contexts, benchmarking, NodeJS string representations, and textb…
Niche Domain Knowledge with Ashley Williams [not-audio_url] [/not-audio_url]

Duration: 54:40
Richard talks with former Rust core team member Ashley Williams, aka ag_dubs,, about various different types of niche domain knowledge - from CSS tricks in web development to low-level systems programming, package manage…