Rewriting SQLite from prison with Preston Thorpe

Database School - Podcast készítő Try Hard Studios - Csütörtökök

Podcast artwork

Kategóriák:

In this episode of Database School, Aaron talks with Preston Thorpe, a senior engineer at Turso who is currently incarcerated, about his incredible journey from prison to rewriting SQLite in Rust. They dive deep into concurrent writes, MVCC, and the challenges of building a new database from scratch while discussing redemption, resilience, and raw technical brilliance.Follow Preston and Turso:LinkedIn: https://www.linkedin.com/in/PThorpe92Preston's Blog: https://pthorpe92.devGitHub: https://github.com/PThorpe92Turso: https://turso.techFollow Aaron:Twitter/X:  https://twitter.com/aarondfrancis Database School: https://databaseschool.comDatabase School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g  (Subscribe today)LinkedIn: https://www.linkedin.com/in/aarondfrancisWebsite: https://aaronfrancis.com - find articles, podcasts, courses, and more.Chapters:00:00 - Intro and Preston’s story02:13 - How Preston learned programming in prison06:06 - Making his parents proud and turning life around09:01 - Getting his first job at Unlock Labs10:47 - Discovering Turso and contributing to open source12:53 - From contributor to senior engineer at Turso22:27 - What Preston works on inside Turso24:00 - Challenges of rewriting SQLite in Rust26:00 - Why concurrent writes matter27:57 - How Turso implements concurrent writes35:02 - Maintaining SQLite compatibility37:03 - MVCC explained simply43:40 - How Turso handles MVCC and logging46:03 - Open source contributions and performance work46:23 - Implementing live materialized views50:55 - The DBSP paper and incremental computation52:55 - Sync and offline capabilities in Turso56:45 - Change data capture and future possibilities1:02:01 - Implementing foreign keys and fuzz testing1:06:02 - Rebuilding SQLite’s virtual machine1:08:10 - The quirks of SQLite’s codebase1:10:47 - Preston’s upcoming release and what’s next1:14:02 - Gratitude, reflection, and closing thoughts

Visit the podcast's native language site