
Episode 253
Starting With marimo Notebooks & Python App Config Management
The Real Python Podcast · Real Python
June 13, 202551m 41s
Audio is streamed directly from the publisher (dts.podtrac.com) as published in their RSS feed. Play Podcasts does not host this file. Rights-holders can request removal through the copyright & takedown page.
Show Notes
<p>Looking for a guide on getting started with marimo notebooks? How do you build a reproducible notebook for sharing or create a dashboard with interactive UI elements? Christopher Trudeau is back on the show this week, bringing another batch of PyCoder’s Weekly articles and projects.</p>
<p>We cover a recent Real Python article by Ian Eyre about using narimo notebooks. The tutorial covers installing Marimo, taking advantage of reactivity, building interactive dashboards, and managing a notebook’s environment through sandboxing. The piece ends by examining the limitations of traditional linear notebooks and how Marimo addresses them.</p>
<p>Christopher discusses an article about how to store the configurations for your Python scripts and projects. Whether you’re managing resource handles to a database, deployment variables, or credentials to external services, you’ll need a way to save and load the details into your Python project. The piece compares saving configurations in several common file formats or through environment variables. </p>
<p>We also share several other articles and projects from the Python community, including a news roundup, the discourse between generative AI coding proponents and detractors, catching memory leaks with your test suite, epigrams on programming, a command line tool to check packages on PyPI, and a collection of string, file, and object utilities.</p>
<p>This episode is sponsored by Six Feet Up.</p>
<div class="alert alert-primary" role="alert">
<p><strong>Course Spotlight:</strong> <a href="https://realpython.com/courses/cicd-github-actions/">Python Continuous Integration and Deployment Using GitHub Actions</a></p>
<p>With most software following agile methodologies, it’s essential to have robust DevOps systems in place to manage, maintain, and automate common tasks with a continually changing codebase. By using GitHub Actions, you can automate your workflows efficiently, especially for Python projects.</p>
</div>
<p>Topics:</p>
<ul>
<li>00:00:00 – Introduction</li>
<li>00:02:44 – Python Release 3.14.0b2</li>
<li>00:03:09 – Django security releases issued: 5.2.2, 5.1.10, and 4.2.22</li>
<li>00:03:27 – PyBay 2025</li>
<li>00:03:43 – PyCon NL 2025 - Call for Proposals</li>
<li>00:04:05 – Django Forum: Supporting t-strings</li>
<li>00:04:44 – Ruff Users: What Rules Are You Using and What Are You Ignoring?</li>
<li>00:05:19 – My Shot at Real Python</li>
<li>00:06:03 – My AI Skeptic Friends Are All Nuts</li>
<li>00:10:06 – I Think I’m Done Thinking About genAI For Now</li>
<li>00:11:12 – AI Changes Everything</li>
<li>00:23:01 – Video Course Spotlight</li>
<li>00:24:14 – Configuration of Python Applications</li>
<li>00:29:15 – marimo: A Reactive, Reproducible Notebook</li>
<li>00:35:15 – Sponsor: Six Feet Up</li>
<li>00:36:02 – Catching memory leaks with your test suite</li>
<li>00:41:45 – Epigrams on Programming</li>
<li>00:46:54 – whatsonpypi: Check PyPI From the Command Line</li>
<li>00:48:18 – strif: String, File, and Object Utilities</li>
<li>00:49:44 – PyCoder’s Weekly - Submit a Link</li>
<li>00:50:13 – Thanks and goodbye</li>
</ul>
<p>News:</p>
<ul>
<li><a href="https://www.python.org/downloads/release/python-3140b2/">Python Release 3.14.0b2</a></li>
<li><a href="https://www.djangoproject.com/weblog/2025/jun/04/security-releases/">Django security releases issued: 5.2.2, 5.1.10, and 4.2.22</a></li>
<li><a href="https://pybay.org/speaking/call-for-proposals/">PyBay 2025</a></li>
<li><a href="https://docs.google.com/forms/d/e/1FAIpQLSdv-shKzLId7WMwxmVNfSsWZjCd4eNuB7ExKvu_B3s4yONR-Q/viewform">PyCon NL 2025 - Call for Proposals</a></li>
<li><a href="https://forum.djangoproject.com/t/supporting-t-strings-from-python-3-14/40925">Django Forum: Supporting <code>t-strings</code></a></li>
<li><a href="https://old.reddit.com/r/Python/comments/1kttfst/ruff_users_what_rules_are_using_and_what_are_you/">Ruff Users: What Rules Are You Using and What Are You Ignoring?</a></li>
<li><a href="https://lonercode.hashnode.dev/my-shot-at-real-python">My Shot at Real Python</a> – Amanda has recently written her first article for Real Python and this post talks about her experience doing so. If you want to check out the article, it’s on <a href="https://realpython.com/nested-loops-python/">Nested Loops</a>.</li>
</ul>
<p>Show Links:</p>
<ul>
<li><a href="https://fly.io/blog/youre-all-nuts/">My AI Skeptic Friends Are All Nuts</a></li>
<li><a href="https://blog.glyph.im/2025/06/i-think-im-done-thinking-about-genai-for-now.html">I Think I’m Done Thinking About genAI For Now</a></li>
<li><a href="https://lucumr.pocoo.org/2025/6/4/changes/">AI Changes Everything</a></li>
<li><a href="https://chatgpt.com/share/68419e9e-ed78-8009-b4d5-97a6b68bfdb3">AI Blog Comparison - Armin Ronacher</a></li>
<li><a href="https://robertrode.com/2023/10/02/configuration-in-python-applications-no-magic-just-necessary-practice.html">Configuration of Python Applications</a> – This post talks about how to store configuration for your script and how and when to load the information into your program.</li>
<li><a href="https://realpython.com/marimo-notebook/">marimo: A Reactive, Reproducible Notebook</a> – Discover how marimo notebook simplifies coding with reactive updates, UI elements, and sandboxing for safe, sharable notebooks.</li>
<li><a href="https://pythonspeed.com/articles/identifying-resource-leaks-with-pytest/">Catching memory leaks with your test suite</a> – “If you have a good test suite, you may be able to use <code>pytest</code> fixtures to identify memory and other resource leaks.”</li>
</ul>
<p>Discussion:</p>
<ul>
<li><a href="https://web.archive.org/web/19990117034445/http://www-pu.informatik.uni-tuebingen.de/users/klaeren/epigrams.html">Epigrams on Programming</a></li>
<li><a href="https://en.wikipedia.org/wiki/Alan_Perlis">Alan Perlis - Wikipedia</a></li>
</ul>
<p>Projects:</p>
<ul>
<li><a href="https://github.com/viseshrp/whatsonpypi">whatsonpypi: Check PyPI From the Command Line</a></li>
<li><a href="https://github.com/jlevy/strif">strif: String, File, and Object Utilities</a></li>
</ul>
<p>Additional Links:</p>
<ul>
<li><a href="https://realpython.com/podcasts/rpp/238/">Episode #238: Charlie Marsh: Accelerating Python Tooling With Ruff and uv</a></li>
<li><a href="https://realpython.com/podcasts/rpp/250/">Episode #250: DjangoCon Europe 2025: Live Recording From Dublin</a></li>
<li><a href="https://realpython.com/podcasts/rpp/236/">Episode #236: Simon Willison: Using LLMs for Python Development</a></li>
<li><a href="https://lucumr.pocoo.org/2025/6/10/genai-criticism/">GenAI Criticism and Moral Quandaries - Armin Ronacher</a></li>
<li><a href="https://github.blog/news-insights/product-news/math-support-in-markdown/">Math support in Markdown - The GitHub Blog</a></li>
<li><a href="https://realpython.com/quizzes/marimo-notebook/">Quiz: marimo: A Reactive, Reproducible Notebook</a></li>
<li><a href="https://realpython.com/podcasts/rpp/42/">Episode #42: What Is Data Engineering and Researching 10 Million Jupyter Notebooks</a></li>
<li><a href="https://blog.jetbrains.com/datalore/2020/12/17/we-downloaded-10-000-000-jupyter-notebooks-from-github-this-is-what-we-learned/">We Downloaded 10,000,000 Jupyter Notebooks From Github – This Is What We Learned</a></li>
<li><a href="https://realpython.com/podcasts/rpp/230/">Episode #230: marimo: Reactive Notebooks and Deployable Web Apps in Python</a></li>
<li><a href="https://talkpython.fm/episodes/show/501/marimo-reactive-notebooks-for-python">Episode #501 - marimo - Reactive Notebooks for Python - Talk Python To Me Podcast</a></li>
<li><a href="https://realpython.com/podcasts/rpp/24/">Episode #24: Options for Packaging Your Python Application: Wheels, Docker, and More - Itamar Turner-Trauring</a></li>
<li><a href="https://realpython.com/podcasts/rpp/128/">Episode #128: Using a Memory Profiler in Python & What It Can Teach You</a></li>
<li><a href="https://realpython.com/podcasts/rpp/172/">Episode #172: Measuring Multiple Facets of Python Performance With Scalene</a></li>
<li><a href="https://pycoders.com/submissions">PyCoder’s Weekly - Submit a Link</a></li>
</ul>
<p>Level up your Python skills with our expert-led courses:</p>
<ul>
<li><a href="https://realpython.com/courses/cicd-github-actions/">Python Continuous Integration and Deployment Using GitHub Actions</a></li>
<li><a href="https://realpython.com/courses/python-mmap-io/">Python mmap: Doing File I/O With Memory Mapping</a></li>
<li><a href="https://realpython.com/courses/testing-your-code-with-pytest/">Testing Your Code With pytest</a></li>
</ul> <p><a rel="payment" href="https://realpython.com/join">Support the podcast & join our community of Pythonistas</a></p>