Jul 18, 2025 · 28m · latent-space

⚡️The Future of Notebooks - with Akshay Agrawal of Marimo

Akshay Agrawal · 20m 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

In this Latent Space Lightning episode, Marimo creator Akshay Agrawal discusses how Marimo reinvents computational notebooks for AI through reactive execution, pure Python files, and interactive UI applications. The conversation spans live technical demos of multimodal data annotation, integrated AI code generation, and the launch of MoLab, a cloud-hosted notebook platform.

How this conversation actually went

Every chapter scored 0–10 on four independent dynamics. Hover any point for the reasoning behind the score. How this is scored →

The hosts as informed peer 3.8 Guest teaching 4.6 Guest disagreement 1.0 The hosts pushing back 1.2
05100:0010:0020:002:22–8:04 · The hosts as informed peer 4/10 The Origin and Motivation Behind Marimo Alessio asks technical questions regarding notebook design trade-offs and cell compatibility. Akshay explains Marimo's DAG architecture and why strict variable declaration prevents hidden state bugs common in Jupyter.8:05–15:51 · The hosts as informed peer 4/10 Demo: Multimodal Canvas and Gamepad Data Annotation Akshay demonstrates interactive features including gamepad annotation and Gemini mermaid generation. Alessio asks about packaging, allowing Akshay to show inline UV dependency management.15:52–20:14 · The hosts as informed peer 4/10 AI Code Generation and Inline Dependency Management Alessio queries how context formatting works when referencing dataframes in prompt completions. Akshay illustrates how in-memory inspection gives the notebook a unique advantage over static IDE assistants.20:14–23:16 · The hosts as informed peer 3/10 WebAssembly Execution and Introducing MoLab The co-host asks whether Marimo runs solely in WebAssembly. Akshay clarifies that it runs locally and natively, while Pyodide/WASM has limitations that motivated creating the cloud-hosted MoLab environment.23:21–26:45 · The hosts as informed peer 4/10 Deploying Data Apps, Script Execution, and Agent Workflows Alessio asks about application write-backs and roadmap directions. Akshay details how pure Python files allow script execution, Streamlit-like apps with database writebacks, and future agentic workflows.2:22–8:04 · Guest teaching 4/10 The Origin and Motivation Behind Marimo Alessio asks technical questions regarding notebook design trade-offs and cell compatibility. Akshay explains Marimo's DAG architecture and why strict variable declaration prevents hidden state bugs common in Jupyter.8:05–15:51 · Guest teaching 5/10 Demo: Multimodal Canvas and Gamepad Data Annotation Akshay demonstrates interactive features including gamepad annotation and Gemini mermaid generation. Alessio asks about packaging, allowing Akshay to show inline UV dependency management.15:52–20:14 · Guest teaching 4/10 AI Code Generation and Inline Dependency Management Alessio queries how context formatting works when referencing dataframes in prompt completions. Akshay illustrates how in-memory inspection gives the notebook a unique advantage over static IDE assistants.20:14–23:16 · Guest teaching 6/10 WebAssembly Execution and Introducing MoLab The co-host asks whether Marimo runs solely in WebAssembly. Akshay clarifies that it runs locally and natively, while Pyodide/WASM has limitations that motivated creating the cloud-hosted MoLab environment.23:21–26:45 · Guest teaching 4/10 Deploying Data Apps, Script Execution, and Agent Workflows Alessio asks about application write-backs and roadmap directions. Akshay details how pure Python files allow script execution, Streamlit-like apps with database writebacks, and future agentic workflows.2:22–8:04 · Guest disagreement 1/10 The Origin and Motivation Behind Marimo Alessio asks technical questions regarding notebook design trade-offs and cell compatibility. Akshay explains Marimo's DAG architecture and why strict variable declaration prevents hidden state bugs common in Jupyter.8:05–15:51 · Guest disagreement 1/10 Demo: Multimodal Canvas and Gamepad Data Annotation Akshay demonstrates interactive features including gamepad annotation and Gemini mermaid generation. Alessio asks about packaging, allowing Akshay to show inline UV dependency management.15:52–20:14 · Guest disagreement 1/10 AI Code Generation and Inline Dependency Management Alessio queries how context formatting works when referencing dataframes in prompt completions. Akshay illustrates how in-memory inspection gives the notebook a unique advantage over static IDE assistants.20:14–23:16 · Guest disagreement 1/10 WebAssembly Execution and Introducing MoLab The co-host asks whether Marimo runs solely in WebAssembly. Akshay clarifies that it runs locally and natively, while Pyodide/WASM has limitations that motivated creating the cloud-hosted MoLab environment.23:21–26:45 · Guest disagreement 1/10 Deploying Data Apps, Script Execution, and Agent Workflows Alessio asks about application write-backs and roadmap directions. Akshay details how pure Python files allow script execution, Streamlit-like apps with database writebacks, and future agentic workflows.2:22–8:04 · The hosts pushing back 1/10 The Origin and Motivation Behind Marimo Alessio asks technical questions regarding notebook design trade-offs and cell compatibility. Akshay explains Marimo's DAG architecture and why strict variable declaration prevents hidden state bugs common in Jupyter.8:05–15:51 · The hosts pushing back 1/10 Demo: Multimodal Canvas and Gamepad Data Annotation Akshay demonstrates interactive features including gamepad annotation and Gemini mermaid generation. Alessio asks about packaging, allowing Akshay to show inline UV dependency management.15:52–20:14 · The hosts pushing back 1/10 AI Code Generation and Inline Dependency Management Alessio queries how context formatting works when referencing dataframes in prompt completions. Akshay illustrates how in-memory inspection gives the notebook a unique advantage over static IDE assistants.20:14–23:16 · The hosts pushing back 1/10 WebAssembly Execution and Introducing MoLab The co-host asks whether Marimo runs solely in WebAssembly. Akshay clarifies that it runs locally and natively, while Pyodide/WASM has limitations that motivated creating the cloud-hosted MoLab environment.23:21–26:45 · The hosts pushing back 2/10 Deploying Data Apps, Script Execution, and Agent Workflows Alessio asks about application write-backs and roadmap directions. Akshay details how pure Python files allow script execution, Streamlit-like apps with database writebacks, and future agentic workflows.

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

0:00 · the hosts 0% · guest 100%0:00 · the hosts 0% · guest 100%3:00 · the hosts 0% · guest 100%3:00 · the hosts 0% · guest 100%6:00 · the hosts 0% · guest 100%6:00 · the hosts 0% · guest 100%9:00 · the hosts 0% · guest 100%9:00 · the hosts 0% · guest 100%12:00 · the hosts 0% · guest 100%12:00 · the hosts 0% · guest 100%15:00 · the hosts 0% · guest 100%15:00 · the hosts 0% · guest 100%18:00 · the hosts 0% · guest 100%18:00 · the hosts 0% · guest 100%21:00 · the hosts 0% · guest 100%21:00 · the hosts 0% · guest 100%24:00 · the hosts 0% · guest 100%24:00 · the hosts 0% · guest 100%27:00 · the hosts 0% · guest 100%27:00 · the hosts 0% · guest 100%
Sharpest disagreement ▶ 20:22 Gentle correction on WebAssembly architecture

In an otherwise completely collaborative interview, Akshay directly clarifies that Marimo is not merely a browser WebAssembly app but a full local Python environment.

Hardest push from the hosts ▶ 25:40 Alessio probes read-only app limitations

Alessio pushes back on the phrasing of 'read-only' data apps, prompting Akshay to clarify that user applications can still write back to backend databases.

Biggest teaching moment ▶ 11:45 Inline dependency resolution with Astral UV

When Alessio asks if traditional requirements files are required, Akshay educates on Marimo's native integration with Astral UV to store dependencies directly inside notebook headers.

The host holds their own ▶ 18:29 Alessio drills into runtime prompt context mechanics

Alessio demonstrates technical depth by drilling down into how data structures like df.head() are serialized into prompt tokens for downstream LLMs.

the scores for every segment, with the reasoning behind each
ChapterTopicThe hosts as informed peerGuest teachingGuest disagreementThe hosts pushing backWhy
The Origin and Motivation Behind Marimo 4411 Alessio asks technical questions regarding notebook design trade-offs and cell compatibility. Akshay explains Marimo's DAG architecture and why strict variable declaration prevents hidden state bugs common in Jupyter.
Demo: Multimodal Canvas and Gamepad Data Annotation 4511 Akshay demonstrates interactive features including gamepad annotation and Gemini mermaid generation. Alessio asks about packaging, allowing Akshay to show inline UV dependency management.
AI Code Generation and Inline Dependency Management 4411 Alessio queries how context formatting works when referencing dataframes in prompt completions. Akshay illustrates how in-memory inspection gives the notebook a unique advantage over static IDE assistants.
WebAssembly Execution and Introducing MoLab 3611 The co-host asks whether Marimo runs solely in WebAssembly. Akshay clarifies that it runs locally and natively, while Pyodide/WASM has limitations that motivated creating the cloud-hosted MoLab environment.
Deploying Data Apps, Script Execution, and Agent Workflows 4412 Alessio asks about application write-backs and roadmap directions. Akshay details how pure Python files allow script execution, Streamlit-like apps with database writebacks, and future agentic workflows.

Statements from this episode (9)

Opinion
Marimo Replaces Jupyter, Streamlit, Gradio, and Papermill
“So you can think of it as a modern replacement for not only Jupyter, but also Streamlet, Gradio, Papermill.”
Akshay Agrawal Jul 18, 2025 ▶ 1:57
Assertion Supported
Marimo Surpasses 300K Monthly PyPI Downloads and Jupyter's GitHub Stars
“I think last I checked, over 300,000 monthly downloads on PyPy. More GitHub stars than Jupyter Notebook for whatever that's worth. And we're used at companies like OpenAI, Hugging Face, Cloudflare, BlackRock, universities like Stanford and Berkeley.”
Akshay Agrawal Jul 18, 2025 ▶ 2:07
Assertion Supported
Marimo Prohibits Variable Redefinition Across Cells via Dependency Graphs
“There are some restrictions on the kind of code that Marimo lets you write because Marimo does have a dependency graph basically on your cells. That's how it knows what cells to run. You can't redefine variables across multiple cells, but our conversion tool w…”
Akshay Agrawal Jul 18, 2025 ▶ 7:13
Assertion Supported
Marimo Executes Notebooks Reactively Like an Excel Spreadsheet
“And the way that the order of execution works, It's just based on variable declarations and references, kind of like Excel in some sense, right? So you can have columns, things just kind of execute in the right way.”
Akshay Agrawal Jul 18, 2025 ▶ 8:41
Assertion Supported
Marimo Stores Dependencies Inline Using Astral's uv Package Manager
“So we actually have a tight integration with the UV package manager from astral. So we can actually store dependencies in line in the notebook file itself in like the notebook header. And this is something that UV supports. So then you can just actually ship a…”
Akshay Agrawal Jul 18, 2025 ▶ 12:01
Assertion Supported
Marimo AI Completions Access In-Memory Variables and Database Connections
“What's unique about doing it in Marimo is the fact that not only does Marimo see your code, but it sees all the variables in memory and it can also see your database connections, et cetera. So it can really provide rich Rich completions.”
Akshay Agrawal Jul 18, 2025 ▶ 17:56
Disclosure
Marimo Is Launching MoLab, a Free Cloud-Hosted Notebook Platform
“Our team has actually been really hard at work building a cloud hosted Colab like a notebook that we're going to give away to our community for free. And we're calling it MoLab.”
Akshay Agrawal Jul 18, 2025 ▶ 21:45
Assertion Supported
Marimo Support Is a Top-Upvoted Issue on Google Colab's GitHub
“Actually, if you go to Google Colab's GitHub issues page they have one, and sort by thumbs up. We are, like, I guess the sixth or seventh most upvoted issue. Support Marimo in Google Colab.”
Akshay Agrawal Jul 18, 2025 ▶ 22:44
Assertion Supported
Any Marimo Notebook Can Be Deployed as a Streamlit-Like Data App
“You can actually run any Marimo notebook as a data app similar to streamlet. So I can say Marimo run embedding mnist.p and then it'll run it as a read-only web app in my browser that you can also deploy and share with other. Other users or, you know, maybe non…”
Akshay Agrawal Jul 18, 2025 ▶ 25:17
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.