<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="/stylesheet.xsl" type="text/xsl"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:podcast="https://podcastindex.org/namespace/1.0">
  <channel>
    <atom:link rel="self" type="application/atom+xml" href="https://feeds.transistor.fm/database-school" title="MP3 Audio"/>
    <atom:link rel="hub" href="https://pubsubhubbub.appspot.com/"/>
    <podcast:podping usesPodping="true"/>
    <title>Database School</title>
    <generator>Transistor (https://transistor.fm)</generator>
    <itunes:new-feed-url>https://feeds.transistor.fm/database-school</itunes:new-feed-url>
    <description>Join database educator Aaron Francis as he gets schooled by database professionals.</description>
    <copyright>© 2026 Try Hard Studios</copyright>
    <podcast:guid>f726b714-856d-5708-9f1b-09e9154c224e</podcast:guid>
    <podcast:locked>yes</podcast:locked>
    <language>en</language>
    <pubDate>Thu, 15 Jan 2026 11:00:10 -0600</pubDate>
    <lastBuildDate>Thu, 15 Jan 2026 11:02:14 -0600</lastBuildDate>
    <link>https://databaseschool.com</link>
    <image>
      <url>https://img.transistorcdn.com/Ix90xsOTtK1QCpCnuO6bRwF1LjGecu2Zzt1DnMEiW5I/rs:fill:0:0:1/w:1400/h:1400/q:60/mb:500000/aHR0cHM6Ly9pbWct/dXBsb2FkLXByb2R1/Y3Rpb24udHJhbnNp/c3Rvci5mbS9lMmRl/ZTM5ZTAxOTMzNTgy/MmJmZTA4MWE1ZjMw/YjE4Ny5wbmc.jpg</url>
      <title>Database School</title>
      <link>https://databaseschool.com</link>
    </image>
    <itunes:category text="Technology"/>
    <itunes:category text="Education"/>
    <itunes:type>episodic</itunes:type>
    <itunes:author>Try Hard Studios</itunes:author>
    <itunes:image href="https://img.transistorcdn.com/Ix90xsOTtK1QCpCnuO6bRwF1LjGecu2Zzt1DnMEiW5I/rs:fill:0:0:1/w:1400/h:1400/q:60/mb:500000/aHR0cHM6Ly9pbWct/dXBsb2FkLXByb2R1/Y3Rpb24udHJhbnNp/c3Rvci5mbS9lMmRl/ZTM5ZTAxOTMzNTgy/MmJmZTA4MWE1ZjMw/YjE4Ny5wbmc.jpg"/>
    <itunes:summary>Join database educator Aaron Francis as he gets schooled by database professionals.</itunes:summary>
    <itunes:subtitle>Join database educator Aaron Francis as he gets schooled by database professionals..</itunes:subtitle>
    <itunes:keywords>database, programming, technology, software development</itunes:keywords>
    <itunes:owner>
      <itunes:name>Aaron Francis</itunes:name>
    </itunes:owner>
    <itunes:complete>No</itunes:complete>
    <itunes:explicit>No</itunes:explicit>
    <item>
      <title>Infinite, shareable volume storage with Hunter Leath, Archil CEO</title>
      <itunes:episode>31</itunes:episode>
      <podcast:episode>31</podcast:episode>
      <itunes:title>Infinite, shareable volume storage with Hunter Leath, Archil CEO</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">405ff736-dae6-4aed-a8ac-c2a038e28d37</guid>
      <link>https://share.transistor.fm/s/f0180d90</link>
      <description>
        <![CDATA[<p>Hunter Leath, CEO of Archil, explains how they’re building a “universal storage engine” that sits between your apps and S3—making an S3 bucket behave like a fast, POSIX-compatible disk for containers, servers, and even Lambda. Along the way, we dig into how their SSD-backed clusters and custom protocol avoid the usual small-file pain and where this approach shines (and where it doesn’t).</p><p>Follow Hunter:<br>Twitter/X:  https://twitter.com/jhleath<br>Archil Twitter/X:  https://twitter.com/archildata<br>Archil: https://archil.com/</p><p>Follow Aaron:<br>Twitter/X:  https://twitter.com/aarondfrancis <br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g  (Subscribe today)<br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Chapters:<br>00:00 - Intro: Archil Data and “S3 as a disk”<br>01:05 - Hunter’s background and the core pitch<br>02:32 - The real problem: state management (S3 vs block storage)<br>05:02 - SQLite on S3: what the stack looks like<br>07:13 - The missing layer: durable SSD-backed clusters<br>10:14 - Who uses this: unstructured data, CI/CD, Git, agents<br>12:15 - Small files + Git performance and avoiding S3 request explosion<br>16:22 - Why they built a new protocol (NFS vs Luster)<br>20:00 - What gets written to S3: real files in your bucket<br>22:29 - S3 limits, throttling, and the “keep it on SSD” escape hatch<br>25:32 - Multi-cloud + R2, and why regions/latency matter<br>32:10 - Pricing model: “pay only when data is active”<br>34:41 - Tradeoffs: random reads and ultra-low-latency metal<br>37:19 - Storage/compute separation and AI/agent-native workflows<br>43:21 - YC timeline + the marketing challenge of a “universal layer”<br>47:34 - Single-tenant clusters for enterprises and why it’s hard<br>50:27 - Where the company is now, hiring, and how to try it (disk.new)</p>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>Hunter Leath, CEO of Archil, explains how they’re building a “universal storage engine” that sits between your apps and S3—making an S3 bucket behave like a fast, POSIX-compatible disk for containers, servers, and even Lambda. Along the way, we dig into how their SSD-backed clusters and custom protocol avoid the usual small-file pain and where this approach shines (and where it doesn’t).</p><p>Follow Hunter:<br>Twitter/X:  https://twitter.com/jhleath<br>Archil Twitter/X:  https://twitter.com/archildata<br>Archil: https://archil.com/</p><p>Follow Aaron:<br>Twitter/X:  https://twitter.com/aarondfrancis <br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g  (Subscribe today)<br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Chapters:<br>00:00 - Intro: Archil Data and “S3 as a disk”<br>01:05 - Hunter’s background and the core pitch<br>02:32 - The real problem: state management (S3 vs block storage)<br>05:02 - SQLite on S3: what the stack looks like<br>07:13 - The missing layer: durable SSD-backed clusters<br>10:14 - Who uses this: unstructured data, CI/CD, Git, agents<br>12:15 - Small files + Git performance and avoiding S3 request explosion<br>16:22 - Why they built a new protocol (NFS vs Luster)<br>20:00 - What gets written to S3: real files in your bucket<br>22:29 - S3 limits, throttling, and the “keep it on SSD” escape hatch<br>25:32 - Multi-cloud + R2, and why regions/latency matter<br>32:10 - Pricing model: “pay only when data is active”<br>34:41 - Tradeoffs: random reads and ultra-low-latency metal<br>37:19 - Storage/compute separation and AI/agent-native workflows<br>43:21 - YC timeline + the marketing challenge of a “universal layer”<br>47:34 - Single-tenant clusters for enterprises and why it’s hard<br>50:27 - Where the company is now, hiring, and how to try it (disk.new)</p>]]>
      </content:encoded>
      <pubDate>Thu, 15 Jan 2026 11:00:00 -0600</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/f0180d90/c8d199e2.mp3" length="132561352" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:duration>3313</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>Hunter Leath, CEO of Archil, explains how they’re building a “universal storage engine” that sits between your apps and S3—making an S3 bucket behave like a fast, POSIX-compatible disk for containers, servers, and even Lambda. Along the way, we dig into how their SSD-backed clusters and custom protocol avoid the usual small-file pain and where this approach shines (and where it doesn’t).</p><p>Follow Hunter:<br>Twitter/X:  https://twitter.com/jhleath<br>Archil Twitter/X:  https://twitter.com/archildata<br>Archil: https://archil.com/</p><p>Follow Aaron:<br>Twitter/X:  https://twitter.com/aarondfrancis <br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g  (Subscribe today)<br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Chapters:<br>00:00 - Intro: Archil Data and “S3 as a disk”<br>01:05 - Hunter’s background and the core pitch<br>02:32 - The real problem: state management (S3 vs block storage)<br>05:02 - SQLite on S3: what the stack looks like<br>07:13 - The missing layer: durable SSD-backed clusters<br>10:14 - Who uses this: unstructured data, CI/CD, Git, agents<br>12:15 - Small files + Git performance and avoiding S3 request explosion<br>16:22 - Why they built a new protocol (NFS vs Luster)<br>20:00 - What gets written to S3: real files in your bucket<br>22:29 - S3 limits, throttling, and the “keep it on SSD” escape hatch<br>25:32 - Multi-cloud + R2, and why regions/latency matter<br>32:10 - Pricing model: “pay only when data is active”<br>34:41 - Tradeoffs: random reads and ultra-low-latency metal<br>37:19 - Storage/compute separation and AI/agent-native workflows<br>43:21 - YC timeline + the marketing challenge of a “universal layer”<br>47:34 - Single-tenant clusters for enterprises and why it’s hard<br>50:27 - Where the company is now, hiring, and how to try it (disk.new)</p>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>Building search for AI systems with Chroma CTO Hammad Bashir</title>
      <itunes:episode>30</itunes:episode>
      <podcast:episode>30</podcast:episode>
      <itunes:title>Building search for AI systems with Chroma CTO Hammad Bashir</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">4b6c7251-b133-469e-a92f-8c5d4f4eb6b8</guid>
      <link>https://share.transistor.fm/s/e96e3875</link>
      <description>
        <![CDATA[<p>Hammad Bashir, CTO of Chroma, joins the show to break down how modern vector search systems are actually built from local, embedded databases to massively distributed, object-storage-backed architectures. We dig into Chroma’s shared local-to-cloud API, log-structured storage on object stores, hybrid search, and why retrieval-augmented generation (RAG) isn’t going anywhere.</p><p>Follow Hammad:<br>Twitter/X:  https://twitter.com/HammadTime<br>LinkedIn: https://www.linkedin.com/in/hbashir<br>Chroma: https://trychroma.com</p><p>Follow Aaron:<br>Twitter/X:  https://twitter.com/aarondfrancis <br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g  (Subscribe today)<br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Chapters:<br>00:00 – Introduction From high-school ASICs to CTO of Chroma<br>01:04 – Hammad’s background and why vector search stuck<br>03:01 – Why Chroma has one API for local and distributed systems<br>05:37 – Local experimentation vs production AI workflows<br>08:03 – What “unprincipled data” means in machine learning<br>10:31 – From computer vision to retrieval for LLMs<br>13:00 – Exploratory data analysis and why looking at data still matters<br>16:38 – Promoting data from local to Chroma Cloud<br>19:26 – Why Chroma is built on object storage<br>20:27 – Write-ahead logs, batching, and durability<br>26:56 – Compaction, inverted indexes, and storage layout<br>29:26 – Strong consistency and reading from the log<br>34:12 – How queries are routed and executed<br>37:00 – Hybrid search: vectors, full-text, and metadata<br>41:03 – Chunking, embeddings, and retrieval boundaries<br>43:22 – Agentic search and letting models drive retrieval<br>45:01 – Is RAG dead? A grounded explanation<br>48:24 – Why context windows don’t replace search<br>56:20 – Context rot and why retrieval reduces confusion<br>01:00:19 – Faster models and the future of search stacks<br>01:02:25 – Who Chroma is for and when it’s a great fit<br>01:04:25 – Hiring, team culture, and where to follow Chroma</p>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>Hammad Bashir, CTO of Chroma, joins the show to break down how modern vector search systems are actually built from local, embedded databases to massively distributed, object-storage-backed architectures. We dig into Chroma’s shared local-to-cloud API, log-structured storage on object stores, hybrid search, and why retrieval-augmented generation (RAG) isn’t going anywhere.</p><p>Follow Hammad:<br>Twitter/X:  https://twitter.com/HammadTime<br>LinkedIn: https://www.linkedin.com/in/hbashir<br>Chroma: https://trychroma.com</p><p>Follow Aaron:<br>Twitter/X:  https://twitter.com/aarondfrancis <br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g  (Subscribe today)<br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Chapters:<br>00:00 – Introduction From high-school ASICs to CTO of Chroma<br>01:04 – Hammad’s background and why vector search stuck<br>03:01 – Why Chroma has one API for local and distributed systems<br>05:37 – Local experimentation vs production AI workflows<br>08:03 – What “unprincipled data” means in machine learning<br>10:31 – From computer vision to retrieval for LLMs<br>13:00 – Exploratory data analysis and why looking at data still matters<br>16:38 – Promoting data from local to Chroma Cloud<br>19:26 – Why Chroma is built on object storage<br>20:27 – Write-ahead logs, batching, and durability<br>26:56 – Compaction, inverted indexes, and storage layout<br>29:26 – Strong consistency and reading from the log<br>34:12 – How queries are routed and executed<br>37:00 – Hybrid search: vectors, full-text, and metadata<br>41:03 – Chunking, embeddings, and retrieval boundaries<br>43:22 – Agentic search and letting models drive retrieval<br>45:01 – Is RAG dead? A grounded explanation<br>48:24 – Why context windows don’t replace search<br>56:20 – Context rot and why retrieval reduces confusion<br>01:00:19 – Faster models and the future of search stacks<br>01:02:25 – Who Chroma is for and when it’s a great fit<br>01:04:25 – Hiring, team culture, and where to follow Chroma</p>]]>
      </content:encoded>
      <pubDate>Thu, 18 Dec 2025 11:00:00 -0600</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/e96e3875/c43d288f.mp3" length="160175748" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:duration>4003</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>Hammad Bashir, CTO of Chroma, joins the show to break down how modern vector search systems are actually built from local, embedded databases to massively distributed, object-storage-backed architectures. We dig into Chroma’s shared local-to-cloud API, log-structured storage on object stores, hybrid search, and why retrieval-augmented generation (RAG) isn’t going anywhere.</p><p>Follow Hammad:<br>Twitter/X:  https://twitter.com/HammadTime<br>LinkedIn: https://www.linkedin.com/in/hbashir<br>Chroma: https://trychroma.com</p><p>Follow Aaron:<br>Twitter/X:  https://twitter.com/aarondfrancis <br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g  (Subscribe today)<br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Chapters:<br>00:00 – Introduction From high-school ASICs to CTO of Chroma<br>01:04 – Hammad’s background and why vector search stuck<br>03:01 – Why Chroma has one API for local and distributed systems<br>05:37 – Local experimentation vs production AI workflows<br>08:03 – What “unprincipled data” means in machine learning<br>10:31 – From computer vision to retrieval for LLMs<br>13:00 – Exploratory data analysis and why looking at data still matters<br>16:38 – Promoting data from local to Chroma Cloud<br>19:26 – Why Chroma is built on object storage<br>20:27 – Write-ahead logs, batching, and durability<br>26:56 – Compaction, inverted indexes, and storage layout<br>29:26 – Strong consistency and reading from the log<br>34:12 – How queries are routed and executed<br>37:00 – Hybrid search: vectors, full-text, and metadata<br>41:03 – Chunking, embeddings, and retrieval boundaries<br>43:22 – Agentic search and letting models drive retrieval<br>45:01 – Is RAG dead? A grounded explanation<br>48:24 – Why context windows don’t replace search<br>56:20 – Context rot and why retrieval reduces confusion<br>01:00:19 – Faster models and the future of search stacks<br>01:02:25 – Who Chroma is for and when it’s a great fit<br>01:04:25 – Hiring, team culture, and where to follow Chroma</p>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>Scaling DuckDB in the cloud with MotherDuck CEO Jordan Tigani</title>
      <itunes:episode>29</itunes:episode>
      <podcast:episode>29</podcast:episode>
      <itunes:title>Scaling DuckDB in the cloud with MotherDuck CEO Jordan Tigani</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">c71b0d13-f194-4b51-8044-1086703601af</guid>
      <link>https://share.transistor.fm/s/08d07c12</link>
      <description>
        <![CDATA[<p>In this episode of Database School, Aaron Francis sits down with Jordan Tigani, co-founder and CEO of MotherDuck, to break down what DuckDB is, how MotherDuck hosts it in the cloud, and why analytics workloads are shifting toward embedded databases. They dig into Duck Lake, pricing models, scaling strategies, and what it really takes to build a modern cloud data warehouse.</p><p>Follow Jordan:<br>Twitter/X:  https://twitter.com/jrdntgn<br>LinkedIn: https://www.linkedin.com/in/jordantigani<br>MotherDuck: https://motherduck.com</p><p>Follow Aaron:<br>Twitter/X:  https://twitter.com/aarondfrancis <br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g  (Subscribe today)<br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Chapters:<br>00:00 - Introduction<br>01:44 - What DuckDB is and why embedded analytics matter<br>04:03 - How MotherDuck hosts DuckDB in the cloud<br>05:18 - Is MotherDuck like the “Turso for DuckDB”?<br>07:38 - Isolated analytics per user and scaling to zero<br>08:51 - The academic origins of DuckDB<br>10:00 - From SingleStore to founding MotherDuck<br>12:28 - Getting fired… and funded 12 days later<br>16:39 - Jordan’s background: Kernel dev, BigQuery, and Product<br>18:36 - Partnering with DuckDB Labs and avoiding a fork<br>20:52 - Why MotherDuck targets startups and the long tail<br>24:22 - Pricing lessons: why $25 was too cheap<br>28:11 - Ducklings, instance sizing, and compute scaling<br>34:16 - How MotherDuck separates compute and storage<br>37:09 - Inside the AWS architecture and differential storage<br>43:12 - Hybrid execution: joining local and cloud data<br>45:14 - Analytics vs warehouses vs operational databases<br>47:41 - Data lakes, Iceberg, and what Duck Lake actually is<br>53:22 - When Duck Lake makes more sense than DuckDB alone<br>56:09 - Who switches to MotherDuck and why<br>58:02 - PG DuckDB and offloading analytics from Postgres<br>1:00:49 - Who should use MotherDuck and why<br>1:03:39 - Hiring plans and where to follow Jordan<br>1:05:01 - Wrap-up</p>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>In this episode of Database School, Aaron Francis sits down with Jordan Tigani, co-founder and CEO of MotherDuck, to break down what DuckDB is, how MotherDuck hosts it in the cloud, and why analytics workloads are shifting toward embedded databases. They dig into Duck Lake, pricing models, scaling strategies, and what it really takes to build a modern cloud data warehouse.</p><p>Follow Jordan:<br>Twitter/X:  https://twitter.com/jrdntgn<br>LinkedIn: https://www.linkedin.com/in/jordantigani<br>MotherDuck: https://motherduck.com</p><p>Follow Aaron:<br>Twitter/X:  https://twitter.com/aarondfrancis <br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g  (Subscribe today)<br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Chapters:<br>00:00 - Introduction<br>01:44 - What DuckDB is and why embedded analytics matter<br>04:03 - How MotherDuck hosts DuckDB in the cloud<br>05:18 - Is MotherDuck like the “Turso for DuckDB”?<br>07:38 - Isolated analytics per user and scaling to zero<br>08:51 - The academic origins of DuckDB<br>10:00 - From SingleStore to founding MotherDuck<br>12:28 - Getting fired… and funded 12 days later<br>16:39 - Jordan’s background: Kernel dev, BigQuery, and Product<br>18:36 - Partnering with DuckDB Labs and avoiding a fork<br>20:52 - Why MotherDuck targets startups and the long tail<br>24:22 - Pricing lessons: why $25 was too cheap<br>28:11 - Ducklings, instance sizing, and compute scaling<br>34:16 - How MotherDuck separates compute and storage<br>37:09 - Inside the AWS architecture and differential storage<br>43:12 - Hybrid execution: joining local and cloud data<br>45:14 - Analytics vs warehouses vs operational databases<br>47:41 - Data lakes, Iceberg, and what Duck Lake actually is<br>53:22 - When Duck Lake makes more sense than DuckDB alone<br>56:09 - Who switches to MotherDuck and why<br>58:02 - PG DuckDB and offloading analytics from Postgres<br>1:00:49 - Who should use MotherDuck and why<br>1:03:39 - Hiring plans and where to follow Jordan<br>1:05:01 - Wrap-up</p>]]>
      </content:encoded>
      <pubDate>Thu, 11 Dec 2025 11:00:00 -0600</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/08d07c12/c24bb3f0.mp3" length="156652549" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:duration>3915</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>In this episode of Database School, Aaron Francis sits down with Jordan Tigani, co-founder and CEO of MotherDuck, to break down what DuckDB is, how MotherDuck hosts it in the cloud, and why analytics workloads are shifting toward embedded databases. They dig into Duck Lake, pricing models, scaling strategies, and what it really takes to build a modern cloud data warehouse.</p><p>Follow Jordan:<br>Twitter/X:  https://twitter.com/jrdntgn<br>LinkedIn: https://www.linkedin.com/in/jordantigani<br>MotherDuck: https://motherduck.com</p><p>Follow Aaron:<br>Twitter/X:  https://twitter.com/aarondfrancis <br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g  (Subscribe today)<br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Chapters:<br>00:00 - Introduction<br>01:44 - What DuckDB is and why embedded analytics matter<br>04:03 - How MotherDuck hosts DuckDB in the cloud<br>05:18 - Is MotherDuck like the “Turso for DuckDB”?<br>07:38 - Isolated analytics per user and scaling to zero<br>08:51 - The academic origins of DuckDB<br>10:00 - From SingleStore to founding MotherDuck<br>12:28 - Getting fired… and funded 12 days later<br>16:39 - Jordan’s background: Kernel dev, BigQuery, and Product<br>18:36 - Partnering with DuckDB Labs and avoiding a fork<br>20:52 - Why MotherDuck targets startups and the long tail<br>24:22 - Pricing lessons: why $25 was too cheap<br>28:11 - Ducklings, instance sizing, and compute scaling<br>34:16 - How MotherDuck separates compute and storage<br>37:09 - Inside the AWS architecture and differential storage<br>43:12 - Hybrid execution: joining local and cloud data<br>45:14 - Analytics vs warehouses vs operational databases<br>47:41 - Data lakes, Iceberg, and what Duck Lake actually is<br>53:22 - When Duck Lake makes more sense than DuckDB alone<br>56:09 - Who switches to MotherDuck and why<br>58:02 - PG DuckDB and offloading analytics from Postgres<br>1:00:49 - Who should use MotherDuck and why<br>1:03:39 - Hiring plans and where to follow Jordan<br>1:05:01 - Wrap-up</p>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>Just use Postgres with Denis Magda</title>
      <itunes:episode>28</itunes:episode>
      <podcast:episode>28</podcast:episode>
      <itunes:title>Just use Postgres with Denis Magda</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">5d55e746-6d76-4eca-9e55-9c497e2d1fa5</guid>
      <link>https://share.transistor.fm/s/5ee33dea</link>
      <description>
        <![CDATA[<p>In this episode, Aaron talks with Dennis Magda, author of Just Use Postgres!, about the wide world of modern Postgres, from JSON and full-text search to generative AI, time-series storage, and even message queues. They explore when Postgres should be your go-to tool, when it shouldn’t, and why understanding its breadth helps developers build better systems.</p><p>Use the code DBSmagda to get 45% off Denis' new book Just Use Postgres!<br><a href="https://hubs.la/Q03P1t-b0">Order Just Use Postgres!</a></p><p>Follow Denis:<br>Twitter/X:  https://twitter.com/denismagda<br>LinkedIn: https://www.linkedin.com/in/dmagda</p><p><br>Follow Aaron:<br>Twitter/X:  https://twitter.com/aarondfrancis <br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g  (Subscribe today)<br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Chapters:<br>00:00 – Welcome<br>01:28 – Dennis’ Background: Java, JVM, and Databases<br>03:20 – Bridging Application Development &amp; Databases<br>04:05 – Moving Down the Stack: How Dennis Entered Databases<br>07:28 – Apache Ignite, Distributed Systems &amp; the Path to Postgres<br>08:02 – Writing Just Use Postgres!: The Origin Story<br>10:26 – Why a Modern Postgres Book Was Needed<br>11:01 – The Spark That Led to the Book Proposal<br>13:06 – Developers Still Don’t Know What Postgres Can Do<br>15:40 – Connecting With Manning &amp; Refining the Book Vision<br>16:38 – What Just Use Postgres! Covers<br>17:40 – The Book’s Core Thesis: The Breadth of Postgres<br>19:50 – Favorite Use Cases &amp; Learning While Writing<br>20:30 – When to Use Postgres for Non-Relational Workloads<br>23:08 – Full Text Search in Postgres Explained<br>29:31 – When Not to Use Postgres (Pragmatism Over Fanaticism)<br>34:01 – Using Postgres as a Message Queue<br>42:09 – When Message Queues Outgrow Postgres<br>48:10 – Postgres for Generative AI (PGVector)<br>55:34 – Dennis’ 14-Month Writing Process<br>01:00:50 – Who the Book Is For<br>01:04:10 – Where to Follow Dennis &amp; Closing Thoughts</p>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>In this episode, Aaron talks with Dennis Magda, author of Just Use Postgres!, about the wide world of modern Postgres, from JSON and full-text search to generative AI, time-series storage, and even message queues. They explore when Postgres should be your go-to tool, when it shouldn’t, and why understanding its breadth helps developers build better systems.</p><p>Use the code DBSmagda to get 45% off Denis' new book Just Use Postgres!<br><a href="https://hubs.la/Q03P1t-b0">Order Just Use Postgres!</a></p><p>Follow Denis:<br>Twitter/X:  https://twitter.com/denismagda<br>LinkedIn: https://www.linkedin.com/in/dmagda</p><p><br>Follow Aaron:<br>Twitter/X:  https://twitter.com/aarondfrancis <br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g  (Subscribe today)<br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Chapters:<br>00:00 – Welcome<br>01:28 – Dennis’ Background: Java, JVM, and Databases<br>03:20 – Bridging Application Development &amp; Databases<br>04:05 – Moving Down the Stack: How Dennis Entered Databases<br>07:28 – Apache Ignite, Distributed Systems &amp; the Path to Postgres<br>08:02 – Writing Just Use Postgres!: The Origin Story<br>10:26 – Why a Modern Postgres Book Was Needed<br>11:01 – The Spark That Led to the Book Proposal<br>13:06 – Developers Still Don’t Know What Postgres Can Do<br>15:40 – Connecting With Manning &amp; Refining the Book Vision<br>16:38 – What Just Use Postgres! Covers<br>17:40 – The Book’s Core Thesis: The Breadth of Postgres<br>19:50 – Favorite Use Cases &amp; Learning While Writing<br>20:30 – When to Use Postgres for Non-Relational Workloads<br>23:08 – Full Text Search in Postgres Explained<br>29:31 – When Not to Use Postgres (Pragmatism Over Fanaticism)<br>34:01 – Using Postgres as a Message Queue<br>42:09 – When Message Queues Outgrow Postgres<br>48:10 – Postgres for Generative AI (PGVector)<br>55:34 – Dennis’ 14-Month Writing Process<br>01:00:50 – Who the Book Is For<br>01:04:10 – Where to Follow Dennis &amp; Closing Thoughts</p>]]>
      </content:encoded>
      <pubDate>Thu, 04 Dec 2025 11:00:00 -0600</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/5ee33dea/295ab813.mp3" length="163201642" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:duration>4079</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>In this episode, Aaron talks with Dennis Magda, author of Just Use Postgres!, about the wide world of modern Postgres, from JSON and full-text search to generative AI, time-series storage, and even message queues. They explore when Postgres should be your go-to tool, when it shouldn’t, and why understanding its breadth helps developers build better systems.</p><p>Use the code DBSmagda to get 45% off Denis' new book Just Use Postgres!<br><a href="https://hubs.la/Q03P1t-b0">Order Just Use Postgres!</a></p><p>Follow Denis:<br>Twitter/X:  https://twitter.com/denismagda<br>LinkedIn: https://www.linkedin.com/in/dmagda</p><p><br>Follow Aaron:<br>Twitter/X:  https://twitter.com/aarondfrancis <br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g  (Subscribe today)<br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Chapters:<br>00:00 – Welcome<br>01:28 – Dennis’ Background: Java, JVM, and Databases<br>03:20 – Bridging Application Development &amp; Databases<br>04:05 – Moving Down the Stack: How Dennis Entered Databases<br>07:28 – Apache Ignite, Distributed Systems &amp; the Path to Postgres<br>08:02 – Writing Just Use Postgres!: The Origin Story<br>10:26 – Why a Modern Postgres Book Was Needed<br>11:01 – The Spark That Led to the Book Proposal<br>13:06 – Developers Still Don’t Know What Postgres Can Do<br>15:40 – Connecting With Manning &amp; Refining the Book Vision<br>16:38 – What Just Use Postgres! Covers<br>17:40 – The Book’s Core Thesis: The Breadth of Postgres<br>19:50 – Favorite Use Cases &amp; Learning While Writing<br>20:30 – When to Use Postgres for Non-Relational Workloads<br>23:08 – Full Text Search in Postgres Explained<br>29:31 – When Not to Use Postgres (Pragmatism Over Fanaticism)<br>34:01 – Using Postgres as a Message Queue<br>42:09 – When Message Queues Outgrow Postgres<br>48:10 – Postgres for Generative AI (PGVector)<br>55:34 – Dennis’ 14-Month Writing Process<br>01:00:50 – Who the Book Is For<br>01:04:10 – Where to Follow Dennis &amp; Closing Thoughts</p>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>Strictly typed SQL with Contra CTO, Gajus Kuizinas</title>
      <itunes:episode>27</itunes:episode>
      <podcast:episode>27</podcast:episode>
      <itunes:title>Strictly typed SQL with Contra CTO, Gajus Kuizinas</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">c4274b3c-31b0-4f96-b304-b397978bdbce</guid>
      <link>https://share.transistor.fm/s/6990b708</link>
      <description>
        <![CDATA[<p>In this episode, Gajus Kuizinas, co-founder and CTO of Contra, joins Aaron to talk about building the engineering world you want to live in, from strict runtime-validated SQL with Slonik to creating high-ownership engineering cultures. They dive into developer experience, runtime assertions, SafeQL, and even “Loom-driven development,” a powerful review process that lets teams move fast without breaking things.</p><p>Follow Gajus:<br>Twitter/X:  https://twitter.com/kuizinas<br>Slonk: https://github.com/gajus/slonik<br>Scaling article: https://gajus.medium.com/lessons-learned-scaling-postgresql-database-to-1-2bn-records-month-edc5449b3067</p><p>Follow Aaron:<br>Twitter/X:  https://twitter.com/aarondfrancis <br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g  (Subscribe today)<br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Chapters:<br>00:00 – Introduction<br>01:03 – Meet Gajus and Contra<br>01:48 – What Contra does and how it’s different<br>05:34 – Why Slonik exists &amp; early career origins<br>07:47 – The early Node.js era and frustrations with ORMs<br>09:50 – SQL vs abstractions and the case for raw SQL<br>10:35 – Template tags and the breakthrough idea<br>12:03 – Strictness, catching errors early &amp; data shape guarantees<br>13:37 – Runtime type checking, Zod, and performance debates<br>16:02 – SafeQL and real-time schema linting<br>17:01 – Synthesizing Slonik’s philosophy<br>21:29 – Handling drift, static types vs reality<br>22:52 – Defining schemas per-query &amp; why it matters<br>27:59 – Integrating runtime types with large test suites<br>31:00 – Scaling the team and performance tradeoffs<br>33:41 – Runtime validation cost vs developer productivity<br>35:21 – Real drift examples from payments &amp; external APIs<br>38:21 – User roles, data shape differences &amp; edge cases<br>39:51 – Integration test safety &amp; catching issues pre-deploy<br>40:52 – Contra’s engineering culture<br>41:47 – Why traditional PR reviews don’t scale<br>43:22 – Introducing Loom-Driven Development<br>45:12 – How looms transformed the review process<br>52:38 – Using GetDX to measure engineering friction<br>53:07 – How the team uses AI (Claude, etc.)<br>56:26 – Closing thoughts on DX and engineering philosophy<br>58:05 – Contra needs Postgres experts<br>59:00 – Where to find Gajus</p>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>In this episode, Gajus Kuizinas, co-founder and CTO of Contra, joins Aaron to talk about building the engineering world you want to live in, from strict runtime-validated SQL with Slonik to creating high-ownership engineering cultures. They dive into developer experience, runtime assertions, SafeQL, and even “Loom-driven development,” a powerful review process that lets teams move fast without breaking things.</p><p>Follow Gajus:<br>Twitter/X:  https://twitter.com/kuizinas<br>Slonk: https://github.com/gajus/slonik<br>Scaling article: https://gajus.medium.com/lessons-learned-scaling-postgresql-database-to-1-2bn-records-month-edc5449b3067</p><p>Follow Aaron:<br>Twitter/X:  https://twitter.com/aarondfrancis <br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g  (Subscribe today)<br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Chapters:<br>00:00 – Introduction<br>01:03 – Meet Gajus and Contra<br>01:48 – What Contra does and how it’s different<br>05:34 – Why Slonik exists &amp; early career origins<br>07:47 – The early Node.js era and frustrations with ORMs<br>09:50 – SQL vs abstractions and the case for raw SQL<br>10:35 – Template tags and the breakthrough idea<br>12:03 – Strictness, catching errors early &amp; data shape guarantees<br>13:37 – Runtime type checking, Zod, and performance debates<br>16:02 – SafeQL and real-time schema linting<br>17:01 – Synthesizing Slonik’s philosophy<br>21:29 – Handling drift, static types vs reality<br>22:52 – Defining schemas per-query &amp; why it matters<br>27:59 – Integrating runtime types with large test suites<br>31:00 – Scaling the team and performance tradeoffs<br>33:41 – Runtime validation cost vs developer productivity<br>35:21 – Real drift examples from payments &amp; external APIs<br>38:21 – User roles, data shape differences &amp; edge cases<br>39:51 – Integration test safety &amp; catching issues pre-deploy<br>40:52 – Contra’s engineering culture<br>41:47 – Why traditional PR reviews don’t scale<br>43:22 – Introducing Loom-Driven Development<br>45:12 – How looms transformed the review process<br>52:38 – Using GetDX to measure engineering friction<br>53:07 – How the team uses AI (Claude, etc.)<br>56:26 – Closing thoughts on DX and engineering philosophy<br>58:05 – Contra needs Postgres experts<br>59:00 – Where to find Gajus</p>]]>
      </content:encoded>
      <pubDate>Thu, 20 Nov 2025 11:00:00 -0600</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/6990b708/dd0918cc.mp3" length="143645498" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:duration>3590</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>In this episode, Gajus Kuizinas, co-founder and CTO of Contra, joins Aaron to talk about building the engineering world you want to live in, from strict runtime-validated SQL with Slonik to creating high-ownership engineering cultures. They dive into developer experience, runtime assertions, SafeQL, and even “Loom-driven development,” a powerful review process that lets teams move fast without breaking things.</p><p>Follow Gajus:<br>Twitter/X:  https://twitter.com/kuizinas<br>Slonk: https://github.com/gajus/slonik<br>Scaling article: https://gajus.medium.com/lessons-learned-scaling-postgresql-database-to-1-2bn-records-month-edc5449b3067</p><p>Follow Aaron:<br>Twitter/X:  https://twitter.com/aarondfrancis <br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g  (Subscribe today)<br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Chapters:<br>00:00 – Introduction<br>01:03 – Meet Gajus and Contra<br>01:48 – What Contra does and how it’s different<br>05:34 – Why Slonik exists &amp; early career origins<br>07:47 – The early Node.js era and frustrations with ORMs<br>09:50 – SQL vs abstractions and the case for raw SQL<br>10:35 – Template tags and the breakthrough idea<br>12:03 – Strictness, catching errors early &amp; data shape guarantees<br>13:37 – Runtime type checking, Zod, and performance debates<br>16:02 – SafeQL and real-time schema linting<br>17:01 – Synthesizing Slonik’s philosophy<br>21:29 – Handling drift, static types vs reality<br>22:52 – Defining schemas per-query &amp; why it matters<br>27:59 – Integrating runtime types with large test suites<br>31:00 – Scaling the team and performance tradeoffs<br>33:41 – Runtime validation cost vs developer productivity<br>35:21 – Real drift examples from payments &amp; external APIs<br>38:21 – User roles, data shape differences &amp; edge cases<br>39:51 – Integration test safety &amp; catching issues pre-deploy<br>40:52 – Contra’s engineering culture<br>41:47 – Why traditional PR reviews don’t scale<br>43:22 – Introducing Loom-Driven Development<br>45:12 – How looms transformed the review process<br>52:38 – Using GetDX to measure engineering friction<br>53:07 – How the team uses AI (Claude, etc.)<br>56:26 – Closing thoughts on DX and engineering philosophy<br>58:05 – Contra needs Postgres experts<br>59:00 – Where to find Gajus</p>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>Building serverless vector search with Turbopuffer CEO, Simon Eskildsen</title>
      <itunes:episode>26</itunes:episode>
      <podcast:episode>26</podcast:episode>
      <itunes:title>Building serverless vector search with Turbopuffer CEO, Simon Eskildsen</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">9c846005-b340-4a90-abbd-2f4fa152e2b4</guid>
      <link>https://share.transistor.fm/s/2ae920a0</link>
      <description>
        <![CDATA[<p>In this episode, Aaron Francis talks with Simon Eskildsen, co-founder and CEO of TurboPuffer, about building a high-performance search engine and database that runs entirely on object storage. They dive deep on Simon's time as an engineer at Shopify, database design trade-offs, and how TurboPuffer powers modern AI workloads like Cursor and Notion.</p><p>Follow Simon:<br>Twitter: https://twitter.com/Sirupsen<br>LinkedIn: https://ca.linkedin.com/in/sirupsen<br>Turbopuffer: https://turbopuffer.com</p><p>Follow Aaron:<br>Twitter/X:  https://twitter.com/aarondfrancis <br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g  (Subscribe today)<br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Chapters<br>00:00 - Introduction<br>01:11 - Simon’s background and time at Shopify<br>03:01 - The Rails glory days and early developer experiences<br>04:55 - From PHP to Rails and joining Shopify<br>06:14 - The viral blog post that led to Shopify<br>09:03 - Discovering engineering talent through GitHub<br>10:06 - Scaling Shopify’s infrastructure to millions of requests per second<br>12:47 - Lessons from hypergrowth and burnout<br>14:46 - Life after Shopify and “angel engineering”<br>16:31 - The Readwise problem and discovering vector embeddings<br>18:22 - The high cost of vector databases and napkin math<br>19:14 - Building TurboPuffer on object storage<br>21:20 - Landing Cursor as the first big customer<br>23:00 - What TurboPuffer actually is<br>25:26 - Why object storage now works for databases<br>28:37 - How TurboPuffer stores and retrieves data<br>31:06 - What’s inside those S3 files<br>33:02 - Explaining vectors and embeddings<br>35:55 - How TurboPuffer v1 handled search<br>38:00 - Transitioning from search engine to database<br>44:09 - How Turbopuffer v2 and v3 improved performance<br>47:00 - Smart caching and architecture optimizations<br>49:04 - Trade-offs: high write latency and cold queries<br>51:03 - Cache warming and primitives<br>52:25 - Comparing object storage providers (AWS, GCP, Azure)<br>55:02 - Building a multi-cloud S3-compatible client<br>57:11 - Who TurboPuffer serves and the scale it runs at<br>59:31 - Connecting data to AI and the global vision<br>1:00:15 - Company size, scale, and hiring<br>1:01:36 - Roadmap and what’s next for TurboPuffer<br>1:03:10 - Why you should (or shouldn’t) use TurboPuffer<br>1:05:15 - Closing thoughts and where to find Simon</p>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>In this episode, Aaron Francis talks with Simon Eskildsen, co-founder and CEO of TurboPuffer, about building a high-performance search engine and database that runs entirely on object storage. They dive deep on Simon's time as an engineer at Shopify, database design trade-offs, and how TurboPuffer powers modern AI workloads like Cursor and Notion.</p><p>Follow Simon:<br>Twitter: https://twitter.com/Sirupsen<br>LinkedIn: https://ca.linkedin.com/in/sirupsen<br>Turbopuffer: https://turbopuffer.com</p><p>Follow Aaron:<br>Twitter/X:  https://twitter.com/aarondfrancis <br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g  (Subscribe today)<br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Chapters<br>00:00 - Introduction<br>01:11 - Simon’s background and time at Shopify<br>03:01 - The Rails glory days and early developer experiences<br>04:55 - From PHP to Rails and joining Shopify<br>06:14 - The viral blog post that led to Shopify<br>09:03 - Discovering engineering talent through GitHub<br>10:06 - Scaling Shopify’s infrastructure to millions of requests per second<br>12:47 - Lessons from hypergrowth and burnout<br>14:46 - Life after Shopify and “angel engineering”<br>16:31 - The Readwise problem and discovering vector embeddings<br>18:22 - The high cost of vector databases and napkin math<br>19:14 - Building TurboPuffer on object storage<br>21:20 - Landing Cursor as the first big customer<br>23:00 - What TurboPuffer actually is<br>25:26 - Why object storage now works for databases<br>28:37 - How TurboPuffer stores and retrieves data<br>31:06 - What’s inside those S3 files<br>33:02 - Explaining vectors and embeddings<br>35:55 - How TurboPuffer v1 handled search<br>38:00 - Transitioning from search engine to database<br>44:09 - How Turbopuffer v2 and v3 improved performance<br>47:00 - Smart caching and architecture optimizations<br>49:04 - Trade-offs: high write latency and cold queries<br>51:03 - Cache warming and primitives<br>52:25 - Comparing object storage providers (AWS, GCP, Azure)<br>55:02 - Building a multi-cloud S3-compatible client<br>57:11 - Who TurboPuffer serves and the scale it runs at<br>59:31 - Connecting data to AI and the global vision<br>1:00:15 - Company size, scale, and hiring<br>1:01:36 - Roadmap and what’s next for TurboPuffer<br>1:03:10 - Why you should (or shouldn’t) use TurboPuffer<br>1:05:15 - Closing thoughts and where to find Simon</p>]]>
      </content:encoded>
      <pubDate>Thu, 13 Nov 2025 11:00:00 -0600</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/2ae920a0/0959f904.mp3" length="160341839" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:duration>4008</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>In this episode, Aaron Francis talks with Simon Eskildsen, co-founder and CEO of TurboPuffer, about building a high-performance search engine and database that runs entirely on object storage. They dive deep on Simon's time as an engineer at Shopify, database design trade-offs, and how TurboPuffer powers modern AI workloads like Cursor and Notion.</p><p>Follow Simon:<br>Twitter: https://twitter.com/Sirupsen<br>LinkedIn: https://ca.linkedin.com/in/sirupsen<br>Turbopuffer: https://turbopuffer.com</p><p>Follow Aaron:<br>Twitter/X:  https://twitter.com/aarondfrancis <br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g  (Subscribe today)<br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Chapters<br>00:00 - Introduction<br>01:11 - Simon’s background and time at Shopify<br>03:01 - The Rails glory days and early developer experiences<br>04:55 - From PHP to Rails and joining Shopify<br>06:14 - The viral blog post that led to Shopify<br>09:03 - Discovering engineering talent through GitHub<br>10:06 - Scaling Shopify’s infrastructure to millions of requests per second<br>12:47 - Lessons from hypergrowth and burnout<br>14:46 - Life after Shopify and “angel engineering”<br>16:31 - The Readwise problem and discovering vector embeddings<br>18:22 - The high cost of vector databases and napkin math<br>19:14 - Building TurboPuffer on object storage<br>21:20 - Landing Cursor as the first big customer<br>23:00 - What TurboPuffer actually is<br>25:26 - Why object storage now works for databases<br>28:37 - How TurboPuffer stores and retrieves data<br>31:06 - What’s inside those S3 files<br>33:02 - Explaining vectors and embeddings<br>35:55 - How TurboPuffer v1 handled search<br>38:00 - Transitioning from search engine to database<br>44:09 - How Turbopuffer v2 and v3 improved performance<br>47:00 - Smart caching and architecture optimizations<br>49:04 - Trade-offs: high write latency and cold queries<br>51:03 - Cache warming and primitives<br>52:25 - Comparing object storage providers (AWS, GCP, Azure)<br>55:02 - Building a multi-cloud S3-compatible client<br>57:11 - Who TurboPuffer serves and the scale it runs at<br>59:31 - Connecting data to AI and the global vision<br>1:00:15 - Company size, scale, and hiring<br>1:01:36 - Roadmap and what’s next for TurboPuffer<br>1:03:10 - Why you should (or shouldn’t) use TurboPuffer<br>1:05:15 - Closing thoughts and where to find Simon</p>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>Building an S3 Competitor with Tigris CEO Ovais Tariq</title>
      <itunes:episode>25</itunes:episode>
      <podcast:episode>25</podcast:episode>
      <itunes:title>Building an S3 Competitor with Tigris CEO Ovais Tariq</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">ad90db9d-0c8b-4230-a3c8-b2917f553b64</guid>
      <link>https://share.transistor.fm/s/4f8bb99d</link>
      <description>
        <![CDATA[<p>Aaron talks with Ovais Tariq, co-founder and CEO of Tigris Data and former Uber engineer who helped scale one of the world’s largest distributed systems. They discuss Uber’s hyperscale infrastructure, what it takes to build an S3-compatible object store from scratch, and how distributed storage is evolving for the AI era.</p><p>Follow Ovais:<br>Twitter: https://twitter.com/ovaistariq<br>LinkedIn: https://www.linkedin.com/in/ovaistariq<br>Tigris: https://www.tigrisdata.com</p><p>Follow Aaron:<br>Twitter/X:  https://twitter.com/aarondfrancis <br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g  (Subscribe today)<br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Chapters:<br>00:00 - Introduction and overview of the episode<br>01:35 - Ovais’s background and introduction to Tigris<br>03:00 - Building distributed databases and infrastructure at Uber<br>06:00 - Uber’s in-house philosophy and massive data scale<br>09:00 - Hardware, power density, and talking to chip manufacturers<br>12:00 - Learning curve of scaling hardware and data centers<br>14:00 - The Halloween outage and lessons from Cassandra<br>16:00 - Building data centers across the world for Uber<br>17:00 - Founding Tigris and the vision for global storage<br>18:45 - How Tigris differs from AWS S3<br>20:00 - The architecture of Tigris: caching, metadata, and replication<br>32:00 - Why Tigris uses FoundationDB and its reliability<br>36:00 - Managing global and regional metadata<br>38:00 - How Tigris dynamically moves and caches data<br>41:30 - Building their own data centers and backbone<br>43:45 - Specialized storage for AI workloads<br>46:00 - Small file optimization and real-world use cases<br>49:00 - Snapshots, forking, and agentic AI workflows<br>51:00 - How AI transformed Tigris’s customer base<br>54:00 - Partnership with Fly.io and the distributed cloud ecosystem<br>57:00 - Growth, customers, and focus on media and AI companies<br>59:00 - What’s next for Tigris: distributed file system plans<br>1:01:00 - Technical challenges and building trust in durability<br>1:03:00 - Call to action: try Tigris and upcoming snapshot feature<br>1:05:00 - Advice for engineers leaving big companies to start something new<br>1:06:30 - Where to find Ovais online and closing remarks</p>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>Aaron talks with Ovais Tariq, co-founder and CEO of Tigris Data and former Uber engineer who helped scale one of the world’s largest distributed systems. They discuss Uber’s hyperscale infrastructure, what it takes to build an S3-compatible object store from scratch, and how distributed storage is evolving for the AI era.</p><p>Follow Ovais:<br>Twitter: https://twitter.com/ovaistariq<br>LinkedIn: https://www.linkedin.com/in/ovaistariq<br>Tigris: https://www.tigrisdata.com</p><p>Follow Aaron:<br>Twitter/X:  https://twitter.com/aarondfrancis <br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g  (Subscribe today)<br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Chapters:<br>00:00 - Introduction and overview of the episode<br>01:35 - Ovais’s background and introduction to Tigris<br>03:00 - Building distributed databases and infrastructure at Uber<br>06:00 - Uber’s in-house philosophy and massive data scale<br>09:00 - Hardware, power density, and talking to chip manufacturers<br>12:00 - Learning curve of scaling hardware and data centers<br>14:00 - The Halloween outage and lessons from Cassandra<br>16:00 - Building data centers across the world for Uber<br>17:00 - Founding Tigris and the vision for global storage<br>18:45 - How Tigris differs from AWS S3<br>20:00 - The architecture of Tigris: caching, metadata, and replication<br>32:00 - Why Tigris uses FoundationDB and its reliability<br>36:00 - Managing global and regional metadata<br>38:00 - How Tigris dynamically moves and caches data<br>41:30 - Building their own data centers and backbone<br>43:45 - Specialized storage for AI workloads<br>46:00 - Small file optimization and real-world use cases<br>49:00 - Snapshots, forking, and agentic AI workflows<br>51:00 - How AI transformed Tigris’s customer base<br>54:00 - Partnership with Fly.io and the distributed cloud ecosystem<br>57:00 - Growth, customers, and focus on media and AI companies<br>59:00 - What’s next for Tigris: distributed file system plans<br>1:01:00 - Technical challenges and building trust in durability<br>1:03:00 - Call to action: try Tigris and upcoming snapshot feature<br>1:05:00 - Advice for engineers leaving big companies to start something new<br>1:06:30 - Where to find Ovais online and closing remarks</p>]]>
      </content:encoded>
      <pubDate>Thu, 06 Nov 2025 11:00:00 -0600</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/4f8bb99d/cbcb6027.mp3" length="161908541" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:duration>4047</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>Aaron talks with Ovais Tariq, co-founder and CEO of Tigris Data and former Uber engineer who helped scale one of the world’s largest distributed systems. They discuss Uber’s hyperscale infrastructure, what it takes to build an S3-compatible object store from scratch, and how distributed storage is evolving for the AI era.</p><p>Follow Ovais:<br>Twitter: https://twitter.com/ovaistariq<br>LinkedIn: https://www.linkedin.com/in/ovaistariq<br>Tigris: https://www.tigrisdata.com</p><p>Follow Aaron:<br>Twitter/X:  https://twitter.com/aarondfrancis <br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g  (Subscribe today)<br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Chapters:<br>00:00 - Introduction and overview of the episode<br>01:35 - Ovais’s background and introduction to Tigris<br>03:00 - Building distributed databases and infrastructure at Uber<br>06:00 - Uber’s in-house philosophy and massive data scale<br>09:00 - Hardware, power density, and talking to chip manufacturers<br>12:00 - Learning curve of scaling hardware and data centers<br>14:00 - The Halloween outage and lessons from Cassandra<br>16:00 - Building data centers across the world for Uber<br>17:00 - Founding Tigris and the vision for global storage<br>18:45 - How Tigris differs from AWS S3<br>20:00 - The architecture of Tigris: caching, metadata, and replication<br>32:00 - Why Tigris uses FoundationDB and its reliability<br>36:00 - Managing global and regional metadata<br>38:00 - How Tigris dynamically moves and caches data<br>41:30 - Building their own data centers and backbone<br>43:45 - Specialized storage for AI workloads<br>46:00 - Small file optimization and real-world use cases<br>49:00 - Snapshots, forking, and agentic AI workflows<br>51:00 - How AI transformed Tigris’s customer base<br>54:00 - Partnership with Fly.io and the distributed cloud ecosystem<br>57:00 - Growth, customers, and focus on media and AI companies<br>59:00 - What’s next for Tigris: distributed file system plans<br>1:01:00 - Technical challenges and building trust in durability<br>1:03:00 - Call to action: try Tigris and upcoming snapshot feature<br>1:05:00 - Advice for engineers leaving big companies to start something new<br>1:06:30 - Where to find Ovais online and closing remarks</p>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>Rewriting SQLite from prison with Preston Thorpe</title>
      <itunes:episode>24</itunes:episode>
      <podcast:episode>24</podcast:episode>
      <itunes:title>Rewriting SQLite from prison with Preston Thorpe</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">b9c14fb5-4584-46c2-a2b2-3c9f7913bc95</guid>
      <link>https://share.transistor.fm/s/04123808</link>
      <description>
        <![CDATA[<p>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.</p><p>Follow Preston and Turso:<br>LinkedIn: https://www.linkedin.com/in/PThorpe92<br>Preston's Blog: https://pthorpe92.dev<br>GitHub: https://github.com/PThorpe92<br>Turso: https://turso.tech</p><p>Follow Aaron:<br>Twitter/X:  https://twitter.com/aarondfrancis <br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g  (Subscribe today)<br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Chapters:<br>00:00 - Intro and Preston’s story<br>02:13 - How Preston learned programming in prison<br>06:06 - Making his parents proud and turning life around<br>09:01 - Getting his first job at Unlock Labs<br>10:47 - Discovering Turso and contributing to open source<br>12:53 - From contributor to senior engineer at Turso<br>22:27 - What Preston works on inside Turso<br>24:00 - Challenges of rewriting SQLite in Rust<br>26:00 - Why concurrent writes matter<br>27:57 - How Turso implements concurrent writes<br>35:02 - Maintaining SQLite compatibility<br>37:03 - MVCC explained simply<br>43:40 - How Turso handles MVCC and logging<br>46:03 - Open source contributions and performance work<br>46:23 - Implementing live materialized views<br>50:55 - The DBSP paper and incremental computation<br>52:55 - Sync and offline capabilities in Turso<br>56:45 - Change data capture and future possibilities<br>1:02:01 - Implementing foreign keys and fuzz testing<br>1:06:02 - Rebuilding SQLite’s virtual machine<br>1:08:10 - The quirks of SQLite’s codebase<br>1:10:47 - Preston’s upcoming release and what’s next<br>1:14:02 - Gratitude, reflection, and closing thoughts</p>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>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.</p><p>Follow Preston and Turso:<br>LinkedIn: https://www.linkedin.com/in/PThorpe92<br>Preston's Blog: https://pthorpe92.dev<br>GitHub: https://github.com/PThorpe92<br>Turso: https://turso.tech</p><p>Follow Aaron:<br>Twitter/X:  https://twitter.com/aarondfrancis <br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g  (Subscribe today)<br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Chapters:<br>00:00 - Intro and Preston’s story<br>02:13 - How Preston learned programming in prison<br>06:06 - Making his parents proud and turning life around<br>09:01 - Getting his first job at Unlock Labs<br>10:47 - Discovering Turso and contributing to open source<br>12:53 - From contributor to senior engineer at Turso<br>22:27 - What Preston works on inside Turso<br>24:00 - Challenges of rewriting SQLite in Rust<br>26:00 - Why concurrent writes matter<br>27:57 - How Turso implements concurrent writes<br>35:02 - Maintaining SQLite compatibility<br>37:03 - MVCC explained simply<br>43:40 - How Turso handles MVCC and logging<br>46:03 - Open source contributions and performance work<br>46:23 - Implementing live materialized views<br>50:55 - The DBSP paper and incremental computation<br>52:55 - Sync and offline capabilities in Turso<br>56:45 - Change data capture and future possibilities<br>1:02:01 - Implementing foreign keys and fuzz testing<br>1:06:02 - Rebuilding SQLite’s virtual machine<br>1:08:10 - The quirks of SQLite’s codebase<br>1:10:47 - Preston’s upcoming release and what’s next<br>1:14:02 - Gratitude, reflection, and closing thoughts</p>]]>
      </content:encoded>
      <pubDate>Thu, 30 Oct 2025 11:00:00 -0500</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/04123808/91a07af8.mp3" length="188358422" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:duration>4708</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>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.</p><p>Follow Preston and Turso:<br>LinkedIn: https://www.linkedin.com/in/PThorpe92<br>Preston's Blog: https://pthorpe92.dev<br>GitHub: https://github.com/PThorpe92<br>Turso: https://turso.tech</p><p>Follow Aaron:<br>Twitter/X:  https://twitter.com/aarondfrancis <br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g  (Subscribe today)<br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Chapters:<br>00:00 - Intro and Preston’s story<br>02:13 - How Preston learned programming in prison<br>06:06 - Making his parents proud and turning life around<br>09:01 - Getting his first job at Unlock Labs<br>10:47 - Discovering Turso and contributing to open source<br>12:53 - From contributor to senior engineer at Turso<br>22:27 - What Preston works on inside Turso<br>24:00 - Challenges of rewriting SQLite in Rust<br>26:00 - Why concurrent writes matter<br>27:57 - How Turso implements concurrent writes<br>35:02 - Maintaining SQLite compatibility<br>37:03 - MVCC explained simply<br>43:40 - How Turso handles MVCC and logging<br>46:03 - Open source contributions and performance work<br>46:23 - Implementing live materialized views<br>50:55 - The DBSP paper and incremental computation<br>52:55 - Sync and offline capabilities in Turso<br>56:45 - Change data capture and future possibilities<br>1:02:01 - Implementing foreign keys and fuzz testing<br>1:06:02 - Rebuilding SQLite’s virtual machine<br>1:08:10 - The quirks of SQLite’s codebase<br>1:10:47 - Preston’s upcoming release and what’s next<br>1:14:02 - Gratitude, reflection, and closing thoughts</p>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>A million transactions per second: building TigerBeetle with Joran Greef</title>
      <itunes:episode>23</itunes:episode>
      <podcast:episode>23</podcast:episode>
      <itunes:title>A million transactions per second: building TigerBeetle with Joran Greef</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">966ea152-9408-4468-8744-8f1a87ff4b6d</guid>
      <link>https://share.transistor.fm/s/56f3a492</link>
      <description>
        <![CDATA[<p>In this episode, Aaron talks with Joran Greef, CEO and creator of TigerBeetle, the world’s first financial transactions database. Joran takes us on a deep dive of on how TigerBeetle brings double-entry accounting principles directly into the database layer to achieve extreme correctness, performance, and fault tolerance at scale.</p><p>Follow Joran and TigerBeetle:<br>Twitter/X: https://twitter.com/jorandirkgreef<br>Website: https://tigerbeetle.com<br>GitHub: https://github.com/tigerbeetle/tigerbeetle<br>Tiger Style: https://github.com/tigerbeetle/tigerbeetle/blob/main/docs/TIGER_STYLE.md<br>YouTube: https://www.youtube.com/@UC3TlyQ3h6lC_jSWust2leGg </p><p>Follow Aaron:<br>Twitter/X:  https://twitter.com/aarondfrancis <br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g  (Subscribe today)<br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Chapters:<br>00:00 - Introduction and crossover between accounting and databases<br>01:50 - Meet Joran Greef and the origins of TigerBeetle<br>02:55 - What makes TigerBeetle different from general purpose databases<br>04:38 - The founding story and the 5,000-year history of transactions<br>07:42 - How modern commerce became highly transactional<br>10:06 - Recognizing the limits of general purpose databases<br>13:18 - From distributed systems to payment infrastructure<br>17:01 - Discovering bottlenecks in traditional database performance<br>19:58 - Why traditional databases can’t scale for microtransactions<br>23:05 - Introducing double-entry accounting concepts<br>25:20 - How double-entry accounting mirrors database design<br>31:35 - Modeling ledgers and event sourcing in Tiger Beetle<br>35:02 - Why TigerBeetle outperforms Postgres and MySQL<br>40:05 - Batching transactions for massive throughput<br>47:09 - Client-side batching and zero-copy efficiency<br>50:04 - Handling contention and concurrency internally<br>56:03 - Ensuring correctness and atomicity in transactions<br>57:17 - Designing for mission-critical systems and reliability<br>1:00:50 - Building safety through deterministic simulation testing<br>1:04:55 - Detecting and recovering from storage faults<br>1:10:00 - How TigerBeetle prevents data corruption<br>1:17:01 - Distributed replication and self-healing data<br>1:20:08 - Who’s using TigerBeetle and how it’s structured as a company<br>1:24:01 - How to learn more and get involved with TigerBeetle<br>1:26:15 - Closing thoughts and where to find Joran online</p>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>In this episode, Aaron talks with Joran Greef, CEO and creator of TigerBeetle, the world’s first financial transactions database. Joran takes us on a deep dive of on how TigerBeetle brings double-entry accounting principles directly into the database layer to achieve extreme correctness, performance, and fault tolerance at scale.</p><p>Follow Joran and TigerBeetle:<br>Twitter/X: https://twitter.com/jorandirkgreef<br>Website: https://tigerbeetle.com<br>GitHub: https://github.com/tigerbeetle/tigerbeetle<br>Tiger Style: https://github.com/tigerbeetle/tigerbeetle/blob/main/docs/TIGER_STYLE.md<br>YouTube: https://www.youtube.com/@UC3TlyQ3h6lC_jSWust2leGg </p><p>Follow Aaron:<br>Twitter/X:  https://twitter.com/aarondfrancis <br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g  (Subscribe today)<br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Chapters:<br>00:00 - Introduction and crossover between accounting and databases<br>01:50 - Meet Joran Greef and the origins of TigerBeetle<br>02:55 - What makes TigerBeetle different from general purpose databases<br>04:38 - The founding story and the 5,000-year history of transactions<br>07:42 - How modern commerce became highly transactional<br>10:06 - Recognizing the limits of general purpose databases<br>13:18 - From distributed systems to payment infrastructure<br>17:01 - Discovering bottlenecks in traditional database performance<br>19:58 - Why traditional databases can’t scale for microtransactions<br>23:05 - Introducing double-entry accounting concepts<br>25:20 - How double-entry accounting mirrors database design<br>31:35 - Modeling ledgers and event sourcing in Tiger Beetle<br>35:02 - Why TigerBeetle outperforms Postgres and MySQL<br>40:05 - Batching transactions for massive throughput<br>47:09 - Client-side batching and zero-copy efficiency<br>50:04 - Handling contention and concurrency internally<br>56:03 - Ensuring correctness and atomicity in transactions<br>57:17 - Designing for mission-critical systems and reliability<br>1:00:50 - Building safety through deterministic simulation testing<br>1:04:55 - Detecting and recovering from storage faults<br>1:10:00 - How TigerBeetle prevents data corruption<br>1:17:01 - Distributed replication and self-healing data<br>1:20:08 - Who’s using TigerBeetle and how it’s structured as a company<br>1:24:01 - How to learn more and get involved with TigerBeetle<br>1:26:15 - Closing thoughts and where to find Joran online</p>]]>
      </content:encoded>
      <pubDate>Thu, 23 Oct 2025 12:54:15 -0500</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/56f3a492/108a4e9d.mp3" length="83420922" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:duration>5292</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>In this episode, Aaron talks with Joran Greef, CEO and creator of TigerBeetle, the world’s first financial transactions database. Joran takes us on a deep dive of on how TigerBeetle brings double-entry accounting principles directly into the database layer to achieve extreme correctness, performance, and fault tolerance at scale.</p><p>Follow Joran and TigerBeetle:<br>Twitter/X: https://twitter.com/jorandirkgreef<br>Website: https://tigerbeetle.com<br>GitHub: https://github.com/tigerbeetle/tigerbeetle<br>Tiger Style: https://github.com/tigerbeetle/tigerbeetle/blob/main/docs/TIGER_STYLE.md<br>YouTube: https://www.youtube.com/@UC3TlyQ3h6lC_jSWust2leGg </p><p>Follow Aaron:<br>Twitter/X:  https://twitter.com/aarondfrancis <br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g  (Subscribe today)<br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Chapters:<br>00:00 - Introduction and crossover between accounting and databases<br>01:50 - Meet Joran Greef and the origins of TigerBeetle<br>02:55 - What makes TigerBeetle different from general purpose databases<br>04:38 - The founding story and the 5,000-year history of transactions<br>07:42 - How modern commerce became highly transactional<br>10:06 - Recognizing the limits of general purpose databases<br>13:18 - From distributed systems to payment infrastructure<br>17:01 - Discovering bottlenecks in traditional database performance<br>19:58 - Why traditional databases can’t scale for microtransactions<br>23:05 - Introducing double-entry accounting concepts<br>25:20 - How double-entry accounting mirrors database design<br>31:35 - Modeling ledgers and event sourcing in Tiger Beetle<br>35:02 - Why TigerBeetle outperforms Postgres and MySQL<br>40:05 - Batching transactions for massive throughput<br>47:09 - Client-side batching and zero-copy efficiency<br>50:04 - Handling contention and concurrency internally<br>56:03 - Ensuring correctness and atomicity in transactions<br>57:17 - Designing for mission-critical systems and reliability<br>1:00:50 - Building safety through deterministic simulation testing<br>1:04:55 - Detecting and recovering from storage faults<br>1:10:00 - How TigerBeetle prevents data corruption<br>1:17:01 - Distributed replication and self-healing data<br>1:20:08 - Who’s using TigerBeetle and how it’s structured as a company<br>1:24:01 - How to learn more and get involved with TigerBeetle<br>1:26:15 - Closing thoughts and where to find Joran online</p>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>PlanetScale Postgres with CEO Sam Lambert</title>
      <itunes:episode>22</itunes:episode>
      <podcast:episode>22</podcast:episode>
      <itunes:title>PlanetScale Postgres with CEO Sam Lambert</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">83528e13-15ec-42af-abe0-a45f00741d15</guid>
      <link>https://share.transistor.fm/s/896b7cb4</link>
      <description>
        <![CDATA[<p>Sam Lambert, my former boss at PlanetScale, talks to me about PlanetScale moving from a MySQL company to now also having a Postgres offering. Sam shares why PlanetScale decided to move to Postgres, how MySQL and Postgres are different at a technical level, and how the change has impacted the company culture. Stay to the end for a special surprise!</p><p>PlanetScale Metal Episode: https://youtu.be/3r9PsVwGkg4<br>Join the waitlist to be notified of the MySQL for Developers release on Database School: <br>https://databaseschool.com/mysql</p><p>Follow Sam: <br>PlanetScale: https://planetscale.com<br>Twitter: https://twitter.com/isamlambert</p><p>Follow Aaron:<br>Twitter:  https://twitter.com/aarondfrancis <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.<br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g (Subscribe today)</p><p>Chapters:<br>00:00 - Inaugural episode on this channel<br>01:46 - Introducing Sam Lambert and his background<br>03:04 - How PlanetScale built on MySQL and Vitess<br>06:10 - Explaining the layers of PlanetScale’s architecture<br>09:57 - Node lifecycles, failover, and operational discipline<br>12:02 - How Vitess makes sharding work<br>14:21 - PlanetScale’s edge network and resharding<br>19:02 - Why downtime is unacceptable at scale<br>20:04 - From Metal to Postgres: the decision process<br>23:06 - Why Postgres vibes matter for startups<br>27:04 - How PlanetScale adapted its stack for Postgres<br>34:38 - Entering the Postgres ecosystem and extensions<br>41:02 - Permissions, security, and reliability trade-offs<br>45:04 - Building Ni: a Vitess-style system for Postgres<br>53:33 - Why PlanetScale insists on control for reliability<br>1:02:05 - Competing in the broader Postgres landscape<br>1:08:33 - Why PlanetScale stays “just a database”<br>1:12:33 - What GA means for Postgres at PlanetScale<br>1:17:43 - Call to action for new Postgres users<br>1:18:49 - Surprise!<br>1:22:21 - Wrap-up and where to find Sam</p>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>Sam Lambert, my former boss at PlanetScale, talks to me about PlanetScale moving from a MySQL company to now also having a Postgres offering. Sam shares why PlanetScale decided to move to Postgres, how MySQL and Postgres are different at a technical level, and how the change has impacted the company culture. Stay to the end for a special surprise!</p><p>PlanetScale Metal Episode: https://youtu.be/3r9PsVwGkg4<br>Join the waitlist to be notified of the MySQL for Developers release on Database School: <br>https://databaseschool.com/mysql</p><p>Follow Sam: <br>PlanetScale: https://planetscale.com<br>Twitter: https://twitter.com/isamlambert</p><p>Follow Aaron:<br>Twitter:  https://twitter.com/aarondfrancis <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.<br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g (Subscribe today)</p><p>Chapters:<br>00:00 - Inaugural episode on this channel<br>01:46 - Introducing Sam Lambert and his background<br>03:04 - How PlanetScale built on MySQL and Vitess<br>06:10 - Explaining the layers of PlanetScale’s architecture<br>09:57 - Node lifecycles, failover, and operational discipline<br>12:02 - How Vitess makes sharding work<br>14:21 - PlanetScale’s edge network and resharding<br>19:02 - Why downtime is unacceptable at scale<br>20:04 - From Metal to Postgres: the decision process<br>23:06 - Why Postgres vibes matter for startups<br>27:04 - How PlanetScale adapted its stack for Postgres<br>34:38 - Entering the Postgres ecosystem and extensions<br>41:02 - Permissions, security, and reliability trade-offs<br>45:04 - Building Ni: a Vitess-style system for Postgres<br>53:33 - Why PlanetScale insists on control for reliability<br>1:02:05 - Competing in the broader Postgres landscape<br>1:08:33 - Why PlanetScale stays “just a database”<br>1:12:33 - What GA means for Postgres at PlanetScale<br>1:17:43 - Call to action for new Postgres users<br>1:18:49 - Surprise!<br>1:22:21 - Wrap-up and where to find Sam</p>]]>
      </content:encoded>
      <pubDate>Mon, 22 Sep 2025 11:34:49 -0500</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/896b7cb4/5309170f.mp3" length="57451947" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:duration>3999</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>Sam Lambert, my former boss at PlanetScale, talks to me about PlanetScale moving from a MySQL company to now also having a Postgres offering. Sam shares why PlanetScale decided to move to Postgres, how MySQL and Postgres are different at a technical level, and how the change has impacted the company culture. Stay to the end for a special surprise!</p><p>PlanetScale Metal Episode: https://youtu.be/3r9PsVwGkg4<br>Join the waitlist to be notified of the MySQL for Developers release on Database School: <br>https://databaseschool.com/mysql</p><p>Follow Sam: <br>PlanetScale: https://planetscale.com<br>Twitter: https://twitter.com/isamlambert</p><p>Follow Aaron:<br>Twitter:  https://twitter.com/aarondfrancis <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.<br>Database School: https://databaseschool.com<br>Database School YouTube Channel: https://www.youtube.com/@UCT3XN4RtcFhmrWl8tf_o49g (Subscribe today)</p><p>Chapters:<br>00:00 - Inaugural episode on this channel<br>01:46 - Introducing Sam Lambert and his background<br>03:04 - How PlanetScale built on MySQL and Vitess<br>06:10 - Explaining the layers of PlanetScale’s architecture<br>09:57 - Node lifecycles, failover, and operational discipline<br>12:02 - How Vitess makes sharding work<br>14:21 - PlanetScale’s edge network and resharding<br>19:02 - Why downtime is unacceptable at scale<br>20:04 - From Metal to Postgres: the decision process<br>23:06 - Why Postgres vibes matter for startups<br>27:04 - How PlanetScale adapted its stack for Postgres<br>34:38 - Entering the Postgres ecosystem and extensions<br>41:02 - Permissions, security, and reliability trade-offs<br>45:04 - Building Ni: a Vitess-style system for Postgres<br>53:33 - Why PlanetScale insists on control for reliability<br>1:02:05 - Competing in the broader Postgres landscape<br>1:08:33 - Why PlanetScale stays “just a database”<br>1:12:33 - What GA means for Postgres at PlanetScale<br>1:17:43 - Call to action for new Postgres users<br>1:18:49 - Surprise!<br>1:22:21 - Wrap-up and where to find Sam</p>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>The database for all your AI needs</title>
      <itunes:episode>21</itunes:episode>
      <podcast:episode>21</podcast:episode>
      <itunes:title>The database for all your AI needs</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">8919897e-8c46-4646-9d67-2bc62aaf292d</guid>
      <link>https://share.transistor.fm/s/e91e5030</link>
      <description>
        <![CDATA[<p><strong>Marcel Kornacker</strong>, the creator of Apache Impala and co-creator of Apache Parquet, joins me to talk about his latest project: <strong>Pixeltable</strong>, a multimodal AI database that combines structured and unstructured data with rich, Python-native workflows.</p><p><br></p><p>From ingestion to vector search, transcription to snapshots, Pixeltable eliminates painful data plumbing for modern AI teams.</p><p><br></p><p><br></p><p><strong>Follow Marcel</strong></p><ul><li>Pixeltable: https://pixeltable.com</li><li>Pixeltable GitHub: https://github.com/pixeltable/pixeltable</li><li>LinkedIn: https://www.linkedin.com/in/marcelkornacker</li></ul><p><br></p><p><br></p><p><strong>Follow Aaron</strong></p><ul><li>Twitter: https://twitter.com/aarondfrancis</li><li>LinkedIn: https://www.linkedin.com/in/aarondfrancis</li><li>Website: https://aaronfrancis.com – find articles, podcasts, courses, and more</li><li>Database School: https://databaseschool.com</li></ul><p><br></p><p><br></p><p><strong>Chapters</strong></p><ul><li>0:00 – Introduction</li><li>0:20 – Meet Marcel Kornacker</li><li>1:19 – Early career and grad school in databases</li><li>2:12 – Joining Google and building F1</li><li>3:42 – How F1 used Spanner at Google</li><li>4:01 – Starting Apache Impala at Cloudera</li><li>6:02 – Why SQL still matters</li><li>7:29 – What keeps Marcel fascinated with databases</li><li>9:37 – The “SQL is dead” waves and shift to AI</li><li>10:21 – Observing pain points in computer vision pipelines</li><li>13:02 – Multimodal data challenges and the idea for Pixeltable</li><li>16:10 – How Pixeltable handles transformations with computed columns</li><li>26:29 – Example: processing video, audio, and transcripts in Pixeltable</li><li>33:12 – DAG execution and parallelism explained</li><li>37:00 – Transactional guarantees in Pixeltable</li><li>39:00 – Iterators and chunking data for search</li><li>42:26 – Using embeddings and semantic search</li><li>47:05 – Updating data and incremental recomputation</li><li>50:06 – Thoughts on RAG and hybrid search</li><li>53:14 – Real-world use cases and dataset curation</li><li>57:00 – Example: labeling food waste on cruise ships</li><li>1:02:00 – Labeling workflows and syncing annotations</li><li>1:02:41 – Pixeltable’s roadmap and cloud vision</li><li>1:07:10 – How to get involved with Pixeltable</li><li>1:09:03 – Closing and where to find Marcel</li></ul>]]>
      </description>
      <content:encoded>
        <![CDATA[<p><strong>Marcel Kornacker</strong>, the creator of Apache Impala and co-creator of Apache Parquet, joins me to talk about his latest project: <strong>Pixeltable</strong>, a multimodal AI database that combines structured and unstructured data with rich, Python-native workflows.</p><p><br></p><p>From ingestion to vector search, transcription to snapshots, Pixeltable eliminates painful data plumbing for modern AI teams.</p><p><br></p><p><br></p><p><strong>Follow Marcel</strong></p><ul><li>Pixeltable: https://pixeltable.com</li><li>Pixeltable GitHub: https://github.com/pixeltable/pixeltable</li><li>LinkedIn: https://www.linkedin.com/in/marcelkornacker</li></ul><p><br></p><p><br></p><p><strong>Follow Aaron</strong></p><ul><li>Twitter: https://twitter.com/aarondfrancis</li><li>LinkedIn: https://www.linkedin.com/in/aarondfrancis</li><li>Website: https://aaronfrancis.com – find articles, podcasts, courses, and more</li><li>Database School: https://databaseschool.com</li></ul><p><br></p><p><br></p><p><strong>Chapters</strong></p><ul><li>0:00 – Introduction</li><li>0:20 – Meet Marcel Kornacker</li><li>1:19 – Early career and grad school in databases</li><li>2:12 – Joining Google and building F1</li><li>3:42 – How F1 used Spanner at Google</li><li>4:01 – Starting Apache Impala at Cloudera</li><li>6:02 – Why SQL still matters</li><li>7:29 – What keeps Marcel fascinated with databases</li><li>9:37 – The “SQL is dead” waves and shift to AI</li><li>10:21 – Observing pain points in computer vision pipelines</li><li>13:02 – Multimodal data challenges and the idea for Pixeltable</li><li>16:10 – How Pixeltable handles transformations with computed columns</li><li>26:29 – Example: processing video, audio, and transcripts in Pixeltable</li><li>33:12 – DAG execution and parallelism explained</li><li>37:00 – Transactional guarantees in Pixeltable</li><li>39:00 – Iterators and chunking data for search</li><li>42:26 – Using embeddings and semantic search</li><li>47:05 – Updating data and incremental recomputation</li><li>50:06 – Thoughts on RAG and hybrid search</li><li>53:14 – Real-world use cases and dataset curation</li><li>57:00 – Example: labeling food waste on cruise ships</li><li>1:02:00 – Labeling workflows and syncing annotations</li><li>1:02:41 – Pixeltable’s roadmap and cloud vision</li><li>1:07:10 – How to get involved with Pixeltable</li><li>1:09:03 – Closing and where to find Marcel</li></ul>]]>
      </content:encoded>
      <pubDate>Tue, 16 Sep 2025 12:11:02 -0500</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/e91e5030/fb559afe.mp3" length="46365283" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:duration>3607</itunes:duration>
      <itunes:summary>
        <![CDATA[<p><strong>Marcel Kornacker</strong>, the creator of Apache Impala and co-creator of Apache Parquet, joins me to talk about his latest project: <strong>Pixeltable</strong>, a multimodal AI database that combines structured and unstructured data with rich, Python-native workflows.</p><p><br></p><p>From ingestion to vector search, transcription to snapshots, Pixeltable eliminates painful data plumbing for modern AI teams.</p><p><br></p><p><br></p><p><strong>Follow Marcel</strong></p><ul><li>Pixeltable: https://pixeltable.com</li><li>Pixeltable GitHub: https://github.com/pixeltable/pixeltable</li><li>LinkedIn: https://www.linkedin.com/in/marcelkornacker</li></ul><p><br></p><p><br></p><p><strong>Follow Aaron</strong></p><ul><li>Twitter: https://twitter.com/aarondfrancis</li><li>LinkedIn: https://www.linkedin.com/in/aarondfrancis</li><li>Website: https://aaronfrancis.com – find articles, podcasts, courses, and more</li><li>Database School: https://databaseschool.com</li></ul><p><br></p><p><br></p><p><strong>Chapters</strong></p><ul><li>0:00 – Introduction</li><li>0:20 – Meet Marcel Kornacker</li><li>1:19 – Early career and grad school in databases</li><li>2:12 – Joining Google and building F1</li><li>3:42 – How F1 used Spanner at Google</li><li>4:01 – Starting Apache Impala at Cloudera</li><li>6:02 – Why SQL still matters</li><li>7:29 – What keeps Marcel fascinated with databases</li><li>9:37 – The “SQL is dead” waves and shift to AI</li><li>10:21 – Observing pain points in computer vision pipelines</li><li>13:02 – Multimodal data challenges and the idea for Pixeltable</li><li>16:10 – How Pixeltable handles transformations with computed columns</li><li>26:29 – Example: processing video, audio, and transcripts in Pixeltable</li><li>33:12 – DAG execution and parallelism explained</li><li>37:00 – Transactional guarantees in Pixeltable</li><li>39:00 – Iterators and chunking data for search</li><li>42:26 – Using embeddings and semantic search</li><li>47:05 – Updating data and incremental recomputation</li><li>50:06 – Thoughts on RAG and hybrid search</li><li>53:14 – Real-world use cases and dataset curation</li><li>57:00 – Example: labeling food waste on cruise ships</li><li>1:02:00 – Labeling workflows and syncing annotations</li><li>1:02:41 – Pixeltable’s roadmap and cloud vision</li><li>1:07:10 – How to get involved with Pixeltable</li><li>1:09:03 – Closing and where to find Marcel</li></ul>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>Sharding Postgres without extensions with PgDog founder, Lev Kokotov</title>
      <itunes:episode>20</itunes:episode>
      <podcast:episode>20</podcast:episode>
      <itunes:title>Sharding Postgres without extensions with PgDog founder, Lev Kokotov</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">13ace043-c7fd-4a90-8079-1c02715dd513</guid>
      <link>https://share.transistor.fm/s/210b326f</link>
      <description>
        <![CDATA[<p>I chat with Lev Kokotov to talk about building <strong>PgDog</strong>, an open-source sharding solution for Postgres that sits outside the database. Lev shares the journey from creating <strong>PgCat</strong> to launching <strong>PgDog</strong> through YC, the technical challenges of sharding, and why he believes scaling Postgres shouldn’t require extensions or rewrites.</p><p><br></p><p><strong>Follow Lev:</strong></p><ul><li>Twitter: https://twitter.com/levpgdog</li><li>PgDog: https://pgdog.dev</li></ul><p><br></p><p><strong>Follow Aaron:</strong></p><ul><li>Twitter: https://twitter.com/aarondfrancis</li><li>LinkedIn: https://www.linkedin.com/in/aarondfrancis</li><li>Website: https://aaronfrancis.com — find articles, podcasts, courses, and more.</li><li>Database School: https://databaseschool.com</li></ul><p><br></p><p><br></p><p><strong>Chapters</strong></p><ul><li>00:00 - Intro</li><li>01:27 - Lev’s self-taught to computer science degree journey</li><li>04:50 - Transition to Postgres discussion</li><li>05:24 - History of PgCat</li><li>07:06 - What PG Cat does and key features</li><li>08:59 - Why Lev built PgCat instead of extending PG Bouncer</li><li>10:06 - PG Cat’s current status and usage</li><li>12:20 - Moving from PgCat to PgDog</li><li>13:09 - Applying to YC as a solo founder</li><li>16:24 - YC pitch: the market gap for Postgres sharding</li><li>18:52 - High-level overview of PgDog</li><li>23:32 - Why PgDog is not an extension</li><li>25:57 - When to build Postgres extensions vs standalone tools</li><li>27:49 - PgDog architecture and query parsing</li><li>30:39 - Handling cross-shard queries and current capabilities</li><li>33:47 - How PgDog shards an existing large Postgres database</li><li>36:37 - Parallel replication streams for faster sharding</li><li>39:07 - Alternate resharding approaches</li><li>42:52 - Where PgDog draws the orchestration line</li><li>44:00 - Vision for PgDog Cloud vs bring-your-own-database</li><li>46:47 - Company status: first hire, design partners, and production use</li><li>50:45 - How deploys work for customers</li><li>52:20 - Importance of building closely with design partners</li><li>54:05 - Paid design partnerships and initial deployments</li><li>56:23 - Benefit of sitting outside Postgres for compatibility</li><li>58:32 - Near-term roadmap and long-term vision</li><li>1:01:03 - Where to find Lev online</li></ul>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>I chat with Lev Kokotov to talk about building <strong>PgDog</strong>, an open-source sharding solution for Postgres that sits outside the database. Lev shares the journey from creating <strong>PgCat</strong> to launching <strong>PgDog</strong> through YC, the technical challenges of sharding, and why he believes scaling Postgres shouldn’t require extensions or rewrites.</p><p><br></p><p><strong>Follow Lev:</strong></p><ul><li>Twitter: https://twitter.com/levpgdog</li><li>PgDog: https://pgdog.dev</li></ul><p><br></p><p><strong>Follow Aaron:</strong></p><ul><li>Twitter: https://twitter.com/aarondfrancis</li><li>LinkedIn: https://www.linkedin.com/in/aarondfrancis</li><li>Website: https://aaronfrancis.com — find articles, podcasts, courses, and more.</li><li>Database School: https://databaseschool.com</li></ul><p><br></p><p><br></p><p><strong>Chapters</strong></p><ul><li>00:00 - Intro</li><li>01:27 - Lev’s self-taught to computer science degree journey</li><li>04:50 - Transition to Postgres discussion</li><li>05:24 - History of PgCat</li><li>07:06 - What PG Cat does and key features</li><li>08:59 - Why Lev built PgCat instead of extending PG Bouncer</li><li>10:06 - PG Cat’s current status and usage</li><li>12:20 - Moving from PgCat to PgDog</li><li>13:09 - Applying to YC as a solo founder</li><li>16:24 - YC pitch: the market gap for Postgres sharding</li><li>18:52 - High-level overview of PgDog</li><li>23:32 - Why PgDog is not an extension</li><li>25:57 - When to build Postgres extensions vs standalone tools</li><li>27:49 - PgDog architecture and query parsing</li><li>30:39 - Handling cross-shard queries and current capabilities</li><li>33:47 - How PgDog shards an existing large Postgres database</li><li>36:37 - Parallel replication streams for faster sharding</li><li>39:07 - Alternate resharding approaches</li><li>42:52 - Where PgDog draws the orchestration line</li><li>44:00 - Vision for PgDog Cloud vs bring-your-own-database</li><li>46:47 - Company status: first hire, design partners, and production use</li><li>50:45 - How deploys work for customers</li><li>52:20 - Importance of building closely with design partners</li><li>54:05 - Paid design partnerships and initial deployments</li><li>56:23 - Benefit of sitting outside Postgres for compatibility</li><li>58:32 - Near-term roadmap and long-term vision</li><li>1:01:03 - Where to find Lev online</li></ul>]]>
      </content:encoded>
      <pubDate>Tue, 19 Aug 2025 13:15:00 -0500</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/210b326f/9de0293b.mp3" length="46959112" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:duration>2933</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>I chat with Lev Kokotov to talk about building <strong>PgDog</strong>, an open-source sharding solution for Postgres that sits outside the database. Lev shares the journey from creating <strong>PgCat</strong> to launching <strong>PgDog</strong> through YC, the technical challenges of sharding, and why he believes scaling Postgres shouldn’t require extensions or rewrites.</p><p><br></p><p><strong>Follow Lev:</strong></p><ul><li>Twitter: https://twitter.com/levpgdog</li><li>PgDog: https://pgdog.dev</li></ul><p><br></p><p><strong>Follow Aaron:</strong></p><ul><li>Twitter: https://twitter.com/aarondfrancis</li><li>LinkedIn: https://www.linkedin.com/in/aarondfrancis</li><li>Website: https://aaronfrancis.com — find articles, podcasts, courses, and more.</li><li>Database School: https://databaseschool.com</li></ul><p><br></p><p><br></p><p><strong>Chapters</strong></p><ul><li>00:00 - Intro</li><li>01:27 - Lev’s self-taught to computer science degree journey</li><li>04:50 - Transition to Postgres discussion</li><li>05:24 - History of PgCat</li><li>07:06 - What PG Cat does and key features</li><li>08:59 - Why Lev built PgCat instead of extending PG Bouncer</li><li>10:06 - PG Cat’s current status and usage</li><li>12:20 - Moving from PgCat to PgDog</li><li>13:09 - Applying to YC as a solo founder</li><li>16:24 - YC pitch: the market gap for Postgres sharding</li><li>18:52 - High-level overview of PgDog</li><li>23:32 - Why PgDog is not an extension</li><li>25:57 - When to build Postgres extensions vs standalone tools</li><li>27:49 - PgDog architecture and query parsing</li><li>30:39 - Handling cross-shard queries and current capabilities</li><li>33:47 - How PgDog shards an existing large Postgres database</li><li>36:37 - Parallel replication streams for faster sharding</li><li>39:07 - Alternate resharding approaches</li><li>42:52 - Where PgDog draws the orchestration line</li><li>44:00 - Vision for PgDog Cloud vs bring-your-own-database</li><li>46:47 - Company status: first hire, design partners, and production use</li><li>50:45 - How deploys work for customers</li><li>52:20 - Importance of building closely with design partners</li><li>54:05 - Paid design partnerships and initial deployments</li><li>56:23 - Benefit of sitting outside Postgres for compatibility</li><li>58:32 - Near-term roadmap and long-term vision</li><li>1:01:03 - Where to find Lev online</li></ul>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>Rewriting SQLite from scratch (yes, really)</title>
      <itunes:episode>19</itunes:episode>
      <podcast:episode>19</podcast:episode>
      <itunes:title>Rewriting SQLite from scratch (yes, really)</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">f141ce55-c47c-4b19-bb4c-180d05c08feb</guid>
      <link>https://share.transistor.fm/s/e67ca4b7</link>
      <description>
        <![CDATA[<p>Want to learn more about SQLite?  <br>Check out my course on SQLite: https://highperformancesqlite.com/?ref=yt  </p><p>In this episode of Database School, I chat with Glauber Costa, CEO of Turso, about their audacious decision to rewrite SQLite from the ground up.  </p><p>We cover the technical motivations, open contribution philosophy, and how deterministic simulation testing is unlocking new levels of reliability.  </p><p>Get your free SQLite reference guide: https://highperformancesqlite.com/products/sqlite-reference-guide.  </p><p>Follow Glauber:  <br>Twitter: https://twitter.com/glcst  <br>Turso: https://tur.so/af  </p><p>Follow Aaron:  <br>Twitter: https://twitter.com/aarondfrancis  <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis  <br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.  </p><p>Database school: https://databaseschool.com  </p><p>Chapters:  <br>00:00 - Intro to guest Glauber Costa  <br>00:58 - Glauber's background and path to databases  <br>02:23 - Moving to Texas and life changes  <br>05:32 - The origin story of Turso  <br>07:55 - Why fork SQLite in the first place?  <br>10:28 - SQLite’s closed contribution model  <br>12:00 - Launching libSQL as an open contribution fork  <br>13:43 - Building Turso Cloud for serverless SQLite  <br>14:57 - Limitations of forking SQLite  <br>17:00 - Deciding to rewrite SQLite from scratch  <br>19:08 - Branding mistakes and naming decisions  <br>22:29 - Differentiating Turso (the database) from Turso Cloud  <br>24:00 - Technical barriers that led to the rewrite  <br>28:00 - Why libSQL plateaued for deeper improvements  <br>30:14 - Big business partner request leads to deeper rethink  <br>31:23 - The rewrite begins  <br>33:36 - Early community traction and GitHub stars  <br>35:00 - Hiring contributors from the community  <br>36:58 - Reigniting the original vision  <br>39:40 - Turso’s core business thesis  <br>42:00 - Fully pivoting the company around the rewrite  <br>45:16 - How GitHub contributors signal business alignment  <br>47:10 - SQLite’s rock-solid rep and test suite challenges  <br>49:00 - The magic of deterministic simulation testing  <br>53:00 - How the simulator injects and replays IO failures  <br>56:00 - The role of property-based testing  <br>58:54 - Offering cash for bugs that break data integrity  <br>1:01:05 - Deterministic testing vs traditional testing  <br>1:03:44 - What it took to release Turso Alpha  <br>1:05:50 - Encouraging contributors with real incentives  <br>1:07:50 - How to get involved and contribute  <br>1:20:00 - Upcoming roadmap: indexes, CDC, schema changes  <br>1:23:40 - Final thoughts and where to find Turso</p>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>Want to learn more about SQLite?  <br>Check out my course on SQLite: https://highperformancesqlite.com/?ref=yt  </p><p>In this episode of Database School, I chat with Glauber Costa, CEO of Turso, about their audacious decision to rewrite SQLite from the ground up.  </p><p>We cover the technical motivations, open contribution philosophy, and how deterministic simulation testing is unlocking new levels of reliability.  </p><p>Get your free SQLite reference guide: https://highperformancesqlite.com/products/sqlite-reference-guide.  </p><p>Follow Glauber:  <br>Twitter: https://twitter.com/glcst  <br>Turso: https://tur.so/af  </p><p>Follow Aaron:  <br>Twitter: https://twitter.com/aarondfrancis  <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis  <br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.  </p><p>Database school: https://databaseschool.com  </p><p>Chapters:  <br>00:00 - Intro to guest Glauber Costa  <br>00:58 - Glauber's background and path to databases  <br>02:23 - Moving to Texas and life changes  <br>05:32 - The origin story of Turso  <br>07:55 - Why fork SQLite in the first place?  <br>10:28 - SQLite’s closed contribution model  <br>12:00 - Launching libSQL as an open contribution fork  <br>13:43 - Building Turso Cloud for serverless SQLite  <br>14:57 - Limitations of forking SQLite  <br>17:00 - Deciding to rewrite SQLite from scratch  <br>19:08 - Branding mistakes and naming decisions  <br>22:29 - Differentiating Turso (the database) from Turso Cloud  <br>24:00 - Technical barriers that led to the rewrite  <br>28:00 - Why libSQL plateaued for deeper improvements  <br>30:14 - Big business partner request leads to deeper rethink  <br>31:23 - The rewrite begins  <br>33:36 - Early community traction and GitHub stars  <br>35:00 - Hiring contributors from the community  <br>36:58 - Reigniting the original vision  <br>39:40 - Turso’s core business thesis  <br>42:00 - Fully pivoting the company around the rewrite  <br>45:16 - How GitHub contributors signal business alignment  <br>47:10 - SQLite’s rock-solid rep and test suite challenges  <br>49:00 - The magic of deterministic simulation testing  <br>53:00 - How the simulator injects and replays IO failures  <br>56:00 - The role of property-based testing  <br>58:54 - Offering cash for bugs that break data integrity  <br>1:01:05 - Deterministic testing vs traditional testing  <br>1:03:44 - What it took to release Turso Alpha  <br>1:05:50 - Encouraging contributors with real incentives  <br>1:07:50 - How to get involved and contribute  <br>1:20:00 - Upcoming roadmap: indexes, CDC, schema changes  <br>1:23:40 - Final thoughts and where to find Turso</p>]]>
      </content:encoded>
      <pubDate>Fri, 08 Aug 2025 14:07:48 -0500</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/e67ca4b7/ea40282d.mp3" length="60699742" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:duration>4653</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>Want to learn more about SQLite?  <br>Check out my course on SQLite: https://highperformancesqlite.com/?ref=yt  </p><p>In this episode of Database School, I chat with Glauber Costa, CEO of Turso, about their audacious decision to rewrite SQLite from the ground up.  </p><p>We cover the technical motivations, open contribution philosophy, and how deterministic simulation testing is unlocking new levels of reliability.  </p><p>Get your free SQLite reference guide: https://highperformancesqlite.com/products/sqlite-reference-guide.  </p><p>Follow Glauber:  <br>Twitter: https://twitter.com/glcst  <br>Turso: https://tur.so/af  </p><p>Follow Aaron:  <br>Twitter: https://twitter.com/aarondfrancis  <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis  <br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.  </p><p>Database school: https://databaseschool.com  </p><p>Chapters:  <br>00:00 - Intro to guest Glauber Costa  <br>00:58 - Glauber's background and path to databases  <br>02:23 - Moving to Texas and life changes  <br>05:32 - The origin story of Turso  <br>07:55 - Why fork SQLite in the first place?  <br>10:28 - SQLite’s closed contribution model  <br>12:00 - Launching libSQL as an open contribution fork  <br>13:43 - Building Turso Cloud for serverless SQLite  <br>14:57 - Limitations of forking SQLite  <br>17:00 - Deciding to rewrite SQLite from scratch  <br>19:08 - Branding mistakes and naming decisions  <br>22:29 - Differentiating Turso (the database) from Turso Cloud  <br>24:00 - Technical barriers that led to the rewrite  <br>28:00 - Why libSQL plateaued for deeper improvements  <br>30:14 - Big business partner request leads to deeper rethink  <br>31:23 - The rewrite begins  <br>33:36 - Early community traction and GitHub stars  <br>35:00 - Hiring contributors from the community  <br>36:58 - Reigniting the original vision  <br>39:40 - Turso’s core business thesis  <br>42:00 - Fully pivoting the company around the rewrite  <br>45:16 - How GitHub contributors signal business alignment  <br>47:10 - SQLite’s rock-solid rep and test suite challenges  <br>49:00 - The magic of deterministic simulation testing  <br>53:00 - How the simulator injects and replays IO failures  <br>56:00 - The role of property-based testing  <br>58:54 - Offering cash for bugs that break data integrity  <br>1:01:05 - Deterministic testing vs traditional testing  <br>1:03:44 - What it took to release Turso Alpha  <br>1:05:50 - Encouraging contributors with real incentives  <br>1:07:50 - How to get involved and contribute  <br>1:20:00 - Upcoming roadmap: indexes, CDC, schema changes  <br>1:23:40 - Final thoughts and where to find Turso</p>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>Vitess for Postgres, with the co-founder of PlanetScale</title>
      <itunes:episode>17</itunes:episode>
      <podcast:episode>17</podcast:episode>
      <itunes:title>Vitess for Postgres, with the co-founder of PlanetScale</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">d863c3cf-549c-4681-a310-cc00590d8b29</guid>
      <link>https://share.transistor.fm/s/41c2c3bd</link>
      <description>
        <![CDATA[<p>Sugu Sougoumarane, co-creator of Vitess and co-founder of PlanetScale, joins me to talk about his time scaling YouTube’s database infrastructure, building Vitess, and his latest project bringing sharding to Postgres with Multigres.</p><p><br></p><p>This was a fun conversation with technical deep-dives, lessons from building distributed systems, and why he’s joining Supabase to tackle this next big challenge.</p><p><br></p><p><strong>Sugu’s Vitess videos:</strong></p><p>https://www.youtube.com/watch?v=6yOjF7qhmyY&amp;list=PLA9CMdLbfL5zHg3oapO0HvtPfVx6_iJy6</p><p><br></p><p><strong>The big announcement:</strong></p><p>https://supabase.com/blog/multigres-vitess-for-postgres</p><p><br></p><p><strong>Database School:</strong></p><p>https://databaseschool.com</p><p><br></p><p><strong>Follow Sugu:</strong></p><p>Twitter: https://twitter.com/ssougou</p><p>LinkedIn: https://www.linkedin.com/in/sougou</p><p><br></p><p><strong>Follow Aaron:</strong></p><p>Twitter: https://twitter.com/aarondfrancis</p><p>LinkedIn: https://www.linkedin.com/in/aarondfrancis</p><p>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p><br></p><p><strong>Chapters:</strong></p><p>00:00 - Intro</p><p>1:38 - The birth of Vitess at YouTube</p><p>3:19 - The spreadsheet that started it all</p><p>6:17 - Intelligent query parsing and connection pooling</p><p>9:46 - Preventing outages with query limits</p><p>13:42 - Growing Vitess beyond a connection pooler</p><p>16:01 - Choosing Go for Vitess</p><p>20:00 - The life of a query in Vitess</p><p>23:12 - How sharding worked at YouTube</p><p>26:03 - Hiding the keyspace ID from applications</p><p>33:02 - How Vitess evolved to hide complexity</p><p>36:05 - Founding PlanetScale &amp; maintaining Vitess solo</p><p>39:22 - Sabbatical, rediscovering empathy, and volunteering</p><p>42:08 - The itch to bring Vitess to Postgres</p><p>44:50 - Why Multigres focuses on compatibility and usability</p><p>49:00 - The Postgres codebase vs. MySQL codebase</p><p>52:06 - Joining Supabase &amp; building the Multigres team</p><p>54:20 - Starting Multigres from scratch with lessons from Vitess</p><p>57:02 - MVP goals for Multigres</p><p>1:01:02 - Integration with Supabase &amp; database branching</p><p>1:05:21 - Sugu’s dream for Multigres</p><p>1:09:05 - Small teams, hiring, and open positions</p><p>1:11:07 - Community response to Multigres announcement</p><p>1:12:31 - Where to find Sugu</p>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>Sugu Sougoumarane, co-creator of Vitess and co-founder of PlanetScale, joins me to talk about his time scaling YouTube’s database infrastructure, building Vitess, and his latest project bringing sharding to Postgres with Multigres.</p><p><br></p><p>This was a fun conversation with technical deep-dives, lessons from building distributed systems, and why he’s joining Supabase to tackle this next big challenge.</p><p><br></p><p><strong>Sugu’s Vitess videos:</strong></p><p>https://www.youtube.com/watch?v=6yOjF7qhmyY&amp;list=PLA9CMdLbfL5zHg3oapO0HvtPfVx6_iJy6</p><p><br></p><p><strong>The big announcement:</strong></p><p>https://supabase.com/blog/multigres-vitess-for-postgres</p><p><br></p><p><strong>Database School:</strong></p><p>https://databaseschool.com</p><p><br></p><p><strong>Follow Sugu:</strong></p><p>Twitter: https://twitter.com/ssougou</p><p>LinkedIn: https://www.linkedin.com/in/sougou</p><p><br></p><p><strong>Follow Aaron:</strong></p><p>Twitter: https://twitter.com/aarondfrancis</p><p>LinkedIn: https://www.linkedin.com/in/aarondfrancis</p><p>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p><br></p><p><strong>Chapters:</strong></p><p>00:00 - Intro</p><p>1:38 - The birth of Vitess at YouTube</p><p>3:19 - The spreadsheet that started it all</p><p>6:17 - Intelligent query parsing and connection pooling</p><p>9:46 - Preventing outages with query limits</p><p>13:42 - Growing Vitess beyond a connection pooler</p><p>16:01 - Choosing Go for Vitess</p><p>20:00 - The life of a query in Vitess</p><p>23:12 - How sharding worked at YouTube</p><p>26:03 - Hiding the keyspace ID from applications</p><p>33:02 - How Vitess evolved to hide complexity</p><p>36:05 - Founding PlanetScale &amp; maintaining Vitess solo</p><p>39:22 - Sabbatical, rediscovering empathy, and volunteering</p><p>42:08 - The itch to bring Vitess to Postgres</p><p>44:50 - Why Multigres focuses on compatibility and usability</p><p>49:00 - The Postgres codebase vs. MySQL codebase</p><p>52:06 - Joining Supabase &amp; building the Multigres team</p><p>54:20 - Starting Multigres from scratch with lessons from Vitess</p><p>57:02 - MVP goals for Multigres</p><p>1:01:02 - Integration with Supabase &amp; database branching</p><p>1:05:21 - Sugu’s dream for Multigres</p><p>1:09:05 - Small teams, hiring, and open positions</p><p>1:11:07 - Community response to Multigres announcement</p><p>1:12:31 - Where to find Sugu</p>]]>
      </content:encoded>
      <pubDate>Tue, 01 Jul 2025 12:27:07 -0500</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/41c2c3bd/0e1b0d4e.mp3" length="49553972" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:duration>4049</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>Sugu Sougoumarane, co-creator of Vitess and co-founder of PlanetScale, joins me to talk about his time scaling YouTube’s database infrastructure, building Vitess, and his latest project bringing sharding to Postgres with Multigres.</p><p><br></p><p>This was a fun conversation with technical deep-dives, lessons from building distributed systems, and why he’s joining Supabase to tackle this next big challenge.</p><p><br></p><p><strong>Sugu’s Vitess videos:</strong></p><p>https://www.youtube.com/watch?v=6yOjF7qhmyY&amp;list=PLA9CMdLbfL5zHg3oapO0HvtPfVx6_iJy6</p><p><br></p><p><strong>The big announcement:</strong></p><p>https://supabase.com/blog/multigres-vitess-for-postgres</p><p><br></p><p><strong>Database School:</strong></p><p>https://databaseschool.com</p><p><br></p><p><strong>Follow Sugu:</strong></p><p>Twitter: https://twitter.com/ssougou</p><p>LinkedIn: https://www.linkedin.com/in/sougou</p><p><br></p><p><strong>Follow Aaron:</strong></p><p>Twitter: https://twitter.com/aarondfrancis</p><p>LinkedIn: https://www.linkedin.com/in/aarondfrancis</p><p>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p><br></p><p><strong>Chapters:</strong></p><p>00:00 - Intro</p><p>1:38 - The birth of Vitess at YouTube</p><p>3:19 - The spreadsheet that started it all</p><p>6:17 - Intelligent query parsing and connection pooling</p><p>9:46 - Preventing outages with query limits</p><p>13:42 - Growing Vitess beyond a connection pooler</p><p>16:01 - Choosing Go for Vitess</p><p>20:00 - The life of a query in Vitess</p><p>23:12 - How sharding worked at YouTube</p><p>26:03 - Hiding the keyspace ID from applications</p><p>33:02 - How Vitess evolved to hide complexity</p><p>36:05 - Founding PlanetScale &amp; maintaining Vitess solo</p><p>39:22 - Sabbatical, rediscovering empathy, and volunteering</p><p>42:08 - The itch to bring Vitess to Postgres</p><p>44:50 - Why Multigres focuses on compatibility and usability</p><p>49:00 - The Postgres codebase vs. MySQL codebase</p><p>52:06 - Joining Supabase &amp; building the Multigres team</p><p>54:20 - Starting Multigres from scratch with lessons from Vitess</p><p>57:02 - MVP goals for Multigres</p><p>1:01:02 - Integration with Supabase &amp; database branching</p><p>1:05:21 - Sugu’s dream for Multigres</p><p>1:09:05 - Small teams, hiring, and open positions</p><p>1:11:07 - Community response to Multigres announcement</p><p>1:12:31 - Where to find Sugu</p>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>PlanetScale Metal</title>
      <itunes:episode>16</itunes:episode>
      <podcast:episode>16</podcast:episode>
      <itunes:title>PlanetScale Metal</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">79c9025d-9205-4394-aeae-818b20252066</guid>
      <link>https://share.transistor.fm/s/6d67de07</link>
      <description>
        <![CDATA[<p>In this episode, I chat with Richard Crowley from PlanetScale about their new offering: <strong>PlanetScale Metal</strong>.</p><p>We dive deep into the performance and reliability trade-offs of EBS vs. locally attached NVMe storage,</p><p>and how Metal delivers game-changing speed for MySQL workloads.</p><p><br></p><p><strong>Links:</strong></p><ul><li>Database School: https://databaseschool.com</li><li>PlanetScale: https://planetscale.com</li><li>PlanetScale Metal: https://planetscale.com/blog/announcing-metal</li></ul><p><br></p><p><strong>Follow Richard:</strong></p><ul><li>Twitter: https://twitter.com/rcrowley</li><li>Website: https://rcrowley.org</li></ul><p><br></p><p><strong>Follow Aaron:</strong></p><ul><li>Twitter: https://twitter.com/aarondfrancis</li><li>LinkedIn: https://www.linkedin.com/in/aarondfrancis</li><li>Website: https://aaronfrancis.com — find articles, podcasts, courses, and more.</li></ul><p><br></p><p><strong>Chapters:</strong></p><p>00:00 - Intro: What is PlanetScale Metal?</p><p>00:39 - Meet Richard Crowley</p><p>01:33 - What is Vitess and how does it work?</p><p>03:00 - Where PlanetScale fits into the picture</p><p>09:03 - Why EBS is the default and its trade-offs</p><p>13:03 - How PlanetScale handles durability without EBS</p><p>16:03 - The engineering work behind PlanetScale Metal</p><p>22:00 - Deep dive into backups, restores, and availability math</p><p>25:03 - How PlanetScale replaces instances safely</p><p>27:11 - Performance gains with Metal: Latency and IOPS explained</p><p>32:03 - Database workloads that truly benefit from Metal</p><p>39:10 - The myth of the infinite cloud</p><p>41:08 - How PlanetScale plans for capacity</p><p>43:02 - Multi-tenant vs. PlanetScale Managed</p><p>44:02 - Who should use Metal and when?</p><p>46:05 - Pricing trade-offs and when Metal becomes cheaper</p><p>48:27 - Scaling vertically vs. sharding</p><p>49:57 - What’s next for PlanetScale Metal?</p><p>53:32 - Where to learn more</p>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>In this episode, I chat with Richard Crowley from PlanetScale about their new offering: <strong>PlanetScale Metal</strong>.</p><p>We dive deep into the performance and reliability trade-offs of EBS vs. locally attached NVMe storage,</p><p>and how Metal delivers game-changing speed for MySQL workloads.</p><p><br></p><p><strong>Links:</strong></p><ul><li>Database School: https://databaseschool.com</li><li>PlanetScale: https://planetscale.com</li><li>PlanetScale Metal: https://planetscale.com/blog/announcing-metal</li></ul><p><br></p><p><strong>Follow Richard:</strong></p><ul><li>Twitter: https://twitter.com/rcrowley</li><li>Website: https://rcrowley.org</li></ul><p><br></p><p><strong>Follow Aaron:</strong></p><ul><li>Twitter: https://twitter.com/aarondfrancis</li><li>LinkedIn: https://www.linkedin.com/in/aarondfrancis</li><li>Website: https://aaronfrancis.com — find articles, podcasts, courses, and more.</li></ul><p><br></p><p><strong>Chapters:</strong></p><p>00:00 - Intro: What is PlanetScale Metal?</p><p>00:39 - Meet Richard Crowley</p><p>01:33 - What is Vitess and how does it work?</p><p>03:00 - Where PlanetScale fits into the picture</p><p>09:03 - Why EBS is the default and its trade-offs</p><p>13:03 - How PlanetScale handles durability without EBS</p><p>16:03 - The engineering work behind PlanetScale Metal</p><p>22:00 - Deep dive into backups, restores, and availability math</p><p>25:03 - How PlanetScale replaces instances safely</p><p>27:11 - Performance gains with Metal: Latency and IOPS explained</p><p>32:03 - Database workloads that truly benefit from Metal</p><p>39:10 - The myth of the infinite cloud</p><p>41:08 - How PlanetScale plans for capacity</p><p>43:02 - Multi-tenant vs. PlanetScale Managed</p><p>44:02 - Who should use Metal and when?</p><p>46:05 - Pricing trade-offs and when Metal becomes cheaper</p><p>48:27 - Scaling vertically vs. sharding</p><p>49:57 - What’s next for PlanetScale Metal?</p><p>53:32 - Where to learn more</p>]]>
      </content:encoded>
      <pubDate>Fri, 27 Jun 2025 16:24:54 -0500</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/6d67de07/a75d2052.mp3" length="38282285" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:duration>3008</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>In this episode, I chat with Richard Crowley from PlanetScale about their new offering: <strong>PlanetScale Metal</strong>.</p><p>We dive deep into the performance and reliability trade-offs of EBS vs. locally attached NVMe storage,</p><p>and how Metal delivers game-changing speed for MySQL workloads.</p><p><br></p><p><strong>Links:</strong></p><ul><li>Database School: https://databaseschool.com</li><li>PlanetScale: https://planetscale.com</li><li>PlanetScale Metal: https://planetscale.com/blog/announcing-metal</li></ul><p><br></p><p><strong>Follow Richard:</strong></p><ul><li>Twitter: https://twitter.com/rcrowley</li><li>Website: https://rcrowley.org</li></ul><p><br></p><p><strong>Follow Aaron:</strong></p><ul><li>Twitter: https://twitter.com/aarondfrancis</li><li>LinkedIn: https://www.linkedin.com/in/aarondfrancis</li><li>Website: https://aaronfrancis.com — find articles, podcasts, courses, and more.</li></ul><p><br></p><p><strong>Chapters:</strong></p><p>00:00 - Intro: What is PlanetScale Metal?</p><p>00:39 - Meet Richard Crowley</p><p>01:33 - What is Vitess and how does it work?</p><p>03:00 - Where PlanetScale fits into the picture</p><p>09:03 - Why EBS is the default and its trade-offs</p><p>13:03 - How PlanetScale handles durability without EBS</p><p>16:03 - The engineering work behind PlanetScale Metal</p><p>22:00 - Deep dive into backups, restores, and availability math</p><p>25:03 - How PlanetScale replaces instances safely</p><p>27:11 - Performance gains with Metal: Latency and IOPS explained</p><p>32:03 - Database workloads that truly benefit from Metal</p><p>39:10 - The myth of the infinite cloud</p><p>41:08 - How PlanetScale plans for capacity</p><p>43:02 - Multi-tenant vs. PlanetScale Managed</p><p>44:02 - Who should use Metal and when?</p><p>46:05 - Pricing trade-offs and when Metal becomes cheaper</p><p>48:27 - Scaling vertically vs. sharding</p><p>49:57 - What’s next for PlanetScale Metal?</p><p>53:32 - Where to learn more</p>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>From Prisma Founder to LiveStore: Building local-first apps with Johannes Schickling</title>
      <itunes:episode>15</itunes:episode>
      <podcast:episode>15</podcast:episode>
      <itunes:title>From Prisma Founder to LiveStore: Building local-first apps with Johannes Schickling</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">85698d58-9569-4af7-a874-8762c376c438</guid>
      <link>https://share.transistor.fm/s/408899d7</link>
      <description>
        <![CDATA[<p>Johannes Schickling, original founder of Prisma, joins me to talk about <strong>LiveStore</strong>, his ambitious local-first data layer designed to rethink how we build apps from the data layer up.</p><p><br></p><p>We dive deep into event sourcing, syncing with SQLite, and why this approach might power the next generation of reactive apps.</p><p><br></p><p><strong>🔗 Links Mentioned</strong></p><p><br></p><p><strong>Want to learn more about SQLite?</strong></p><p>Check out my SQLite course:</p><p>https://highperformancesqlite.com/?ref=yt</p><p><br></p><p><strong>LiveStore</strong></p><p>Website: https://livestore.dev</p><p>Repo: https://github.com/livestorejs</p><p>Discord: https://discord.gg/RbMcjUAPd7</p><p><br></p><p><strong>Follow Johannes</strong></p><p>Twitter: https://www.x.com/schickling</p><p>LinkedIn: https://www.linkedin.com/in/schickling</p><p>Website: https://www.schickling.dev</p><p>Podcast: https://www.localfirst.fm</p><p><br></p><p><strong>Follow Aaron</strong></p><p>Twitter: https://twitter.com/aarondfrancis</p><p>LinkedIn: https://www.linkedin.com/in/aarondfrancis</p><p>Website: https://aaronfrancis.com — find articles, podcasts, courses, and more</p><p><br></p><p><strong>Database School</strong></p><p>YouTube: https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15</p><p>Audio only: https://databaseschool.transistor.fm</p><p><br></p><p><strong>🕒 Chapters</strong></p><p><br></p><p>00:00 - Intro to Johannes</p><p>01:00 - From Prisma to LiveStore</p><p>03:00 - Discovering local-first through Riffle</p><p>05:00 - What is local-first and who is it for?</p><p>07:00 - Why local-first is gaining popularity</p><p>10:00 - The inspiration from apps like Linear</p><p>13:00 - Gaps in local-first tooling in 2020</p><p>16:00 - Social apps vs. user-centric apps</p><p>18:00 - Distributed systems and why they’re hard</p><p>21:00 - The value of embracing local-first</p><p>24:00 - What LiveStore is and what it’s not</p><p>26:00 - Event sourcing as the core of LiveStore</p><p>30:00 - Benefits of event sourcing for apps</p><p>33:00 - Schema changes and time travel via events</p><p>37:00 - Materializers and how they work</p><p>43:00 - Syncing data across clients and devices</p><p>48:00 - Sync servers and cross-tab communication</p><p>54:00 - Architecture choices and dev tooling</p><p>59:00 - State of the project and future vision</p><p>1:06:00 - How to get involved</p>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>Johannes Schickling, original founder of Prisma, joins me to talk about <strong>LiveStore</strong>, his ambitious local-first data layer designed to rethink how we build apps from the data layer up.</p><p><br></p><p>We dive deep into event sourcing, syncing with SQLite, and why this approach might power the next generation of reactive apps.</p><p><br></p><p><strong>🔗 Links Mentioned</strong></p><p><br></p><p><strong>Want to learn more about SQLite?</strong></p><p>Check out my SQLite course:</p><p>https://highperformancesqlite.com/?ref=yt</p><p><br></p><p><strong>LiveStore</strong></p><p>Website: https://livestore.dev</p><p>Repo: https://github.com/livestorejs</p><p>Discord: https://discord.gg/RbMcjUAPd7</p><p><br></p><p><strong>Follow Johannes</strong></p><p>Twitter: https://www.x.com/schickling</p><p>LinkedIn: https://www.linkedin.com/in/schickling</p><p>Website: https://www.schickling.dev</p><p>Podcast: https://www.localfirst.fm</p><p><br></p><p><strong>Follow Aaron</strong></p><p>Twitter: https://twitter.com/aarondfrancis</p><p>LinkedIn: https://www.linkedin.com/in/aarondfrancis</p><p>Website: https://aaronfrancis.com — find articles, podcasts, courses, and more</p><p><br></p><p><strong>Database School</strong></p><p>YouTube: https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15</p><p>Audio only: https://databaseschool.transistor.fm</p><p><br></p><p><strong>🕒 Chapters</strong></p><p><br></p><p>00:00 - Intro to Johannes</p><p>01:00 - From Prisma to LiveStore</p><p>03:00 - Discovering local-first through Riffle</p><p>05:00 - What is local-first and who is it for?</p><p>07:00 - Why local-first is gaining popularity</p><p>10:00 - The inspiration from apps like Linear</p><p>13:00 - Gaps in local-first tooling in 2020</p><p>16:00 - Social apps vs. user-centric apps</p><p>18:00 - Distributed systems and why they’re hard</p><p>21:00 - The value of embracing local-first</p><p>24:00 - What LiveStore is and what it’s not</p><p>26:00 - Event sourcing as the core of LiveStore</p><p>30:00 - Benefits of event sourcing for apps</p><p>33:00 - Schema changes and time travel via events</p><p>37:00 - Materializers and how they work</p><p>43:00 - Syncing data across clients and devices</p><p>48:00 - Sync servers and cross-tab communication</p><p>54:00 - Architecture choices and dev tooling</p><p>59:00 - State of the project and future vision</p><p>1:06:00 - How to get involved</p>]]>
      </content:encoded>
      <pubDate>Thu, 29 May 2025 11:59:04 -0500</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/408899d7/4960db1c.mp3" length="56361781" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:duration>5500</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>Johannes Schickling, original founder of Prisma, joins me to talk about <strong>LiveStore</strong>, his ambitious local-first data layer designed to rethink how we build apps from the data layer up.</p><p><br></p><p>We dive deep into event sourcing, syncing with SQLite, and why this approach might power the next generation of reactive apps.</p><p><br></p><p><strong>🔗 Links Mentioned</strong></p><p><br></p><p><strong>Want to learn more about SQLite?</strong></p><p>Check out my SQLite course:</p><p>https://highperformancesqlite.com/?ref=yt</p><p><br></p><p><strong>LiveStore</strong></p><p>Website: https://livestore.dev</p><p>Repo: https://github.com/livestorejs</p><p>Discord: https://discord.gg/RbMcjUAPd7</p><p><br></p><p><strong>Follow Johannes</strong></p><p>Twitter: https://www.x.com/schickling</p><p>LinkedIn: https://www.linkedin.com/in/schickling</p><p>Website: https://www.schickling.dev</p><p>Podcast: https://www.localfirst.fm</p><p><br></p><p><strong>Follow Aaron</strong></p><p>Twitter: https://twitter.com/aarondfrancis</p><p>LinkedIn: https://www.linkedin.com/in/aarondfrancis</p><p>Website: https://aaronfrancis.com — find articles, podcasts, courses, and more</p><p><br></p><p><strong>Database School</strong></p><p>YouTube: https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15</p><p>Audio only: https://databaseschool.transistor.fm</p><p><br></p><p><strong>🕒 Chapters</strong></p><p><br></p><p>00:00 - Intro to Johannes</p><p>01:00 - From Prisma to LiveStore</p><p>03:00 - Discovering local-first through Riffle</p><p>05:00 - What is local-first and who is it for?</p><p>07:00 - Why local-first is gaining popularity</p><p>10:00 - The inspiration from apps like Linear</p><p>13:00 - Gaps in local-first tooling in 2020</p><p>16:00 - Social apps vs. user-centric apps</p><p>18:00 - Distributed systems and why they’re hard</p><p>21:00 - The value of embracing local-first</p><p>24:00 - What LiveStore is and what it’s not</p><p>26:00 - Event sourcing as the core of LiveStore</p><p>30:00 - Benefits of event sourcing for apps</p><p>33:00 - Schema changes and time travel via events</p><p>37:00 - Materializers and how they work</p><p>43:00 - Syncing data across clients and devices</p><p>48:00 - Sync servers and cross-tab communication</p><p>54:00 - Architecture choices and dev tooling</p><p>59:00 - State of the project and future vision</p><p>1:06:00 - How to get involved</p>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>How Durable Objects and D1 Work: A Deep Dive with Cloudflare’s Josh Howard</title>
      <itunes:episode>14</itunes:episode>
      <podcast:episode>14</podcast:episode>
      <itunes:title>How Durable Objects and D1 Work: A Deep Dive with Cloudflare’s Josh Howard</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">9407c824-3c63-487d-aef2-d426dc6ae2e7</guid>
      <link>https://share.transistor.fm/s/0acbfc78</link>
      <description>
        <![CDATA[<p>Josh Howard, Senior Engineering Manager at Cloudflare, joins me to explain how Durable Objects and D1 work under the hood—and why Cloudflare’s approach to stateful serverless infrastructure is so unique. We get into V8 isolates, replication models, routing strategies, and even upcoming support for containers. </p><p>Want to learn more about SQLite? Check out my SQLite course: https://highperformancesqlite.com/?ref=podcast </p><p>Follow Josh: <br>Twitter: https://twitter.com/ajoshhoward <br>LinkedIn: https://www.linkedin.com/in/joshthoward </p><p>Follow Aaron: <br>Twitter: https://twitter.com/aarondfrancis <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis <br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Database school on YouTube: https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15<br>Database school audio only: https://databaseschool.transistor.fm </p><p>Chapters <br>00:00 - Intro <br>00:37 - What is a Durable Object? <br>01:43 - Cloudflare’s serverless model and V8 isolates <br>03:58 - Why stateful serverless matters <br>05:14 - Durable Objects vs Workers <br>06:22 - How routing to Durable Objects works <br>08:01 - What makes them "durable"? <br>08:51 - Tradeoffs of colocating compute and state <br>10:58 - Stateless Durable Objects <br>12:49 - Waking up from sleep and restoring state <br>16:15 - Durable Object storage: KV and SQLite APIs <br>18:49 - Relationship between D1, Workers KV, and DOs <br>20:34 - Performance of local storage writes <br>21:50 - Storage replication and output gating <br>24:15 - Lifecycle of a request through a Durable Object <br>26:46 - Replication strategy and long-term durability <br>31:25 - Placement logic and sharding strategy <br>36:35 - Use cases: agents, multiplayer games, chat apps <br>40:33 - Scaling Durable Objects <br>41:14 - Globally unique ID generation <br>43:22 - Named Durable Objects and coordination <br>46:07 - D1 vs Workers KV vs Durable Objects <br>47:50 - Outerbase acquisition and DX improvements <br>49:49 - Querying durable object storage <br>51:20 - Developer Week highlights and new features <br>52:44 - Read replicas and sticky sessions <br>53:49 - Containers and the future of routing <br>56:47 - Deployment regions and infrastructure expansion <br>57:43 - Hiring and how to connect with Josh</p>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>Josh Howard, Senior Engineering Manager at Cloudflare, joins me to explain how Durable Objects and D1 work under the hood—and why Cloudflare’s approach to stateful serverless infrastructure is so unique. We get into V8 isolates, replication models, routing strategies, and even upcoming support for containers. </p><p>Want to learn more about SQLite? Check out my SQLite course: https://highperformancesqlite.com/?ref=podcast </p><p>Follow Josh: <br>Twitter: https://twitter.com/ajoshhoward <br>LinkedIn: https://www.linkedin.com/in/joshthoward </p><p>Follow Aaron: <br>Twitter: https://twitter.com/aarondfrancis <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis <br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Database school on YouTube: https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15<br>Database school audio only: https://databaseschool.transistor.fm </p><p>Chapters <br>00:00 - Intro <br>00:37 - What is a Durable Object? <br>01:43 - Cloudflare’s serverless model and V8 isolates <br>03:58 - Why stateful serverless matters <br>05:14 - Durable Objects vs Workers <br>06:22 - How routing to Durable Objects works <br>08:01 - What makes them "durable"? <br>08:51 - Tradeoffs of colocating compute and state <br>10:58 - Stateless Durable Objects <br>12:49 - Waking up from sleep and restoring state <br>16:15 - Durable Object storage: KV and SQLite APIs <br>18:49 - Relationship between D1, Workers KV, and DOs <br>20:34 - Performance of local storage writes <br>21:50 - Storage replication and output gating <br>24:15 - Lifecycle of a request through a Durable Object <br>26:46 - Replication strategy and long-term durability <br>31:25 - Placement logic and sharding strategy <br>36:35 - Use cases: agents, multiplayer games, chat apps <br>40:33 - Scaling Durable Objects <br>41:14 - Globally unique ID generation <br>43:22 - Named Durable Objects and coordination <br>46:07 - D1 vs Workers KV vs Durable Objects <br>47:50 - Outerbase acquisition and DX improvements <br>49:49 - Querying durable object storage <br>51:20 - Developer Week highlights and new features <br>52:44 - Read replicas and sticky sessions <br>53:49 - Containers and the future of routing <br>56:47 - Deployment regions and infrastructure expansion <br>57:43 - Hiring and how to connect with Josh</p>]]>
      </content:encoded>
      <pubDate>Wed, 14 May 2025 11:09:37 -0500</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/0acbfc78/0a12e9ec.mp3" length="46617315" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:duration>4480</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>Josh Howard, Senior Engineering Manager at Cloudflare, joins me to explain how Durable Objects and D1 work under the hood—and why Cloudflare’s approach to stateful serverless infrastructure is so unique. We get into V8 isolates, replication models, routing strategies, and even upcoming support for containers. </p><p>Want to learn more about SQLite? Check out my SQLite course: https://highperformancesqlite.com/?ref=podcast </p><p>Follow Josh: <br>Twitter: https://twitter.com/ajoshhoward <br>LinkedIn: https://www.linkedin.com/in/joshthoward </p><p>Follow Aaron: <br>Twitter: https://twitter.com/aarondfrancis <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis <br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Database school on YouTube: https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15<br>Database school audio only: https://databaseschool.transistor.fm </p><p>Chapters <br>00:00 - Intro <br>00:37 - What is a Durable Object? <br>01:43 - Cloudflare’s serverless model and V8 isolates <br>03:58 - Why stateful serverless matters <br>05:14 - Durable Objects vs Workers <br>06:22 - How routing to Durable Objects works <br>08:01 - What makes them "durable"? <br>08:51 - Tradeoffs of colocating compute and state <br>10:58 - Stateless Durable Objects <br>12:49 - Waking up from sleep and restoring state <br>16:15 - Durable Object storage: KV and SQLite APIs <br>18:49 - Relationship between D1, Workers KV, and DOs <br>20:34 - Performance of local storage writes <br>21:50 - Storage replication and output gating <br>24:15 - Lifecycle of a request through a Durable Object <br>26:46 - Replication strategy and long-term durability <br>31:25 - Placement logic and sharding strategy <br>36:35 - Use cases: agents, multiplayer games, chat apps <br>40:33 - Scaling Durable Objects <br>41:14 - Globally unique ID generation <br>43:22 - Named Durable Objects and coordination <br>46:07 - D1 vs Workers KV vs Durable Objects <br>47:50 - Outerbase acquisition and DX improvements <br>49:49 - Querying durable object storage <br>51:20 - Developer Week highlights and new features <br>52:44 - Read replicas and sticky sessions <br>53:49 - Containers and the future of routing <br>56:47 - Deployment regions and infrastructure expansion <br>57:43 - Hiring and how to connect with Josh</p>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>20 years of hacking Postgres with Heikki Linnakangas (cofounder of Neon)</title>
      <itunes:episode>13</itunes:episode>
      <podcast:episode>13</podcast:episode>
      <itunes:title>20 years of hacking Postgres with Heikki Linnakangas (cofounder of Neon)</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">bd6a54d2-590d-44fd-8ddd-ca975787a986</guid>
      <link>https://share.transistor.fm/s/f47ca95f</link>
      <description>
        <![CDATA[<p>In this episode of Database School, I talk with Heikki Linnakangas, co-founder of Neon and longtime PostgreSQL hacker, to talk about 20+ years in the Postgres community, the architecture behind Neon, and the future of multi-threaded Postgres. From paternity leave patches to branching production databases, we cover a lot of ground in this deep-dive conversation. </p><p>Links: <br>Let's make postgres multi-threaded: https://www.postgresql.org/message-id/31cc6df9-53fe-3cd9-af5b-ac0d801163f4%40iki.fi <br>Hacker News discussion: https://news.ycombinator.com/item?id=36284487 </p><p>Follow Heikki: <br>LinkedIn: https://www.linkedin.com/in/heikki-linnakangas-6b58bb203/ <br>Website: https://neon.tech </p><p>Follow Aaron: <br>Twitter: https://twitter.com/aarondfrancis <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis <br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Database school on YouTube: https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15<br>Database school audio only: https://databaseschool.transistor.fm </p><p>00:00 - Introduction and Heikki's background <br>01:19 - How Heikki got into Postgres <br>03:17 - First major patch: two-phase commit <br>04:00 - Governance and decision-making in Postgres <br>07:00 - Committer consensus and decentralization <br>09:25 - Attracting new contributors <br>11:25 - Founding Neon with Nikita Shamgunov <br>13:01 - Why separation of compute and storage matters <br>15:00 - Write-ahead log and architectural insights <br>17:03 - Early days of building Neon <br>20:00 - Building the control plane and user-facing systems <br>21:28 - What "serverless Postgres" really means <br>23:39 - Reducing cold start time from 5s to 700ms <br>25:05 - Storage architecture and page servers <br>27:31 - Who uses sleepable databases <br>28:44 - Multi-tenancy and schema management <br>31:01 - Role in low-code/AI app generation <br>33:04 - Branching, time travel, and read replicas <br>36:56 - Real-time point-in-time query recovery <br>38:47 - Large customers and scaling in Neon <br>41:04 - Heikki’s favorite Neon feature: time travel <br>41:49 - Making Postgres multi-threaded <br>45:29 - Why it matters for connection scaling <br>50:50 - The next five years for Postgres and Neon <br>52:57 - Final thoughts and where to find Heikki</p>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>In this episode of Database School, I talk with Heikki Linnakangas, co-founder of Neon and longtime PostgreSQL hacker, to talk about 20+ years in the Postgres community, the architecture behind Neon, and the future of multi-threaded Postgres. From paternity leave patches to branching production databases, we cover a lot of ground in this deep-dive conversation. </p><p>Links: <br>Let's make postgres multi-threaded: https://www.postgresql.org/message-id/31cc6df9-53fe-3cd9-af5b-ac0d801163f4%40iki.fi <br>Hacker News discussion: https://news.ycombinator.com/item?id=36284487 </p><p>Follow Heikki: <br>LinkedIn: https://www.linkedin.com/in/heikki-linnakangas-6b58bb203/ <br>Website: https://neon.tech </p><p>Follow Aaron: <br>Twitter: https://twitter.com/aarondfrancis <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis <br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Database school on YouTube: https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15<br>Database school audio only: https://databaseschool.transistor.fm </p><p>00:00 - Introduction and Heikki's background <br>01:19 - How Heikki got into Postgres <br>03:17 - First major patch: two-phase commit <br>04:00 - Governance and decision-making in Postgres <br>07:00 - Committer consensus and decentralization <br>09:25 - Attracting new contributors <br>11:25 - Founding Neon with Nikita Shamgunov <br>13:01 - Why separation of compute and storage matters <br>15:00 - Write-ahead log and architectural insights <br>17:03 - Early days of building Neon <br>20:00 - Building the control plane and user-facing systems <br>21:28 - What "serverless Postgres" really means <br>23:39 - Reducing cold start time from 5s to 700ms <br>25:05 - Storage architecture and page servers <br>27:31 - Who uses sleepable databases <br>28:44 - Multi-tenancy and schema management <br>31:01 - Role in low-code/AI app generation <br>33:04 - Branching, time travel, and read replicas <br>36:56 - Real-time point-in-time query recovery <br>38:47 - Large customers and scaling in Neon <br>41:04 - Heikki’s favorite Neon feature: time travel <br>41:49 - Making Postgres multi-threaded <br>45:29 - Why it matters for connection scaling <br>50:50 - The next five years for Postgres and Neon <br>52:57 - Final thoughts and where to find Heikki</p>]]>
      </content:encoded>
      <pubDate>Tue, 06 May 2025 12:51:55 -0500</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/f47ca95f/7e245e00.mp3" length="40733975" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:duration>7211</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>In this episode of Database School, I talk with Heikki Linnakangas, co-founder of Neon and longtime PostgreSQL hacker, to talk about 20+ years in the Postgres community, the architecture behind Neon, and the future of multi-threaded Postgres. From paternity leave patches to branching production databases, we cover a lot of ground in this deep-dive conversation. </p><p>Links: <br>Let's make postgres multi-threaded: https://www.postgresql.org/message-id/31cc6df9-53fe-3cd9-af5b-ac0d801163f4%40iki.fi <br>Hacker News discussion: https://news.ycombinator.com/item?id=36284487 </p><p>Follow Heikki: <br>LinkedIn: https://www.linkedin.com/in/heikki-linnakangas-6b58bb203/ <br>Website: https://neon.tech </p><p>Follow Aaron: <br>Twitter: https://twitter.com/aarondfrancis <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis <br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Database school on YouTube: https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15<br>Database school audio only: https://databaseschool.transistor.fm </p><p>00:00 - Introduction and Heikki's background <br>01:19 - How Heikki got into Postgres <br>03:17 - First major patch: two-phase commit <br>04:00 - Governance and decision-making in Postgres <br>07:00 - Committer consensus and decentralization <br>09:25 - Attracting new contributors <br>11:25 - Founding Neon with Nikita Shamgunov <br>13:01 - Why separation of compute and storage matters <br>15:00 - Write-ahead log and architectural insights <br>17:03 - Early days of building Neon <br>20:00 - Building the control plane and user-facing systems <br>21:28 - What "serverless Postgres" really means <br>23:39 - Reducing cold start time from 5s to 700ms <br>25:05 - Storage architecture and page servers <br>27:31 - Who uses sleepable databases <br>28:44 - Multi-tenancy and schema management <br>31:01 - Role in low-code/AI app generation <br>33:04 - Branching, time travel, and read replicas <br>36:56 - Real-time point-in-time query recovery <br>38:47 - Large customers and scaling in Neon <br>41:04 - Heikki’s favorite Neon feature: time travel <br>41:49 - Making Postgres multi-threaded <br>45:29 - Why it matters for connection scaling <br>50:50 - The next five years for Postgres and Neon <br>52:57 - Final thoughts and where to find Heikki</p>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>Building a serverless database replica with Carl Sverre</title>
      <itunes:episode>12</itunes:episode>
      <podcast:episode>12</podcast:episode>
      <itunes:title>Building a serverless database replica with Carl Sverre</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">e2f411eb-5c75-4ccf-93c9-b47fe9558326</guid>
      <link>https://share.transistor.fm/s/6dc15ef3</link>
      <description>
        <![CDATA[<p>Want to learn more SQLite? Check out my SQLite course: https://highperformancesqlite.com </p><p>In this episode, Carl Sverre and I discuss why syncing everything is a bad idea and how his new project, Graft, makes edge-native, partially replicated databases possible. We dig into SQLite, object storage, transactional guarantees, and why Graft might be the foundation for serverless database replicas. </p><p>SQLSync: https://sqlsync.dev <br>Stop syncing everything blog post: https://sqlsync.dev/posts/stop-syncing-everything <br>Graft: https://github.com/orbitinghail/graft </p><p>Follow Carl: <br>Twitter: https://twitter.com/carlsverre <br>LinkedIn: https://www.linkedin.com/in/carlsverre <br>Website: https://carlsverre.com/ </p><p>Follow Aaron: Twitter: https://twitter.com/aarondfrancis <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis <br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Database school on YouTube: https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15<br>Database school audio only: https://databaseschool.transistor.fm  </p><p>Chapters: 00:00 - Intro and Carl’s controversial blog title <br>01:00 - Why “stop syncing everything” doesn't mean stop syncing <br>02:30 - The problem with full database syncs <br>03:20 - Quick recap of SQL Sync and multiplayer SQLite <br>04:45 - How SQL Sync works using physical replication <br>06:00 - The limitations that led to building Graft <br>09:00 - What is Graft? A high-level overview <br>16:30 - Syncing architecture: how Graft scales <br>18:00 - Graft's stateless design and Fly.io integration <br>20:00 - S3 compatibility and using Tigris as backend <br>22:00 - Latency tuning and express zone support <br>24:00 - Can Graft run locally or with Minio? <br>27:00 - Page store vs meta store in Graft <br>36:00 - Index-aware prefetching in SQLite <br>38:00 - Prefetching intelligence: Graft vs driver <br>40:00 - The benefits of Graft's architectural simplicity <br>48:00 - Three use cases: apps, web apps, and replicas <br>50:00 - Sync timing and perceived latency <br>59:00 - Replaying transactions vs logical conflict resolution <br>1:03:00 - What’s next for Graft and how to get involved <br>1:05:00 - Hacker News reception and blog post feedback <br>1:06:30 - Closing thoughts and where to find Carl</p>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>Want to learn more SQLite? Check out my SQLite course: https://highperformancesqlite.com </p><p>In this episode, Carl Sverre and I discuss why syncing everything is a bad idea and how his new project, Graft, makes edge-native, partially replicated databases possible. We dig into SQLite, object storage, transactional guarantees, and why Graft might be the foundation for serverless database replicas. </p><p>SQLSync: https://sqlsync.dev <br>Stop syncing everything blog post: https://sqlsync.dev/posts/stop-syncing-everything <br>Graft: https://github.com/orbitinghail/graft </p><p>Follow Carl: <br>Twitter: https://twitter.com/carlsverre <br>LinkedIn: https://www.linkedin.com/in/carlsverre <br>Website: https://carlsverre.com/ </p><p>Follow Aaron: Twitter: https://twitter.com/aarondfrancis <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis <br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Database school on YouTube: https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15<br>Database school audio only: https://databaseschool.transistor.fm  </p><p>Chapters: 00:00 - Intro and Carl’s controversial blog title <br>01:00 - Why “stop syncing everything” doesn't mean stop syncing <br>02:30 - The problem with full database syncs <br>03:20 - Quick recap of SQL Sync and multiplayer SQLite <br>04:45 - How SQL Sync works using physical replication <br>06:00 - The limitations that led to building Graft <br>09:00 - What is Graft? A high-level overview <br>16:30 - Syncing architecture: how Graft scales <br>18:00 - Graft's stateless design and Fly.io integration <br>20:00 - S3 compatibility and using Tigris as backend <br>22:00 - Latency tuning and express zone support <br>24:00 - Can Graft run locally or with Minio? <br>27:00 - Page store vs meta store in Graft <br>36:00 - Index-aware prefetching in SQLite <br>38:00 - Prefetching intelligence: Graft vs driver <br>40:00 - The benefits of Graft's architectural simplicity <br>48:00 - Three use cases: apps, web apps, and replicas <br>50:00 - Sync timing and perceived latency <br>59:00 - Replaying transactions vs logical conflict resolution <br>1:03:00 - What’s next for Graft and how to get involved <br>1:05:00 - Hacker News reception and blog post feedback <br>1:06:30 - Closing thoughts and where to find Carl</p>]]>
      </content:encoded>
      <pubDate>Fri, 18 Apr 2025 11:38:00 -0500</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/6dc15ef3/d950234d.mp3" length="55549064" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:duration>5339</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>Want to learn more SQLite? Check out my SQLite course: https://highperformancesqlite.com </p><p>In this episode, Carl Sverre and I discuss why syncing everything is a bad idea and how his new project, Graft, makes edge-native, partially replicated databases possible. We dig into SQLite, object storage, transactional guarantees, and why Graft might be the foundation for serverless database replicas. </p><p>SQLSync: https://sqlsync.dev <br>Stop syncing everything blog post: https://sqlsync.dev/posts/stop-syncing-everything <br>Graft: https://github.com/orbitinghail/graft </p><p>Follow Carl: <br>Twitter: https://twitter.com/carlsverre <br>LinkedIn: https://www.linkedin.com/in/carlsverre <br>Website: https://carlsverre.com/ </p><p>Follow Aaron: Twitter: https://twitter.com/aarondfrancis <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis <br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Database school on YouTube: https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15<br>Database school audio only: https://databaseschool.transistor.fm  </p><p>Chapters: 00:00 - Intro and Carl’s controversial blog title <br>01:00 - Why “stop syncing everything” doesn't mean stop syncing <br>02:30 - The problem with full database syncs <br>03:20 - Quick recap of SQL Sync and multiplayer SQLite <br>04:45 - How SQL Sync works using physical replication <br>06:00 - The limitations that led to building Graft <br>09:00 - What is Graft? A high-level overview <br>16:30 - Syncing architecture: how Graft scales <br>18:00 - Graft's stateless design and Fly.io integration <br>20:00 - S3 compatibility and using Tigris as backend <br>22:00 - Latency tuning and express zone support <br>24:00 - Can Graft run locally or with Minio? <br>27:00 - Page store vs meta store in Graft <br>36:00 - Index-aware prefetching in SQLite <br>38:00 - Prefetching intelligence: Graft vs driver <br>40:00 - The benefits of Graft's architectural simplicity <br>48:00 - Three use cases: apps, web apps, and replicas <br>50:00 - Sync timing and perceived latency <br>59:00 - Replaying transactions vs logical conflict resolution <br>1:03:00 - What’s next for Graft and how to get involved <br>1:05:00 - Hacker News reception and blog post feedback <br>1:06:30 - Closing thoughts and where to find Carl</p>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>Postgres on bare metal with the CEO of Prisma</title>
      <itunes:episode>11</itunes:episode>
      <podcast:episode>11</podcast:episode>
      <itunes:title>Postgres on bare metal with the CEO of Prisma</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">1243c8a7-51c9-4196-b3c5-81c6e1f30282</guid>
      <link>https://share.transistor.fm/s/cc2a901d</link>
      <description>
        <![CDATA[<p>Prisma started as a GraphQL backend and pivoted into one of the most widely used ORMs in the world. Now, they’ve launched Prisma Postgres, and CEO Søren Bramer Schmidt is here to break down the journey, the challenges, and the massive technical innovations behind it—including bare-metal servers, Firecracker microVMs, and unikernels. If you care about databases, performance, or scaling, this one’s for you.</p><p>Want to learn more Postgres? Check out my Postgres course: https://masteringpostgres.com.</p><p>Follow Søren:<br>Twitter: https://twitter.com/sorenbs<br>GitHub: https://github.com/prisma/prisma<br>Prisma Postgres: https://www.prisma.io/postgres</p><p>Follow Aaron:<br>Twitter:  https://twitter.com/aarondfrancis <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Database school on YouTube: https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15<br>Database school audio only: https://databaseschool.transistor.fm </p><p>Chapters:<br>00:00 - Introduction<br>01:15 - The Origins of Prisma: From GraphQL to ORM<br>02:55 - Why Firebase &amp; Parse Inspired Prisma<br>04:04 - The Pivot: From GraphQL to Prisma ORM<br>06:00 - Why They Abandoned Backend-as-a-Service<br>08:07 - The Open Source Business Model Debate<br>10:15 - The Challenges of Monetizing an ORM<br>12:42 - Building Prisma Accelerate &amp; Pulse<br>14:55 - How Prisma Accelerate Optimizes Database Access<br>17:00 - Real-Time Database Updates with Prisma Pulse<br>20:03 - How Prisma Pulse Handles Change Data Capture (CDC)<br>23:15 - Users Wanted a Hosted Database (Even When Prisma Didn’t)<br>25:40 - Why Prisma Finally Launched Prisma Postgres<br>27:32 - Unikernels, Firecracker MicroVMs &amp; Running Millions of Databases<br>31:10 - Bare Metal Servers vs. AWS: The Controversial Choice<br>34:40 - How Prisma Routes Queries for Low Latency<br>38:02 - Scaling, Cost Efficiency &amp; Performance Benefits<br>42:10 - The Prisma Postgres Roadmap &amp; Future Features<br>45:30 - Why Prisma is Competing with AWS &amp; The Big Cloud Players<br>48:05 - Final Thoughts &amp; Where to Learn More</p>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>Prisma started as a GraphQL backend and pivoted into one of the most widely used ORMs in the world. Now, they’ve launched Prisma Postgres, and CEO Søren Bramer Schmidt is here to break down the journey, the challenges, and the massive technical innovations behind it—including bare-metal servers, Firecracker microVMs, and unikernels. If you care about databases, performance, or scaling, this one’s for you.</p><p>Want to learn more Postgres? Check out my Postgres course: https://masteringpostgres.com.</p><p>Follow Søren:<br>Twitter: https://twitter.com/sorenbs<br>GitHub: https://github.com/prisma/prisma<br>Prisma Postgres: https://www.prisma.io/postgres</p><p>Follow Aaron:<br>Twitter:  https://twitter.com/aarondfrancis <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Database school on YouTube: https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15<br>Database school audio only: https://databaseschool.transistor.fm </p><p>Chapters:<br>00:00 - Introduction<br>01:15 - The Origins of Prisma: From GraphQL to ORM<br>02:55 - Why Firebase &amp; Parse Inspired Prisma<br>04:04 - The Pivot: From GraphQL to Prisma ORM<br>06:00 - Why They Abandoned Backend-as-a-Service<br>08:07 - The Open Source Business Model Debate<br>10:15 - The Challenges of Monetizing an ORM<br>12:42 - Building Prisma Accelerate &amp; Pulse<br>14:55 - How Prisma Accelerate Optimizes Database Access<br>17:00 - Real-Time Database Updates with Prisma Pulse<br>20:03 - How Prisma Pulse Handles Change Data Capture (CDC)<br>23:15 - Users Wanted a Hosted Database (Even When Prisma Didn’t)<br>25:40 - Why Prisma Finally Launched Prisma Postgres<br>27:32 - Unikernels, Firecracker MicroVMs &amp; Running Millions of Databases<br>31:10 - Bare Metal Servers vs. AWS: The Controversial Choice<br>34:40 - How Prisma Routes Queries for Low Latency<br>38:02 - Scaling, Cost Efficiency &amp; Performance Benefits<br>42:10 - The Prisma Postgres Roadmap &amp; Future Features<br>45:30 - Why Prisma is Competing with AWS &amp; The Big Cloud Players<br>48:05 - Final Thoughts &amp; Where to Learn More</p>]]>
      </content:encoded>
      <pubDate>Mon, 17 Feb 2025 11:46:41 -0600</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/cc2a901d/fc375a7c.mp3" length="42561896" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:duration>5043</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>Prisma started as a GraphQL backend and pivoted into one of the most widely used ORMs in the world. Now, they’ve launched Prisma Postgres, and CEO Søren Bramer Schmidt is here to break down the journey, the challenges, and the massive technical innovations behind it—including bare-metal servers, Firecracker microVMs, and unikernels. If you care about databases, performance, or scaling, this one’s for you.</p><p>Want to learn more Postgres? Check out my Postgres course: https://masteringpostgres.com.</p><p>Follow Søren:<br>Twitter: https://twitter.com/sorenbs<br>GitHub: https://github.com/prisma/prisma<br>Prisma Postgres: https://www.prisma.io/postgres</p><p>Follow Aaron:<br>Twitter:  https://twitter.com/aarondfrancis <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis<br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Database school on YouTube: https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15<br>Database school audio only: https://databaseschool.transistor.fm </p><p>Chapters:<br>00:00 - Introduction<br>01:15 - The Origins of Prisma: From GraphQL to ORM<br>02:55 - Why Firebase &amp; Parse Inspired Prisma<br>04:04 - The Pivot: From GraphQL to Prisma ORM<br>06:00 - Why They Abandoned Backend-as-a-Service<br>08:07 - The Open Source Business Model Debate<br>10:15 - The Challenges of Monetizing an ORM<br>12:42 - Building Prisma Accelerate &amp; Pulse<br>14:55 - How Prisma Accelerate Optimizes Database Access<br>17:00 - Real-Time Database Updates with Prisma Pulse<br>20:03 - How Prisma Pulse Handles Change Data Capture (CDC)<br>23:15 - Users Wanted a Hosted Database (Even When Prisma Didn’t)<br>25:40 - Why Prisma Finally Launched Prisma Postgres<br>27:32 - Unikernels, Firecracker MicroVMs &amp; Running Millions of Databases<br>31:10 - Bare Metal Servers vs. AWS: The Controversial Choice<br>34:40 - How Prisma Routes Queries for Low Latency<br>38:02 - Scaling, Cost Efficiency &amp; Performance Benefits<br>42:10 - The Prisma Postgres Roadmap &amp; Future Features<br>45:30 - Why Prisma is Competing with AWS &amp; The Big Cloud Players<br>48:05 - Final Thoughts &amp; Where to Learn More</p>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>Moving from Redis to SQLite with Mike Buckbee</title>
      <itunes:episode>10</itunes:episode>
      <podcast:episode>10</podcast:episode>
      <itunes:title>Moving from Redis to SQLite with Mike Buckbee</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">72ea260c-f8f7-46d8-97ab-a07f57073b26</guid>
      <link>https://share.transistor.fm/s/aa1a7338</link>
      <description>
        <![CDATA[<p>Want to learn more SQLite? Check out my SQLite course: https://highperformancesqlite.com </p><p>In this episode, I sit down with Mike Buckbee to dive into the nitty-gritty of web application firewalls and his journey from using Redis to SQLite in Wafris. We talk about database architecture, operational challenges, and the fascinating ways SQLite improves performance and usability in cybersecurity tools. </p><p>Get production ready SQLite with Turso: https://tur.so/af. </p><p>Follow Mike: <br>Twitter: https://twitter.com/mbuckbee <br>LinkedIn: https://www.linkedin.com/in/michaelbuckbee <br>Wafris website: https://wafris.org <br>Rearchitecting Redis to SQLite article: https://wafris.org/blog/rearchitecting-for-sqlite </p><p>Follow Aaron: <br>Twitter: https://twitter.com/aarondfrancis <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis <br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Database school on YouTube: https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15<br>Database school audio only: https://databaseschool.transistor.fm  </p><p>Chapters: 00:00 - Introduction and Guest Overview <br>01:06 - What is Wafris? <br>02:43 - Naming and Origins of Wafris <br>04:00 - Mike's Cybersecurity Background <br>07:17 - Challenges with Web Application Firewalls <br>10:01 - Wafris Architecture Overview <br>16:15 - Why Switch to SQLite? <br>18:01 - Handling IP Address Ranges <br>24:00 - Wild Redis Data Structures Explained <br>28:51 - Transitioning to SQLite <br>32:02 - Operational Advantages of SQLite <br>37:04 - How Wafris Leverages Threat Lists <br>40:13 - Performance Gains with SQLite <br>46:51 - Splitting Reads and Writes in the New Architecture <br>52:29 - Closing Thoughts and Where to Learn More</p>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>Want to learn more SQLite? Check out my SQLite course: https://highperformancesqlite.com </p><p>In this episode, I sit down with Mike Buckbee to dive into the nitty-gritty of web application firewalls and his journey from using Redis to SQLite in Wafris. We talk about database architecture, operational challenges, and the fascinating ways SQLite improves performance and usability in cybersecurity tools. </p><p>Get production ready SQLite with Turso: https://tur.so/af. </p><p>Follow Mike: <br>Twitter: https://twitter.com/mbuckbee <br>LinkedIn: https://www.linkedin.com/in/michaelbuckbee <br>Wafris website: https://wafris.org <br>Rearchitecting Redis to SQLite article: https://wafris.org/blog/rearchitecting-for-sqlite </p><p>Follow Aaron: <br>Twitter: https://twitter.com/aarondfrancis <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis <br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Database school on YouTube: https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15<br>Database school audio only: https://databaseschool.transistor.fm  </p><p>Chapters: 00:00 - Introduction and Guest Overview <br>01:06 - What is Wafris? <br>02:43 - Naming and Origins of Wafris <br>04:00 - Mike's Cybersecurity Background <br>07:17 - Challenges with Web Application Firewalls <br>10:01 - Wafris Architecture Overview <br>16:15 - Why Switch to SQLite? <br>18:01 - Handling IP Address Ranges <br>24:00 - Wild Redis Data Structures Explained <br>28:51 - Transitioning to SQLite <br>32:02 - Operational Advantages of SQLite <br>37:04 - How Wafris Leverages Threat Lists <br>40:13 - Performance Gains with SQLite <br>46:51 - Splitting Reads and Writes in the New Architecture <br>52:29 - Closing Thoughts and Where to Learn More</p>]]>
      </content:encoded>
      <pubDate>Tue, 26 Nov 2024 12:50:27 -0600</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/aa1a7338/10a05b63.mp3" length="43224941" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:duration>4154</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>Want to learn more SQLite? Check out my SQLite course: https://highperformancesqlite.com </p><p>In this episode, I sit down with Mike Buckbee to dive into the nitty-gritty of web application firewalls and his journey from using Redis to SQLite in Wafris. We talk about database architecture, operational challenges, and the fascinating ways SQLite improves performance and usability in cybersecurity tools. </p><p>Get production ready SQLite with Turso: https://tur.so/af. </p><p>Follow Mike: <br>Twitter: https://twitter.com/mbuckbee <br>LinkedIn: https://www.linkedin.com/in/michaelbuckbee <br>Wafris website: https://wafris.org <br>Rearchitecting Redis to SQLite article: https://wafris.org/blog/rearchitecting-for-sqlite </p><p>Follow Aaron: <br>Twitter: https://twitter.com/aarondfrancis <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis <br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more.</p><p>Database school on YouTube: https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15<br>Database school audio only: https://databaseschool.transistor.fm  </p><p>Chapters: 00:00 - Introduction and Guest Overview <br>01:06 - What is Wafris? <br>02:43 - Naming and Origins of Wafris <br>04:00 - Mike's Cybersecurity Background <br>07:17 - Challenges with Web Application Firewalls <br>10:01 - Wafris Architecture Overview <br>16:15 - Why Switch to SQLite? <br>18:01 - Handling IP Address Ranges <br>24:00 - Wild Redis Data Structures Explained <br>28:51 - Transitioning to SQLite <br>32:02 - Operational Advantages of SQLite <br>37:04 - How Wafris Leverages Threat Lists <br>40:13 - Performance Gains with SQLite <br>46:51 - Splitting Reads and Writes in the New Architecture <br>52:29 - Closing Thoughts and Where to Learn More</p>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>Bootstrapping an email service provider (with Jesse Hanley)</title>
      <itunes:episode>9</itunes:episode>
      <podcast:episode>9</podcast:episode>
      <itunes:title>Bootstrapping an email service provider (with Jesse Hanley)</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">73654410-8a90-434d-bd32-3cfe8b09365c</guid>
      <link>https://share.transistor.fm/s/7041e277</link>
      <description>
        <![CDATA[<p>Want to learn more Postgres? Check out my Postgres course: https://masteringpostgres.com. </p><p>In this interview, I talk with Jesse Hanley, founder of Bento, about running a lean email service from Japan. We chat about the challenges of scaling infrastructure, managing databases, and maintaining a calm business while serving a global customer base. </p><p>Links Mentioned: <br>Bento: https://bentonow.com <br>Database school on YouTube: https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15 <br>Database school audio only: https://databaseschool.transistor.fm </p><p>Follow Jesse: <br>Twitter: https://twitter.com/jessethanley <br>Bento on Twitter: https://twitter.com/Bento </p><p>Follow Aaron: <br>Twitter: https://twitter.com/aarondfrancis <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis <br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more. </p><p>Database school on YouTube: https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15<br>Database school audio only: https://databaseschool.transistor.fm </p><p>Chapters: <br>00:00 - Introduction to Jesse Hanley <br>01:02 - Running Bento from Japan <br>01:48 - The Lean Team Structure at Bento <br>03:00 - Managing Support via Discord <br>05:01 - Benefits of Using Discord for Customer Support <br>06:45 - The Role of Community in Customer Feedback <br>09:01 - How Bento Gained Traction <br>13:00 - Bootstrapping Bento and Profitable Growth <br>16:00 - Running Your Own Mail Servers <br>19:03 - The Economics and Redundancy of Email Delivery <br>21:00 - Bento's Heroku Setup and Scaling Challenges <br>26:00 - Handling and Querying Massive Data in Bento <br>29:52 - Leveraging Elasticsearch for Data Queries <br>35:40 - Moving Toward Multi-Database Solutions <br>37:45 - Exploring Crunchy Data and Citus for Database Scaling <br>42:00 - Optimizing Bento for Performance and Scalability <br>54:02 - Jesse’s Advice on Building a Calm and Profitable Business <br>57:00 - How Bento Uses WebSockets and Background Jobs <br>1:00:00 - Optimizing Bento with Action Cable <br>1:02:25 - Avoiding N+1 Queries with WebSockets <br>1:04:50 - Scaling Redis and Postgres at Bento <br>1:09:00 - Jesse’s Approach to Managing Growth and Multiple Services <br>1:11:00 - Final Thoughts on Scaling and Optimizing Databases <br>1:13:10 - Advice for Aspiring Builders: Stay Patient and True to Your Vision <br>1:16:00 - Bento’s Unique Approach to Email Marketing and Transactional Emails <br>1:19:50 - Closing Thoughts and Where to Find Jesse Hanley Online</p>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>Want to learn more Postgres? Check out my Postgres course: https://masteringpostgres.com. </p><p>In this interview, I talk with Jesse Hanley, founder of Bento, about running a lean email service from Japan. We chat about the challenges of scaling infrastructure, managing databases, and maintaining a calm business while serving a global customer base. </p><p>Links Mentioned: <br>Bento: https://bentonow.com <br>Database school on YouTube: https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15 <br>Database school audio only: https://databaseschool.transistor.fm </p><p>Follow Jesse: <br>Twitter: https://twitter.com/jessethanley <br>Bento on Twitter: https://twitter.com/Bento </p><p>Follow Aaron: <br>Twitter: https://twitter.com/aarondfrancis <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis <br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more. </p><p>Database school on YouTube: https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15<br>Database school audio only: https://databaseschool.transistor.fm </p><p>Chapters: <br>00:00 - Introduction to Jesse Hanley <br>01:02 - Running Bento from Japan <br>01:48 - The Lean Team Structure at Bento <br>03:00 - Managing Support via Discord <br>05:01 - Benefits of Using Discord for Customer Support <br>06:45 - The Role of Community in Customer Feedback <br>09:01 - How Bento Gained Traction <br>13:00 - Bootstrapping Bento and Profitable Growth <br>16:00 - Running Your Own Mail Servers <br>19:03 - The Economics and Redundancy of Email Delivery <br>21:00 - Bento's Heroku Setup and Scaling Challenges <br>26:00 - Handling and Querying Massive Data in Bento <br>29:52 - Leveraging Elasticsearch for Data Queries <br>35:40 - Moving Toward Multi-Database Solutions <br>37:45 - Exploring Crunchy Data and Citus for Database Scaling <br>42:00 - Optimizing Bento for Performance and Scalability <br>54:02 - Jesse’s Advice on Building a Calm and Profitable Business <br>57:00 - How Bento Uses WebSockets and Background Jobs <br>1:00:00 - Optimizing Bento with Action Cable <br>1:02:25 - Avoiding N+1 Queries with WebSockets <br>1:04:50 - Scaling Redis and Postgres at Bento <br>1:09:00 - Jesse’s Approach to Managing Growth and Multiple Services <br>1:11:00 - Final Thoughts on Scaling and Optimizing Databases <br>1:13:10 - Advice for Aspiring Builders: Stay Patient and True to Your Vision <br>1:16:00 - Bento’s Unique Approach to Email Marketing and Transactional Emails <br>1:19:50 - Closing Thoughts and Where to Find Jesse Hanley Online</p>]]>
      </content:encoded>
      <pubDate>Mon, 14 Oct 2024 14:30:24 -0500</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/7041e277/6bd7cf12.mp3" length="48312015" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:image href="https://img.transistorcdn.com/x0p5YHsHZfni_T8tNW9sqpc3eMLl8VFPfk3nLOlG5X0/rs:fill:0:0:1/w:1400/h:1400/q:60/mb:500000/aHR0cHM6Ly9pbWct/dXBsb2FkLXByb2R1/Y3Rpb24udHJhbnNp/c3Rvci5mbS8xZjdm/MDZkNjUzZDdkYWI1/MjVlNTA5ODM0YmUy/YjZiYi5qcGc.jpg"/>
      <itunes:duration>4919</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>Want to learn more Postgres? Check out my Postgres course: https://masteringpostgres.com. </p><p>In this interview, I talk with Jesse Hanley, founder of Bento, about running a lean email service from Japan. We chat about the challenges of scaling infrastructure, managing databases, and maintaining a calm business while serving a global customer base. </p><p>Links Mentioned: <br>Bento: https://bentonow.com <br>Database school on YouTube: https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15 <br>Database school audio only: https://databaseschool.transistor.fm </p><p>Follow Jesse: <br>Twitter: https://twitter.com/jessethanley <br>Bento on Twitter: https://twitter.com/Bento </p><p>Follow Aaron: <br>Twitter: https://twitter.com/aarondfrancis <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis <br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more. </p><p>Database school on YouTube: https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15<br>Database school audio only: https://databaseschool.transistor.fm </p><p>Chapters: <br>00:00 - Introduction to Jesse Hanley <br>01:02 - Running Bento from Japan <br>01:48 - The Lean Team Structure at Bento <br>03:00 - Managing Support via Discord <br>05:01 - Benefits of Using Discord for Customer Support <br>06:45 - The Role of Community in Customer Feedback <br>09:01 - How Bento Gained Traction <br>13:00 - Bootstrapping Bento and Profitable Growth <br>16:00 - Running Your Own Mail Servers <br>19:03 - The Economics and Redundancy of Email Delivery <br>21:00 - Bento's Heroku Setup and Scaling Challenges <br>26:00 - Handling and Querying Massive Data in Bento <br>29:52 - Leveraging Elasticsearch for Data Queries <br>35:40 - Moving Toward Multi-Database Solutions <br>37:45 - Exploring Crunchy Data and Citus for Database Scaling <br>42:00 - Optimizing Bento for Performance and Scalability <br>54:02 - Jesse’s Advice on Building a Calm and Profitable Business <br>57:00 - How Bento Uses WebSockets and Background Jobs <br>1:00:00 - Optimizing Bento with Action Cable <br>1:02:25 - Avoiding N+1 Queries with WebSockets <br>1:04:50 - Scaling Redis and Postgres at Bento <br>1:09:00 - Jesse’s Approach to Managing Growth and Multiple Services <br>1:11:00 - Final Thoughts on Scaling and Optimizing Databases <br>1:13:10 - Advice for Aspiring Builders: Stay Patient and True to Your Vision <br>1:16:00 - Bento’s Unique Approach to Email Marketing and Transactional Emails <br>1:19:50 - Closing Thoughts and Where to Find Jesse Hanley Online</p>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>Creating a Postgres platform with Monica &amp; Tudor from Xata.io</title>
      <itunes:episode>8</itunes:episode>
      <podcast:episode>8</podcast:episode>
      <itunes:title>Creating a Postgres platform with Monica &amp; Tudor from Xata.io</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">78bc3e69-3da9-4c1d-9e21-a4d5f324761a</guid>
      <link>https://share.transistor.fm/s/2f9a307b</link>
      <description>
        <![CDATA[<p>Want to learn more Postgres? Check out my Postgres course: https://masteringpostgres.com. </p><p>Production ready Postgres for teams that ship fast: https://xata.io In this interview, I talk with Monica Sarbu and Tudor Golubenco from Xata about their journey from Elastic to founding Xata. We deep dive on building a Postgres hosting platform, handling schema changes, and how they've made their free tier economical. </p><p>Links Mentioned: <br>Xata.io: https://xata.io/ The economics of a Postgres free tier: <br>https://xata.io/blog/postgres-free-tier </p><p>Follow Monica &amp; Tudor: <br>Monica on Twitter: https://twitter.com/monicasarbu <br>Monica on LinkedIn: https://www.linkedin.com/in/monicasarbu <br>Tudor on Twitter: https://twitter.com/tudor_g <br>Tudor on LinkedIn: https://www.linkedin.com/in/tudorgolubenco/ </p><p>Follow Aaron: <br>Twitter: https://twitter.com/aarondfrancis <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis <br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more. </p><p>Database school on YouTube: https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15<br>Database school audio only: https://databaseschool.transistor.fm </p><p>Chapters: <br>00:00 - Introduction <br>00:26 - What is Xata? Overview and Mission <br>01:32 - Open Source Projects: PG Roll and PG Stream <br>02:33 - Synchronizing Data: Postgres to Elastic Search <br>03:12 - Monica and Tudor's Background &amp; Journey to Elastic <br>04:00 - Founding of Packetbeat: The Start of Open Source Monitoring <br>06:08 - Transition from Elastic to Starting Xata <br>07:00 - Launching a Nonprofit and Insights on Database Challenges <br>08:29 - The Idea Behind Xata: Simplifying Application Development <br>10:00 - Tudor Joins Xata: The Decision to Start Again <br>10:47 - The Technical Vision for Xata's Platform <br>12:06 - Founding Xata During the Pandemic 13:11 - Funding Journey: From Seed to Series A <br>15:07 - Building a Platform, Not Just a Hosted Database <br>17:20 - Introducing Postgres to Xata's Stack <br>20:19 - Navigating Postgres as a DBA <br>22:44 - Open Source Strategy &amp; Community Building <br>27:48 - PG Stream Use Cases &amp; Postgres Replication <br>32:08 - PG Roll for Zero Downtime Schema Changes <br>36:05 - Implementing Safe and Fast Schema Changes <br>39:49 - Blob Storage and Cloudflare Integration <br>45:11 - Xata's Unique Features: Serving Builders and Larger Teams <br>49:20 - Free Tier Economics and Why It Matters <br>56:04 - Working as a Husband-Wife Team</p>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>Want to learn more Postgres? Check out my Postgres course: https://masteringpostgres.com. </p><p>Production ready Postgres for teams that ship fast: https://xata.io In this interview, I talk with Monica Sarbu and Tudor Golubenco from Xata about their journey from Elastic to founding Xata. We deep dive on building a Postgres hosting platform, handling schema changes, and how they've made their free tier economical. </p><p>Links Mentioned: <br>Xata.io: https://xata.io/ The economics of a Postgres free tier: <br>https://xata.io/blog/postgres-free-tier </p><p>Follow Monica &amp; Tudor: <br>Monica on Twitter: https://twitter.com/monicasarbu <br>Monica on LinkedIn: https://www.linkedin.com/in/monicasarbu <br>Tudor on Twitter: https://twitter.com/tudor_g <br>Tudor on LinkedIn: https://www.linkedin.com/in/tudorgolubenco/ </p><p>Follow Aaron: <br>Twitter: https://twitter.com/aarondfrancis <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis <br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more. </p><p>Database school on YouTube: https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15<br>Database school audio only: https://databaseschool.transistor.fm </p><p>Chapters: <br>00:00 - Introduction <br>00:26 - What is Xata? Overview and Mission <br>01:32 - Open Source Projects: PG Roll and PG Stream <br>02:33 - Synchronizing Data: Postgres to Elastic Search <br>03:12 - Monica and Tudor's Background &amp; Journey to Elastic <br>04:00 - Founding of Packetbeat: The Start of Open Source Monitoring <br>06:08 - Transition from Elastic to Starting Xata <br>07:00 - Launching a Nonprofit and Insights on Database Challenges <br>08:29 - The Idea Behind Xata: Simplifying Application Development <br>10:00 - Tudor Joins Xata: The Decision to Start Again <br>10:47 - The Technical Vision for Xata's Platform <br>12:06 - Founding Xata During the Pandemic 13:11 - Funding Journey: From Seed to Series A <br>15:07 - Building a Platform, Not Just a Hosted Database <br>17:20 - Introducing Postgres to Xata's Stack <br>20:19 - Navigating Postgres as a DBA <br>22:44 - Open Source Strategy &amp; Community Building <br>27:48 - PG Stream Use Cases &amp; Postgres Replication <br>32:08 - PG Roll for Zero Downtime Schema Changes <br>36:05 - Implementing Safe and Fast Schema Changes <br>39:49 - Blob Storage and Cloudflare Integration <br>45:11 - Xata's Unique Features: Serving Builders and Larger Teams <br>49:20 - Free Tier Economics and Why It Matters <br>56:04 - Working as a Husband-Wife Team</p>]]>
      </content:encoded>
      <pubDate>Mon, 07 Oct 2024 13:09:32 -0500</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/2f9a307b/f41646c2.mp3" length="38338003" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:image href="https://img.transistorcdn.com/7CxDoxUApwIeZmOEAK99lZI1omLYpViupqNgFhkiGmY/rs:fill:0:0:1/w:1400/h:1400/q:60/mb:500000/aHR0cHM6Ly9pbWct/dXBsb2FkLXByb2R1/Y3Rpb24udHJhbnNp/c3Rvci5mbS85YThh/NjJmMmQwMGI5MDQy/NDFjZGYzYmFlMjUy/ZjY0ZS5qcGc.jpg"/>
      <itunes:duration>3681</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>Want to learn more Postgres? Check out my Postgres course: https://masteringpostgres.com. </p><p>Production ready Postgres for teams that ship fast: https://xata.io In this interview, I talk with Monica Sarbu and Tudor Golubenco from Xata about their journey from Elastic to founding Xata. We deep dive on building a Postgres hosting platform, handling schema changes, and how they've made their free tier economical. </p><p>Links Mentioned: <br>Xata.io: https://xata.io/ The economics of a Postgres free tier: <br>https://xata.io/blog/postgres-free-tier </p><p>Follow Monica &amp; Tudor: <br>Monica on Twitter: https://twitter.com/monicasarbu <br>Monica on LinkedIn: https://www.linkedin.com/in/monicasarbu <br>Tudor on Twitter: https://twitter.com/tudor_g <br>Tudor on LinkedIn: https://www.linkedin.com/in/tudorgolubenco/ </p><p>Follow Aaron: <br>Twitter: https://twitter.com/aarondfrancis <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis <br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more. </p><p>Database school on YouTube: https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15<br>Database school audio only: https://databaseschool.transistor.fm </p><p>Chapters: <br>00:00 - Introduction <br>00:26 - What is Xata? Overview and Mission <br>01:32 - Open Source Projects: PG Roll and PG Stream <br>02:33 - Synchronizing Data: Postgres to Elastic Search <br>03:12 - Monica and Tudor's Background &amp; Journey to Elastic <br>04:00 - Founding of Packetbeat: The Start of Open Source Monitoring <br>06:08 - Transition from Elastic to Starting Xata <br>07:00 - Launching a Nonprofit and Insights on Database Challenges <br>08:29 - The Idea Behind Xata: Simplifying Application Development <br>10:00 - Tudor Joins Xata: The Decision to Start Again <br>10:47 - The Technical Vision for Xata's Platform <br>12:06 - Founding Xata During the Pandemic 13:11 - Funding Journey: From Seed to Series A <br>15:07 - Building a Platform, Not Just a Hosted Database <br>17:20 - Introducing Postgres to Xata's Stack <br>20:19 - Navigating Postgres as a DBA <br>22:44 - Open Source Strategy &amp; Community Building <br>27:48 - PG Stream Use Cases &amp; Postgres Replication <br>32:08 - PG Roll for Zero Downtime Schema Changes <br>36:05 - Implementing Safe and Fast Schema Changes <br>39:49 - Blob Storage and Cloudflare Integration <br>45:11 - Xata's Unique Features: Serving Builders and Larger Teams <br>49:20 - Free Tier Economics and Why It Matters <br>56:04 - Working as a Husband-Wife Team</p>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>Heroku's glory days &amp; Postgres vs the world, w/ Craig Kerstiens</title>
      <itunes:episode>7</itunes:episode>
      <podcast:episode>7</podcast:episode>
      <itunes:title>Heroku's glory days &amp; Postgres vs the world, w/ Craig Kerstiens</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">6e516a46-c59d-4e15-a43a-82bf1fe198a6</guid>
      <link>https://share.transistor.fm/s/d248467d</link>
      <description>
        <![CDATA[<p>Want to learn more Postgres? Check out my Postgres course: https://masteringpostgres.com. </p><p>In this interview, I dive deep with Craig Kerstiens from Crunchy Data into the world of Postgres, covering its rise to prominence, scaling at Heroku, and the power of Postgres extensions. Craig also shares insights on database sharding, the future of Postgres, and why developers love working with it. </p><p>Follow Craig: <br>Twitter: https://twitter.com/craigkerstiens <br>Crunchy Data Blog: https://www.crunchydata.com/blog </p><p>Follow Aaron: <br>Twitter: https://twitter.com/aarondfrancis <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis <br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more. </p><p>Chapters: <br>00:00 - Introduction: Welcome to Database School <br>00:20 - Guest Introduction: Craig Kerstiens and Crunchy Data <br>01:40 - Craig's Journey from Heroku to Crunchy Data <br>02:55 - Scaling Postgres at Heroku <br>04:50 - Mastering Postgres Course Announcement <br>05:30 - The Importance of Postgres at Heroku <br>07:50 - The Value of Live SQL with Data Clips <br>09:25 - Data Clips for Business Intelligence and Real-Time Analytics <br>11:05 - Heroku’s Unique Company Culture and How Data Clips Came to Be <br>12:30 - Postgres Extensions and Marketplace <br>14:00 - Citus: Scaling Postgres for Multi-Tenant Applications <br>15:40 - The Challenges of Sharding in Databases <br>18:00 - Managing Large Databases and Sharding Keys with Citus <br>24:00 - The Evolution of Postgres and Its Growing Popularity <br>31:00 - Postgres for Developers and the Importance of Extensions <br>35:00 - Extensions as Proving Grounds for Core Postgres Features <br>37:50 - Building an Extension Marketplace for Postgres <br>41:00 - Postgres as a Data Platform and Developer Flexibility <br>46:00 - Why Developers Love Postgres: Stability, Extensions, and Ownership <br>51:00 - DuckDB: A Fascinating New Database Approach <br>53:30 - Crunchy Data: What They Offer and Why It Matters <br>58:30 - Expanding Postgres with DuckDB for Data Warehousing <br>01:00:00 - Wrapping Up: Where to Find Craig and Crunchy Data</p>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>Want to learn more Postgres? Check out my Postgres course: https://masteringpostgres.com. </p><p>In this interview, I dive deep with Craig Kerstiens from Crunchy Data into the world of Postgres, covering its rise to prominence, scaling at Heroku, and the power of Postgres extensions. Craig also shares insights on database sharding, the future of Postgres, and why developers love working with it. </p><p>Follow Craig: <br>Twitter: https://twitter.com/craigkerstiens <br>Crunchy Data Blog: https://www.crunchydata.com/blog </p><p>Follow Aaron: <br>Twitter: https://twitter.com/aarondfrancis <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis <br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more. </p><p>Chapters: <br>00:00 - Introduction: Welcome to Database School <br>00:20 - Guest Introduction: Craig Kerstiens and Crunchy Data <br>01:40 - Craig's Journey from Heroku to Crunchy Data <br>02:55 - Scaling Postgres at Heroku <br>04:50 - Mastering Postgres Course Announcement <br>05:30 - The Importance of Postgres at Heroku <br>07:50 - The Value of Live SQL with Data Clips <br>09:25 - Data Clips for Business Intelligence and Real-Time Analytics <br>11:05 - Heroku’s Unique Company Culture and How Data Clips Came to Be <br>12:30 - Postgres Extensions and Marketplace <br>14:00 - Citus: Scaling Postgres for Multi-Tenant Applications <br>15:40 - The Challenges of Sharding in Databases <br>18:00 - Managing Large Databases and Sharding Keys with Citus <br>24:00 - The Evolution of Postgres and Its Growing Popularity <br>31:00 - Postgres for Developers and the Importance of Extensions <br>35:00 - Extensions as Proving Grounds for Core Postgres Features <br>37:50 - Building an Extension Marketplace for Postgres <br>41:00 - Postgres as a Data Platform and Developer Flexibility <br>46:00 - Why Developers Love Postgres: Stability, Extensions, and Ownership <br>51:00 - DuckDB: A Fascinating New Database Approach <br>53:30 - Crunchy Data: What They Offer and Why It Matters <br>58:30 - Expanding Postgres with DuckDB for Data Warehousing <br>01:00:00 - Wrapping Up: Where to Find Craig and Crunchy Data</p>]]>
      </content:encoded>
      <pubDate>Tue, 24 Sep 2024 10:01:46 -0500</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/d248467d/c1323b34.mp3" length="34967544" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:image href="https://img.transistorcdn.com/QaqnMJhjlANLMGqhd7mFlzHxGrd7TrK6LvCIpsxCRjA/rs:fill:0:0:1/w:1400/h:1400/q:60/mb:500000/aHR0cHM6Ly9pbWct/dXBsb2FkLXByb2R1/Y3Rpb24udHJhbnNp/c3Rvci5mbS8wZWQz/ZmZlYTVjNGUzNmU0/OWEwZjJkNzBkMmMz/YTgwMy5qcGc.jpg"/>
      <itunes:duration>3766</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>Want to learn more Postgres? Check out my Postgres course: https://masteringpostgres.com. </p><p>In this interview, I dive deep with Craig Kerstiens from Crunchy Data into the world of Postgres, covering its rise to prominence, scaling at Heroku, and the power of Postgres extensions. Craig also shares insights on database sharding, the future of Postgres, and why developers love working with it. </p><p>Follow Craig: <br>Twitter: https://twitter.com/craigkerstiens <br>Crunchy Data Blog: https://www.crunchydata.com/blog </p><p>Follow Aaron: <br>Twitter: https://twitter.com/aarondfrancis <br>LinkedIn: https://www.linkedin.com/in/aarondfrancis <br>Website: https://aaronfrancis.com - find articles, podcasts, courses, and more. </p><p>Chapters: <br>00:00 - Introduction: Welcome to Database School <br>00:20 - Guest Introduction: Craig Kerstiens and Crunchy Data <br>01:40 - Craig's Journey from Heroku to Crunchy Data <br>02:55 - Scaling Postgres at Heroku <br>04:50 - Mastering Postgres Course Announcement <br>05:30 - The Importance of Postgres at Heroku <br>07:50 - The Value of Live SQL with Data Clips <br>09:25 - Data Clips for Business Intelligence and Real-Time Analytics <br>11:05 - Heroku’s Unique Company Culture and How Data Clips Came to Be <br>12:30 - Postgres Extensions and Marketplace <br>14:00 - Citus: Scaling Postgres for Multi-Tenant Applications <br>15:40 - The Challenges of Sharding in Databases <br>18:00 - Managing Large Databases and Sharding Keys with Citus <br>24:00 - The Evolution of Postgres and Its Growing Popularity <br>31:00 - Postgres for Developers and the Importance of Extensions <br>35:00 - Extensions as Proving Grounds for Core Postgres Features <br>37:50 - Building an Extension Marketplace for Postgres <br>41:00 - Postgres as a Data Platform and Developer Flexibility <br>46:00 - Why Developers Love Postgres: Stability, Extensions, and Ownership <br>51:00 - DuckDB: A Fascinating New Database Approach <br>53:30 - Crunchy Data: What They Offer and Why It Matters <br>58:30 - Expanding Postgres with DuckDB for Data Warehousing <br>01:00:00 - Wrapping Up: Where to Find Craig and Crunchy Data</p>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>Ruby on Rails + SQLite with Stephen Margheim</title>
      <itunes:episode>6</itunes:episode>
      <podcast:episode>6</podcast:episode>
      <itunes:title>Ruby on Rails + SQLite with Stephen Margheim</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">3d5cee3d-1bb5-467c-ba09-582d0386e70e</guid>
      <link>https://share.transistor.fm/s/e67dbaf1</link>
      <description>
        <![CDATA[<p>Want to learn more about SQLite? Check out the full course: <a href="https://highperformancesqlite.com/">https://highperformancesqlite.com</a> Get production ready SQLite with Turso: <a href="https://tur.so/af">https://tur.so/af</a>.</p><p>In this interview, I talk to Stephen Margheim about his work with SQLite and Ruby on Rails. </p><p>Links: <br>Database school on YouTube: <a href="https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15">https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15</a> <br>Database school audio only: <a href="https://databaseschool.transistor.fm">https://databaseschool.transistor.fm</a><br>Aaron on Twitter: <a href="https://twitter.com/aarondfrancis%20">https://twitter.com/aarondfrancis </a><br>Stephen on Twitter: <a href="https://twitter.com/fractaledmind%20">https://twitter.com/fractaledmind </a><br>Stephen's blog: <a href="https://fractaledmind.github.io/%20">https://fractaledmind.github.io/ </a><br>Stephen's book: <a href="https://fractaledmind.gumroad.com/l/sqlite-on-rails">https://fractaledmind.gumroad.com/l/sqlite-on-rails </a><br>Aaron's conference talk: <a href="https://www.youtube.com/watch?v=2YaEtaXYVtI">https://www.youtube.com/watch?v=2YaEtaXYVtI</a></p>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>Want to learn more about SQLite? Check out the full course: <a href="https://highperformancesqlite.com/">https://highperformancesqlite.com</a> Get production ready SQLite with Turso: <a href="https://tur.so/af">https://tur.so/af</a>.</p><p>In this interview, I talk to Stephen Margheim about his work with SQLite and Ruby on Rails. </p><p>Links: <br>Database school on YouTube: <a href="https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15">https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15</a> <br>Database school audio only: <a href="https://databaseschool.transistor.fm">https://databaseschool.transistor.fm</a><br>Aaron on Twitter: <a href="https://twitter.com/aarondfrancis%20">https://twitter.com/aarondfrancis </a><br>Stephen on Twitter: <a href="https://twitter.com/fractaledmind%20">https://twitter.com/fractaledmind </a><br>Stephen's blog: <a href="https://fractaledmind.github.io/%20">https://fractaledmind.github.io/ </a><br>Stephen's book: <a href="https://fractaledmind.gumroad.com/l/sqlite-on-rails">https://fractaledmind.gumroad.com/l/sqlite-on-rails </a><br>Aaron's conference talk: <a href="https://www.youtube.com/watch?v=2YaEtaXYVtI">https://www.youtube.com/watch?v=2YaEtaXYVtI</a></p>]]>
      </content:encoded>
      <pubDate>Thu, 08 Aug 2024 11:04:12 -0500</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/e67dbaf1/2b3cee58.mp3" length="48730218" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:duration>6189</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>Want to learn more about SQLite? Check out the full course: <a href="https://highperformancesqlite.com/">https://highperformancesqlite.com</a> Get production ready SQLite with Turso: <a href="https://tur.so/af">https://tur.so/af</a>.</p><p>In this interview, I talk to Stephen Margheim about his work with SQLite and Ruby on Rails. </p><p>Links: <br>Database school on YouTube: <a href="https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15">https://www.youtube.com/playlist?list=PLI72dgeNJtzqElnNB6sQoAn2R-F3Vqm15</a> <br>Database school audio only: <a href="https://databaseschool.transistor.fm">https://databaseschool.transistor.fm</a><br>Aaron on Twitter: <a href="https://twitter.com/aarondfrancis%20">https://twitter.com/aarondfrancis </a><br>Stephen on Twitter: <a href="https://twitter.com/fractaledmind%20">https://twitter.com/fractaledmind </a><br>Stephen's blog: <a href="https://fractaledmind.github.io/%20">https://fractaledmind.github.io/ </a><br>Stephen's book: <a href="https://fractaledmind.gumroad.com/l/sqlite-on-rails">https://fractaledmind.gumroad.com/l/sqlite-on-rails </a><br>Aaron's conference talk: <a href="https://www.youtube.com/watch?v=2YaEtaXYVtI">https://www.youtube.com/watch?v=2YaEtaXYVtI</a></p>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>Migrating from Postgres to SQLite with Kent C. Dodds</title>
      <itunes:episode>5</itunes:episode>
      <podcast:episode>5</podcast:episode>
      <itunes:title>Migrating from Postgres to SQLite with Kent C. Dodds</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">a94ff7b4-eb68-4107-a4c3-f0bb1e4c8ab3</guid>
      <link>https://share.transistor.fm/s/0646f0cb</link>
      <description>
        <![CDATA[<p>Want to learn more about SQLite? Check out the full course: <a href="https://highperformancesqlite.com/">https://highperformancesqlite.com</a>. Get production ready SQLite with Turso: <a href="https://tur.so/af">https://tur.so/af</a>. In this interview, I talk to Kent C. Dodds about SQLite, LiteFS and the React ecosystem. </p><p>Kent: <a href="https://twitter.com/kentcdodds">https://twitter.com/kentcdodds</a> <br>EpicWeb: <a href="https://www.epicweb.dev">https://www.epicweb.dev</a> <br>The Epic Stack: <a href="https://www.epicweb.dev/epic-stack">https://www.epicweb.dev/epic-stack</a> <br>Fly.io: <a href="https://fly.io">https://fly.io</a> <br>LiteFS: <a href="https://fly.io/docs/litefs">https://fly.io/docs/litefs</a> <br>Litestream: <a href="https://litestream.io">https://litestream.io</a></p>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>Want to learn more about SQLite? Check out the full course: <a href="https://highperformancesqlite.com/">https://highperformancesqlite.com</a>. Get production ready SQLite with Turso: <a href="https://tur.so/af">https://tur.so/af</a>. In this interview, I talk to Kent C. Dodds about SQLite, LiteFS and the React ecosystem. </p><p>Kent: <a href="https://twitter.com/kentcdodds">https://twitter.com/kentcdodds</a> <br>EpicWeb: <a href="https://www.epicweb.dev">https://www.epicweb.dev</a> <br>The Epic Stack: <a href="https://www.epicweb.dev/epic-stack">https://www.epicweb.dev/epic-stack</a> <br>Fly.io: <a href="https://fly.io">https://fly.io</a> <br>LiteFS: <a href="https://fly.io/docs/litefs">https://fly.io/docs/litefs</a> <br>Litestream: <a href="https://litestream.io">https://litestream.io</a></p>]]>
      </content:encoded>
      <pubDate>Thu, 20 Jun 2024 11:03:36 -0500</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/0646f0cb/fd48d867.mp3" length="33320290" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:duration>3090</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>Want to learn more about SQLite? Check out the full course: <a href="https://highperformancesqlite.com/">https://highperformancesqlite.com</a>. Get production ready SQLite with Turso: <a href="https://tur.so/af">https://tur.so/af</a>. In this interview, I talk to Kent C. Dodds about SQLite, LiteFS and the React ecosystem. </p><p>Kent: <a href="https://twitter.com/kentcdodds">https://twitter.com/kentcdodds</a> <br>EpicWeb: <a href="https://www.epicweb.dev">https://www.epicweb.dev</a> <br>The Epic Stack: <a href="https://www.epicweb.dev/epic-stack">https://www.epicweb.dev/epic-stack</a> <br>Fly.io: <a href="https://fly.io">https://fly.io</a> <br>LiteFS: <a href="https://fly.io/docs/litefs">https://fly.io/docs/litefs</a> <br>Litestream: <a href="https://litestream.io">https://litestream.io</a></p>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>Production SQLite with Turso and libSQL</title>
      <itunes:episode>4</itunes:episode>
      <podcast:episode>4</podcast:episode>
      <itunes:title>Production SQLite with Turso and libSQL</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">cd88d22b-3e33-444f-9e40-aa798fe29f4f</guid>
      <link>https://share.transistor.fm/s/cccd76f1</link>
      <description>
        <![CDATA[<p>Want to learn more about SQLite? Check out the full course: <a href="https://highperformancesqlite.com">https://highperformancesqlite.com </a></p><p>Get production ready SQLite with Turso: <a href="https://tur.so/af">https://tur.so/af</a>.</p><p>In this interview I talk to Glauber Costa, CEO of Turso.</p>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>Want to learn more about SQLite? Check out the full course: <a href="https://highperformancesqlite.com">https://highperformancesqlite.com </a></p><p>Get production ready SQLite with Turso: <a href="https://tur.so/af">https://tur.so/af</a>.</p><p>In this interview I talk to Glauber Costa, CEO of Turso.</p>]]>
      </content:encoded>
      <pubDate>Fri, 14 Jun 2024 14:03:31 -0500</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/cccd76f1/8615f9e1.mp3" length="35855024" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:duration>6047</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>Want to learn more about SQLite? Check out the full course: <a href="https://highperformancesqlite.com">https://highperformancesqlite.com </a></p><p>Get production ready SQLite with Turso: <a href="https://tur.so/af">https://tur.so/af</a>.</p><p>In this interview I talk to Glauber Costa, CEO of Turso.</p>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>Offline-first, multiplayer SQLite</title>
      <itunes:episode>3</itunes:episode>
      <podcast:episode>3</podcast:episode>
      <itunes:title>Offline-first, multiplayer SQLite</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">8ecc74e7-9660-4b25-98a5-69f602b31d34</guid>
      <link>https://share.transistor.fm/s/5a40b53a</link>
      <description>
        <![CDATA[<p>Want to learn more about SQLite? Check out the full course: <a href="https://highperformancesqlite.com/">https://highperformancesqlite.com</a>. Get production ready SQLite with Turso: <a href="https://tur.so/af">https://tur.so/af</a>.</p><p>In this interview I talk to Carl Sverre about his new project: SQLSync. It's an offline-first, collaborative wrapper around SQLite. We cover event sourcing, conflict resolution, VFSes, and more! Carl: https://twitter.com/carlsverre PartyKit: https://www.partykit.io SQLSync: https://sqlsync.dev Carl's new company: https://orbitinghail.dev ------- 00:00 Intro and Background 01:56 What is SQLSync 02:30 Amplify 05:08 SQLSync Use Case 07:35 Multiplayer Explained 09:41 Durable Objects 12:00 Compare to PartyKit 13:08 Local First 22:46 SQLSync Terminology 24:28 SQLSync Replication Flow 27:33 Virtual File System 33:51 Transactions in WASM 39:41 Sync to Coordinator 43:22 Conflict Resolution as Business Logic 52:03 Sync to Clients 1:01:12 Goals for SQLSync 1:04:14 Scaling Limitations 1:07:30 Graft Storage Engine 1:14:47 Graft as a SQLite Extension 1:17:08 What's Next -----</p>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>Want to learn more about SQLite? Check out the full course: <a href="https://highperformancesqlite.com/">https://highperformancesqlite.com</a>. Get production ready SQLite with Turso: <a href="https://tur.so/af">https://tur.so/af</a>.</p><p>In this interview I talk to Carl Sverre about his new project: SQLSync. It's an offline-first, collaborative wrapper around SQLite. We cover event sourcing, conflict resolution, VFSes, and more! Carl: https://twitter.com/carlsverre PartyKit: https://www.partykit.io SQLSync: https://sqlsync.dev Carl's new company: https://orbitinghail.dev ------- 00:00 Intro and Background 01:56 What is SQLSync 02:30 Amplify 05:08 SQLSync Use Case 07:35 Multiplayer Explained 09:41 Durable Objects 12:00 Compare to PartyKit 13:08 Local First 22:46 SQLSync Terminology 24:28 SQLSync Replication Flow 27:33 Virtual File System 33:51 Transactions in WASM 39:41 Sync to Coordinator 43:22 Conflict Resolution as Business Logic 52:03 Sync to Clients 1:01:12 Goals for SQLSync 1:04:14 Scaling Limitations 1:07:30 Graft Storage Engine 1:14:47 Graft as a SQLite Extension 1:17:08 What's Next -----</p>]]>
      </content:encoded>
      <pubDate>Thu, 13 Jun 2024 11:07:17 -0500</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/5a40b53a/4f8d1529.mp3" length="42235220" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:duration>5196</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>Want to learn more about SQLite? Check out the full course: <a href="https://highperformancesqlite.com/">https://highperformancesqlite.com</a>. Get production ready SQLite with Turso: <a href="https://tur.so/af">https://tur.so/af</a>.</p><p>In this interview I talk to Carl Sverre about his new project: SQLSync. It's an offline-first, collaborative wrapper around SQLite. We cover event sourcing, conflict resolution, VFSes, and more! Carl: https://twitter.com/carlsverre PartyKit: https://www.partykit.io SQLSync: https://sqlsync.dev Carl's new company: https://orbitinghail.dev ------- 00:00 Intro and Background 01:56 What is SQLSync 02:30 Amplify 05:08 SQLSync Use Case 07:35 Multiplayer Explained 09:41 Durable Objects 12:00 Compare to PartyKit 13:08 Local First 22:46 SQLSync Terminology 24:28 SQLSync Replication Flow 27:33 Virtual File System 33:51 Transactions in WASM 39:41 Sync to Coordinator 43:22 Conflict Resolution as Business Logic 52:03 Sync to Clients 1:01:12 Goals for SQLSync 1:04:14 Scaling Limitations 1:07:30 Graft Storage Engine 1:14:47 Graft as a SQLite Extension 1:17:08 What's Next -----</p>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>Distributed SQLite with Litestream and LiteFS</title>
      <itunes:episode>2</itunes:episode>
      <podcast:episode>2</podcast:episode>
      <itunes:title>Distributed SQLite with Litestream and LiteFS</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">144ee41f-85ce-4b64-a6a1-08ac86093524</guid>
      <link>https://share.transistor.fm/s/b6951032</link>
      <description>
        <![CDATA[<p>Want to learn more about SQLite? Check out the full course: <a href="https://highperformancesqlite.com/">https://highperformancesqlite.com</a>. Get production ready SQLite with Turso: <a href="https://tur.so/af">https://tur.so/af</a>.</p><p>Ben and Aaron discuss replication and backups in SQLite, Litestream and LiteFS, and future mad scientist projects Ben is working on. • Ben Johnson on Twitter: https://x.com/benbjohnson • Litestream: https://litestream.io/ • LiteFS: https://fly.io/docs/litefs/</p>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>Want to learn more about SQLite? Check out the full course: <a href="https://highperformancesqlite.com/">https://highperformancesqlite.com</a>. Get production ready SQLite with Turso: <a href="https://tur.so/af">https://tur.so/af</a>.</p><p>Ben and Aaron discuss replication and backups in SQLite, Litestream and LiteFS, and future mad scientist projects Ben is working on. • Ben Johnson on Twitter: https://x.com/benbjohnson • Litestream: https://litestream.io/ • LiteFS: https://fly.io/docs/litefs/</p>]]>
      </content:encoded>
      <pubDate>Thu, 13 Jun 2024 11:04:35 -0500</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/b6951032/6bf691b7.mp3" length="35410580" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:duration>3462</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>Want to learn more about SQLite? Check out the full course: <a href="https://highperformancesqlite.com/">https://highperformancesqlite.com</a>. Get production ready SQLite with Turso: <a href="https://tur.so/af">https://tur.so/af</a>.</p><p>Ben and Aaron discuss replication and backups in SQLite, Litestream and LiteFS, and future mad scientist projects Ben is working on. • Ben Johnson on Twitter: https://x.com/benbjohnson • Litestream: https://litestream.io/ • LiteFS: https://fly.io/docs/litefs/</p>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
    <item>
      <title>DHH discusses SQLite (and Stoicism)</title>
      <itunes:episode>1</itunes:episode>
      <podcast:episode>1</podcast:episode>
      <itunes:title>DHH discusses SQLite (and Stoicism)</itunes:title>
      <itunes:episodeType>full</itunes:episodeType>
      <guid isPermaLink="false">a2b2be7d-7961-44d6-808c-03704da023ca</guid>
      <link>https://share.transistor.fm/s/c51246b6</link>
      <description>
        <![CDATA[<p>Want to learn more about SQLite? Check out the full course: <a href="https://highperformancesqlite.com/">https://highperformancesqlite.com</a>. Get production ready SQLite with Turso: <a href="https://tur.so/af">https://tur.so/af</a>. DHH and Aaron discuss modern SQLite, the one-person framework, conceptual compression, stoicism, and ONCE.com's newest product: Workbook. </p>]]>
      </description>
      <content:encoded>
        <![CDATA[<p>Want to learn more about SQLite? Check out the full course: <a href="https://highperformancesqlite.com/">https://highperformancesqlite.com</a>. Get production ready SQLite with Turso: <a href="https://tur.so/af">https://tur.so/af</a>. DHH and Aaron discuss modern SQLite, the one-person framework, conceptual compression, stoicism, and ONCE.com's newest product: Workbook. </p>]]>
      </content:encoded>
      <pubDate>Thu, 13 Jun 2024 10:59:11 -0500</pubDate>
      <author>Try Hard Studios</author>
      <enclosure url="https://media.transistor.fm/c51246b6/0b1950c6.mp3" length="32235552" type="audio/mpeg"/>
      <itunes:author>Try Hard Studios</itunes:author>
      <itunes:duration>3220</itunes:duration>
      <itunes:summary>
        <![CDATA[<p>Want to learn more about SQLite? Check out the full course: <a href="https://highperformancesqlite.com/">https://highperformancesqlite.com</a>. Get production ready SQLite with Turso: <a href="https://tur.so/af">https://tur.so/af</a>. DHH and Aaron discuss modern SQLite, the one-person framework, conceptual compression, stoicism, and ONCE.com's newest product: Workbook. </p>]]>
      </itunes:summary>
      <itunes:keywords>database, programming, technology, software development</itunes:keywords>
      <itunes:explicit>No</itunes:explicit>
    </item>
  </channel>
</rss>
