Jun 10, 2025 · 28m · latent-space

Quadratic: The AI Spreadsheet

David Kirkos · 14m spoken Shawn Wang · 8m spoken
0:00 / 0:00
▶ Watch on YouTube →

gold bands on the timeline = statements, start to end. Hover to read, click to jump. CC turns on captions

Quadratic founder and CEO David Kirkos joins the Latent Space podcast to demonstrate how combining WebAssembly, polyglot code execution (SQL, Python, and JavaScript), and AI agents transforms the traditional spreadsheet into a dynamic, high-performance data modeling canvas.

How this conversation actually went

Every chapter scored 0–10 on four independent dynamics. Hover any point for the reasoning behind the score. The hosts hold 33.6% of the talking time here. How this is scored →

The hosts as informed peer 5.8 Guest teaching 2.8 Guest disagreement 1.2 The hosts pushing back 1.2
05100:0010:0020:002:35–6:07 · The hosts as informed peer 5/10 Live Product Demo and Dynamic Canvas Interactions Swyx enthusiastically demos the product as an early angel investor, discussing practical data workflows like log transformations and mocking Google Sheets limitations. The tone is completely collaborative and supportive.6:07–10:15 · The hosts as informed peer 6/10 Technical Architecture: Formulas, Python, SQL, and WebAssembly Swyx and Alessio dig into Quadratic's WebAssembly and WebGL architecture, with Swyx sharing his experience from interviewing at Google on spreadsheet design and proposing native browser Python workers. David explains the intentional design decision to break export compatibility with Excel.10:15–17:13 · The hosts as informed peer 6/10 Database Connectors and Collaborative Business Intelligence The conversation shifts to AI context management and agent loops across large datasets. Swyx identifies the risk of context bloat, leading David to detail how Quadratic summarizes sheet context and uses tool calls to selectively inspect rows and columns.17:13–22:51 · The hosts as informed peer 6/10 Design Workflows, App Paradigms, and Human-in-the-Loop AI Swyx suggests adding form controls and Canva/Ghibli-style image styling into the spreadsheet interface. David draws a firm product distinction between data management tools like Airtable/Canva and Quadratic's focus on exploratory analytical modeling.22:51–27:59 · The hosts as informed peer 6/10 Building a Lean Remote Team and Source-Available Distribution Swyx asks about running a lean remote engineering team and pushes for JavaScript's role alongside Python. David explains why Python dominates data manipulation due to Pandas while Swyx outlines a hybrid 'mullet architecture' combining Python analysis with JS charting.2:35–6:07 · Guest teaching 1/10 Live Product Demo and Dynamic Canvas Interactions Swyx enthusiastically demos the product as an early angel investor, discussing practical data workflows like log transformations and mocking Google Sheets limitations. The tone is completely collaborative and supportive.6:07–10:15 · Guest teaching 3/10 Technical Architecture: Formulas, Python, SQL, and WebAssembly Swyx and Alessio dig into Quadratic's WebAssembly and WebGL architecture, with Swyx sharing his experience from interviewing at Google on spreadsheet design and proposing native browser Python workers. David explains the intentional design decision to break export compatibility with Excel.10:15–17:13 · Guest teaching 4/10 Database Connectors and Collaborative Business Intelligence The conversation shifts to AI context management and agent loops across large datasets. Swyx identifies the risk of context bloat, leading David to detail how Quadratic summarizes sheet context and uses tool calls to selectively inspect rows and columns.17:13–22:51 · Guest teaching 3/10 Design Workflows, App Paradigms, and Human-in-the-Loop AI Swyx suggests adding form controls and Canva/Ghibli-style image styling into the spreadsheet interface. David draws a firm product distinction between data management tools like Airtable/Canva and Quadratic's focus on exploratory analytical modeling.22:51–27:59 · Guest teaching 3/10 Building a Lean Remote Team and Source-Available Distribution Swyx asks about running a lean remote engineering team and pushes for JavaScript's role alongside Python. David explains why Python dominates data manipulation due to Pandas while Swyx outlines a hybrid 'mullet architecture' combining Python analysis with JS charting.2:35–6:07 · Guest disagreement 1/10 Live Product Demo and Dynamic Canvas Interactions Swyx enthusiastically demos the product as an early angel investor, discussing practical data workflows like log transformations and mocking Google Sheets limitations. The tone is completely collaborative and supportive.6:07–10:15 · Guest disagreement 1/10 Technical Architecture: Formulas, Python, SQL, and WebAssembly Swyx and Alessio dig into Quadratic's WebAssembly and WebGL architecture, with Swyx sharing his experience from interviewing at Google on spreadsheet design and proposing native browser Python workers. David explains the intentional design decision to break export compatibility with Excel.10:15–17:13 · Guest disagreement 1/10 Database Connectors and Collaborative Business Intelligence The conversation shifts to AI context management and agent loops across large datasets. Swyx identifies the risk of context bloat, leading David to detail how Quadratic summarizes sheet context and uses tool calls to selectively inspect rows and columns.17:13–22:51 · Guest disagreement 2/10 Design Workflows, App Paradigms, and Human-in-the-Loop AI Swyx suggests adding form controls and Canva/Ghibli-style image styling into the spreadsheet interface. David draws a firm product distinction between data management tools like Airtable/Canva and Quadratic's focus on exploratory analytical modeling.22:51–27:59 · Guest disagreement 1/10 Building a Lean Remote Team and Source-Available Distribution Swyx asks about running a lean remote engineering team and pushes for JavaScript's role alongside Python. David explains why Python dominates data manipulation due to Pandas while Swyx outlines a hybrid 'mullet architecture' combining Python analysis with JS charting.2:35–6:07 · The hosts pushing back 0/10 Live Product Demo and Dynamic Canvas Interactions Swyx enthusiastically demos the product as an early angel investor, discussing practical data workflows like log transformations and mocking Google Sheets limitations. The tone is completely collaborative and supportive.6:07–10:15 · The hosts pushing back 1/10 Technical Architecture: Formulas, Python, SQL, and WebAssembly Swyx and Alessio dig into Quadratic's WebAssembly and WebGL architecture, with Swyx sharing his experience from interviewing at Google on spreadsheet design and proposing native browser Python workers. David explains the intentional design decision to break export compatibility with Excel.10:15–17:13 · The hosts pushing back 1/10 Database Connectors and Collaborative Business Intelligence The conversation shifts to AI context management and agent loops across large datasets. Swyx identifies the risk of context bloat, leading David to detail how Quadratic summarizes sheet context and uses tool calls to selectively inspect rows and columns.17:13–22:51 · The hosts pushing back 2/10 Design Workflows, App Paradigms, and Human-in-the-Loop AI Swyx suggests adding form controls and Canva/Ghibli-style image styling into the spreadsheet interface. David draws a firm product distinction between data management tools like Airtable/Canva and Quadratic's focus on exploratory analytical modeling.22:51–27:59 · The hosts pushing back 2/10 Building a Lean Remote Team and Source-Available Distribution Swyx asks about running a lean remote engineering team and pushes for JavaScript's role alongside Python. David explains why Python dominates data manipulation due to Pandas while Swyx outlines a hybrid 'mullet architecture' combining Python analysis with JS charting.

speaking balance: gold is the hosts, purple is the guest (3 minute bins)

0:00 · the hosts 61.3% · guest 38.7%0:00 · the hosts 61.3% · guest 38.7%3:00 · the hosts 40.3% · guest 59.7%3:00 · the hosts 40.3% · guest 59.7%6:00 · the hosts 22.3% · guest 77.7%6:00 · the hosts 22.3% · guest 77.7%9:00 · the hosts 30.4% · guest 69.6%9:00 · the hosts 30.4% · guest 69.6%12:00 · the hosts 14.3% · guest 85.7%12:00 · the hosts 14.3% · guest 85.7%15:00 · the hosts 44.8% · guest 55.2%15:00 · the hosts 44.8% · guest 55.2%18:00 · the hosts 19.4% · guest 80.6%18:00 · the hosts 19.4% · guest 80.6%21:00 · the hosts 55.2% · guest 44.8%21:00 · the hosts 55.2% · guest 44.8%24:00 · the hosts 9.5% · guest 90.5%24:00 · the hosts 9.5% · guest 90.5%27:00 · the hosts 53.7% · guest 46.3%27:00 · the hosts 53.7% · guest 46.3%
Sharpest disagreement ▶ 18:59 Contrasting Quadratic against Canva and Airtable

David pushes back on conflating Quadratic with Canva or Airtable, clarifying that those tools focus on process management rather than rigorous data analysis and interactive modeling.

Hardest push from the hosts ▶ 26:21 Swyx challenges the Python-first bias as a JS advocate

Swyx pushes back against the dismissal of JavaScript in data spreadsheets, pressing David on the exact language split among Quadratic users.

Biggest teaching moment ▶ 15:50 David explains token-efficient context peeking

David educates the hosts on how naive full-sheet context dumps fail in production and describes their architecture for schema summarization and selective tool-based data inspection.

The host holds their own ▶ 27:05 Swyx articulates the multi-language cell architecture

Swyx demonstrates his deep technical intuition by framing Quadratic's multi-language cells as a hybrid system where Python handles data wrangling and JavaScript powers visualization.

the scores for every segment, with the reasoning behind each
ChapterTopicThe hosts as informed peerGuest teachingGuest disagreementThe hosts pushing backWhy
Live Product Demo and Dynamic Canvas Interactions 5110 Swyx enthusiastically demos the product as an early angel investor, discussing practical data workflows like log transformations and mocking Google Sheets limitations. The tone is completely collaborative and supportive.
Technical Architecture: Formulas, Python, SQL, and WebAssembly 6311 Swyx and Alessio dig into Quadratic's WebAssembly and WebGL architecture, with Swyx sharing his experience from interviewing at Google on spreadsheet design and proposing native browser Python workers. David explains the intentional design decision to break export compatibility with Excel.
Database Connectors and Collaborative Business Intelligence 6411 The conversation shifts to AI context management and agent loops across large datasets. Swyx identifies the risk of context bloat, leading David to detail how Quadratic summarizes sheet context and uses tool calls to selectively inspect rows and columns.
Design Workflows, App Paradigms, and Human-in-the-Loop AI 6322 Swyx suggests adding form controls and Canva/Ghibli-style image styling into the spreadsheet interface. David draws a firm product distinction between data management tools like Airtable/Canva and Quadratic's focus on exploratory analytical modeling.
Building a Lean Remote Team and Source-Available Distribution 6312 Swyx asks about running a lean remote engineering team and pushes for JavaScript's role alongside Python. David explains why Python dominates data manipulation due to Pandas while Swyx outlines a hybrid 'mullet architecture' combining Python analysis with JS charting.

Statements from this episode (15)

Insight
Swyx: Pre-AI WebAssembly infrastructure allowed StackBlitz to unlock Bolt
“StackBlitz worked on WebAssembly containers for four years and got, was, I mean, they were making some progress, but like they, you know, nothing is compared to Bolt, which did the unlock. But like right now they can capitalize and just work on the agents beca…”
Shawn Wang Jun 10, 2025 ▶ 1:39
Assertion Not checkable as stated
Kirkos: Natural language prompting reduced Quadratic's learning curve to zero
“When you can have users sign up and just prompt it, just drop some data in and say, help me analyze this, help me visualize it. The learning curve went to zero and the adoption increased tremendously.”
David Kirkos Jun 10, 2025 ▶ 2:24
Assertion Supported
Kirkos: Quadratic supports datasets containing millions of rows
“We support millions of rows.”
David Kirkos Jun 10, 2025 ▶ 2:59
Opinion
Kirkos: ChatGPT CSV charts fail to help users understand data
“Drop a CSV and chat GPT and ask it for a chart. Those aren't responsive. Those aren't interactive. And those, I don't think ultimately help people understand data better.”
David Kirkos Jun 10, 2025 ▶ 5:55
Assertion Supported
Kirkos: Quadratic runs in browser WebAssembly and renders via WebGL
“Everything in Quadratic is running in WebAssembly in the browser, and then the whole sheet is drawn in WebGL.”
David Kirkos Jun 10, 2025 ▶ 7:22
Insight
Kirkos: Spreadsheet users expect and rely on legacy Excel date bugs
“Building a spreadsheet is, is very tough too, because people expect it to have all the features of Excel, right? And that's a really, and all the bugs of Excel in some cases, Excel has all these bugs that people rely on. Date bugs and formula bugs that are now…”
David Kirkos Jun 10, 2025 ▶ 9:11
Assertion Supported
Kirkos: Quadratic sheets cannot export to Excel due to embedded queries
“You can't export a quadratic sheet back into Excel. You know, we have code and we have database queries that live in our sheet. You can always pull your data out, of course. You could select any area on the sheet and get a CSV or get another file, but you can'…”
David Kirkos Jun 10, 2025 ▶ 9:38
Insight
Kirkos: BI tools fail by being either too technical or too basic
“They're either really technical and then non-technical people just press export to CSV, or you're using a really non-technical tool and then the technical folks don't want to engage with it.”
David Kirkos Jun 10, 2025 ▶ 11:37
Insight
Kirkos: LLMs struggle with 2D spreadsheet layouts, requiring custom fine-tuning
“We are working on fine tuning a model. We think we can get the costs of inference way down and the quality and specific, you know, AI working in a spreadsheet is not really what these models were trained to do, right? There's a lot of two D positioning code er…”
David Kirkos Jun 10, 2025 ▶ 14:49
Insight
Kirkos: Dumping 100,000 rows into LLMs degrades quality and inflates costs
“We tried to give it the whole sheet as the context initially, and it works really great when you're working on a really small sheet. And then if you know, drag and drop a 100,000 rows of data in, first of all, it's going to be really expensive. Your request is…”
David Kirkos Jun 10, 2025 ▶ 15:51
Disclosure
Kirkos: Quadratic feeds rendered chart images to AI for visual editing
“We do a little bit of vision when users are creating charts. We pass back an image of what the chart looks like to the AI, because a lot of times the user will describe visually the change that they want to the chart. They'll say something like, this doesn't l…”
David Kirkos Jun 10, 2025 ▶ 16:54
Opinion
Kirkos: The spreadsheet is the best UI for humans understanding data
“I think that the spreadsheet is the best interface for a human working with a computer to understand data.”
David Kirkos Jun 10, 2025 ▶ 20:15
Prediction Not checkable as stated
Kirkos: AI agents will generate entire spreadsheets to answer user questions
“I do see these agents generating spreadsheets to answer people's questions, particularly when they focus around the user understanding data.”
David Kirkos Jun 10, 2025 ▶ 20:44
Prediction Not checkable as stated
Kirkos: Traditional spreadsheet formulas will lose ground to Python
“I think formulas will be used less in favor of Python.”
David Kirkos Jun 10, 2025 ▶ 25:57
Opinion
Kirkos: JavaScript is immature for data transformation compared to Python
“JavaScript is pretty immature in terms of working with data. It doesn't have a lot of packages or tooling around transforming and working with data.”
David Kirkos Jun 10, 2025 ▶ 26:51
Made with StarZero

Turn any episode into a week of clips.

This entire site, over 200 episodes transcribed, diarized, checked and made playable, runs on the StarZero media pipeline. Drop in your own episode and the podcast clipper finds the moments worth sharing, cuts them, captions them, and reframes them for every feed.