Computational Thinking with Marimo

Using marimo to solve problems

Sonny Bhatia

Thursday, October 8, 2026

Instructional Gap

  1. Install Python
  2. input() is harder than it looks
  3. Edit code -> save -> go to terminal -> run -> repeat
  4. Learn to write correct syntax to solve problems
  5. How many real programs use input()?
  6. AI is a chat box
  7. Which model is the best?
  8. AI gave me code and it just works!

Marimo

What do we get?

  • Pure Python
  • Interactive UI
  • Reactive Execution

What we avoid?

  • Install Python
  • input()
  • edit > save > run > repeat

See Full Notebook

Unique Features

  • Deterministic execution
    • Cell order irrelevant
    • Reproducible results
  • Variable scope
  • Saved as .py
  • Publish on the web

Intro

UI Elements

Charts

One-Shot “Teach me Fundamentals”

Prompt

teach me about python variables and functions

Notebook

ELI5

Prompt

ELI5 - after each cell, add a quick summary of the Python concepts

Notebook

Plotting with Marimo

Seating Chart

Sudoku

Running Locally

How?

winget install astral-sh.uv # on Windows
dnf install uv # on Fedora Linux
brew install uv # on MacOS or Linux with Homebrew

uvx marimo edit new.py

uv tool install marimo

Why?

  • WASM Native Runtime
  • Network Access
  • Real AI integration!

Which AI model to use?

Ideal World

  • Tokens are free and unlimited
  • Companies care about your privacy
  • Frontier models everywhere

Reality

  • Bring your own tokens
  • Students must experiment
  • Understand what works!

Resources