{"elapsed_ms":0.611,"keywords":["test"],"results":[{"category":"Episode","description":"The cloud is convenient until it isn't. You upload your photos, sync your contacts, click through the cookie banners. Then prices go up again or you read about a family that lost their entire Google account over a medical photo sent to a doctor. At some point, the question shifts from \"why would I run this myself?\" to \"why aren't I?\"\r<br/>\n\r<br/>\nMy guest this week is Alex Kretzschmar, head of DevRel at Tailscale, longtime host of the Self-Hosted podcast, and co-founder of Linuxserver.io. We cover what self-hosting really means in 2026, the apps worth running yourself like Immich and Home Assistant, why Docker Compose ties it all together, and how Tailscale lets you reach any of it from anywhere, without opening a single port. If you've been thinking about pulling your digital life back behind your own walls, this is your roadmap.","id":546,"title":"Self hosting apps for Python people","url":"/episodes/show/546/self-hosting-apps-for-python-people"},{"category":"Episode","description":"The OWASP Top 10 just got a fresh update, and there are some big changes: supply chain attacks, exceptional condition handling, and more. Tanya Janca is back on Talk Python to walk us through every single one of them. And we're not just talking theory, we're going to turn Claude Code loose on a real open source project and see what it finds. Let's do it.","id":545,"title":"OWASP Top 10 (2025 List) for Python Devs","url":"/episodes/show/545/owasp-top-10-2025-list-for-python-devs"},{"category":"Episode","description":"When you pip install a package with compiled code, the wheel you get is built for CPU features from 2009. Want newer optimizations like AVX2? Your installer has no way to ask for them. GPU support? You're on your own configuring special index URLs. The result is fat binaries, nearly gigabyte-sized wheels, and install pages that read like puzzle books. A coalition from NVIDIA, Astral, and QuanSight has been working on Wheel Next: A set of PEPs that let packages declare what hardware they need and let installers like uv pick the right build automatically. Just  uv pip install torch and it works. I sit down with Jonathan Dekhtiar from NVIDIA, Ralf Gommers from Quansight and the NumPy and SciPy teams, and Charlie Marsh, founder of Astral and creator of uv, to dig into all of it.","id":544,"title":"Wheel Next + Packaging PEPs","url":"/episodes/show/544/wheel-next-packaging-peps"},{"category":"Episode","description":"When you type a question into ChatGPT, the model only has what you typed to work with. But tools like Claude Code can plan, iterate, test, and recover from mistakes. They work more like we do. The difference is the agent harness: Planning tools, file system access, sub-agents, and carefully crafted system prompts that turn a raw LLM into something genuinely capable.\r<br/>\n\r<br/>\nSydney Runkle is back on Talk Python representing LangChain and their new open source library, Deep Agents: A framework for building your own deep agents with plain Python functions, middleware hooks, and MCP support. This is how the magic works under the hood.","id":543,"title":"Deep Agents: LangChain's SDK for Agents That Plan and Delegate","url":"/episodes/show/543/deep-agents-langchains-sdk-for-agents-that-plan-and-delegate"},{"category":"Episode","description":"When LLMs write code to accomplish a task, that code has to actually run somewhere. And right now, the options aren't great. Spin up a sandboxed container and you're paying a full second of cold start overhead plus the complexity of another service. Let the LLM loose on your actual machine and... well, you'd better be watching.\r<br/>\n\r<br/>\nOn this episode, I sit down with Samuel Colvin, creator of Pydantic, now at 10 billion downloads, to explore Monty, a Python interpreter written from scratch in Rust, purpose-built to run LLM-generated code. It starts in microseconds, is completely sandboxed by design, and can even serialize its entire state to a database and resume later. We dig into why this deliberately limited interpreter might be exactly what the AI agent era needs.","id":541,"title":"Monty - Python in Rust for AI","url":"/episodes/show/541/monty-python-in-rust-for-ai"},{"category":"Episode","description":"Monorepos -- you've heard the talks, you've read the blog posts, maybe you've seen a few tantalizing glimpses into how Google or Meta organize their massive codebases. But it's often in the abstract and behind closed doors. What if you could crack open a real, production monorepo, one with over a million lines of Python and over 100 of sub-packages, and actually see how it's built, step by step, using modern tools and standards? That's exactly what Apache Airflow gives us. \r<br/>\n\r<br/>\nOn this episode, I sit down with Jarek Potiuk and Amogh Desai, two of Airflow's top contributors, to go inside one of the largest open-source Python monorepos in the world and learn how they manage it with uv, pyproject.toml, and the latest packaging standards, so you can apply those same patterns to your own projects.","id":540,"title":"Modern Python monorepo with uv and prek","url":"/episodes/show/540/modern-python-monorepo-with-uv-and-prek"},{"category":"Episode","description":"You're adding type hints to your Python code, your editor is happy, autocomplete is working great. But then you switch tools and suddenly there are red squiggles everywhere. Who decides what a float annotation actually means? Or whether passing None where an int is expected should be an error? It turns out there's a five-person council dedicated to exactly these questions -- and two brand-new Rust-based type checkers are raising the bar. On this episode, I sit down with three members of the Python Typing Council -- Jelle Zijlstra, Rebecca Chen, and Carl Meyer -- to learn how the type system is governed, where the spec and the type checkers agree and disagree, and get the council's official advice on how much typing is just enough.","id":539,"title":"Catching up with the Python Typing Council","url":"/episodes/show/539/catching-up-with-the-python-typing-council"},{"category":"Episode","description":"Digital humanities sounds niche, until you realize it can mean a searchable archive of U.S. amendment proposals, Irish folklore, or pigment science in ancient art. Today I\u2019m talking with David Flood from Harvard\u2019s DARTH team about an unglamorous problem: What happens when the grant ends but the website can\u2019t. His answer, static sites, client-side search, and sneaky Python. Let\u2019s dive in.","id":538,"title":"Python in Digital Humanities","url":"/episodes/show/538/python-in-digital-humanities"},{"category":"Episode","description":"You've built your FastAPI app, it's running great locally, and now you want to share it with the world. But then reality hits -- containers, load balancers, HTTPS certificates, cloud consoles with 200 options. What if deploying was just one command? That's exactly what Sebastian Ramirez and the FastAPI Cloud team are building. On this episode, I sit down with Sebastian, Patrick Arminio, Savannah Ostrowski, and Jonathan Ehwald to go inside FastAPI Cloud, explore what it means to build a \"Pythonic\" cloud, and dig into how this commercial venture is actually making FastAPI the open-source project stronger than ever.","id":536,"title":"Fly inside FastAPI Cloud","url":"/episodes/show/536/fly-inside-fastapi-cloud"},{"category":"Episode","description":"Building on the web is like working with the perfect clay. It\u2019s malleable and can become almost anything. But too often, frameworks try to hide the web\u2019s best parts away from us. Today, we\u2019re looking at PyView, a project that brings the real-time power of Phoenix LiveView directly into the Python world. I'm joined by Larry Ogrodnek to dive into PyView.","id":535,"title":"PyView: Real-time Python Web Apps","url":"/episodes/show/535/pyview-real-time-python-web-apps"},{"category":"Episode","description":"Today on Talk Python, the creators behind FastAPI, Flask, Django, Quart, and Litestar get practical about running apps based on their framework in production. Deployment patterns, async gotchas, servers, scaling, and the stuff you only learn at 2 a.m. when the pager goes off. For Django, we have Carlton Gibson and Jeff Triplet. For Flask, we have David Lord and Phil Jones, and on team Litestar we have Janek Nouvertn\u00e9 and Cody Fincher, and finally Sebasti\u00e1n Ram\u00edrez from FastAPI is here. Let\u2019s jump in.","id":533,"title":"Web Frameworks in Prod by Their Creators","url":"/episodes/show/533/web-frameworks-in-prod-by-their-creators"},{"category":"Episode","description":"Python in 2025 is in a delightfully refreshing place: the GIL's days are numbered, packaging is getting sharper tools, and the type checkers are multiplying like gremlins snacking after midnight. On this episode, we have an amazing panel to give us a range of perspectives on what matter in 2025 in Python. We have Barry Warsaw, Brett Cannon, Gregory Kapfhammer, Jodie Burchell, Reuven Lerner, and Thomas Wouters on to give us their thoughts.","id":532,"title":"2025 Python Year in Review","url":"/episodes/show/532/2025-python-year-in-review"},{"category":"Episode","description":"For years, building interactive widgets in Python notebooks meant wrestling with toolchains, platform quirks, and a mountain of JavaScript machinery. Most developers took one look and backed away slowly. Trevor Manz decided that barrier did not need to exist. His idea was simple: give Python users just enough JavaScript to unlock the web\u2019s interactivity, without dragging along the rest of the web ecosystem. That idea became anywidget, and it is quickly becoming the quiet connective tissue of modern interactive computing. Today we dig into how it works, why it has taken off, and how it might change the way we explore data.","id":530,"title":"anywidget: Jupyter Widgets made easy","url":"/episodes/show/530/anywidget-jupyter-widgets-made-easy"},{"category":"Episode","description":"A lot of people building software today never took the traditional CS path. They arrived through curiosity, a job that needed automating, or a late-night itch to make something work. This week, David Kopec joins me to talk about rebuilding computer science for exactly those folks, the ones who learned to program first and are now ready to understand the deeper ideas that power the tools they use every day.","id":529,"title":"Computer Science from Scratch","url":"/episodes/show/529/computer-science-from-scratch"},{"category":"Episode","description":"In this episode, I\u2019m talking with Vincent Warmerdam about treating LLMs as just another API in your Python app, with clear boundaries, small focused endpoints, and good monitoring. We\u2019ll dig into patterns for wrapping these calls, caching and inspecting responses, and deciding where an LLM API actually earns its keep in your architecture.","id":528,"title":"Python apps with LLM building blocks","url":"/episodes/show/528/python-apps-with-llm-building-blocks"},{"category":"Episode","description":"Today, we\u2019re talking about building real AI products with foundation models. Not toy demos, not vibes. We\u2019ll get into the boring dashboards that save launches, evals that change your mind, and the shift from analyst to AI app builder. Our guide is Hugo Bowne-Anderson, educator, podcaster, and data scientist, who\u2019s been in the trenches from scalable Python to LLM apps. If you care about shipping LLM features without burning the house down, stick around.","id":526,"title":"Building Data Science with Foundation LLM Models","url":"/episodes/show/526/building-data-science-with-foundation-llm-models"},{"category":"Episode","description":"Building a UI in Python usually means choosing between \"quick and limited\" or \"powerful and painful.\" What if you could write modern, component-based web apps in pure Python and still keep full control? NiceGUI, pronounced \"Nice Guy\" sits on FastAPI with a Vue/Quasar front end, gives you real components, live updates over websockets, and it\u2019s running in production at Zauberzeug, a German robotic company. On this episode, I\u2019m talking with NiceGUI\u2019s creators, Rodja Trappe and Falko Schindler, about how it works, where it shines, and what\u2019s coming next. With version 3.0 releasing around the same time this episode comes out, we spend the end of the episode celebrating the 3.0 release.","id":525,"title":"NiceGUI Goes 3.0","url":"/episodes/show/525/nicegui-goes-3.0"},{"category":"Episode","description":"Python in 2025 is different. Threads really are about to run in parallel, installs finish before your coffee cools, and containers are the default. In this episode, we count down 38 things to learn this year: free-threaded CPython, uv for packaging, Docker and Compose, Kubernetes with Tilt, DuckDB and Arrow, PyScript at the edge, plus MCP for sane AI workflows. Expect practical wins and migration paths. No buzzword bingo, just what pays off in real apps. Join me along with Peter Wang and Calvin Hendrix-Parker for a fun, fast-moving conversation.","id":524,"title":"38 things Python developers should learn in 2025","url":"/episodes/show/524/38-things-python-developers-should-learn-in-2025"},{"category":"Episode","description":"Python typing got fast enough to feel invisible. Pyrefly is a new, open source type checker and IDE language server from Meta, written in Rust, with a focus on instant feedback and real-world DX. Today, we will dig into what it is, why it exists, and how it plays with the rest of the typing ecosystem. We have Abby Mitchell, Danny Yang, and Kyle Into from Pyrefly here to dive into the project.","id":523,"title":"Pyrefly: Fast, IDE-friendly typing for Python","url":"/episodes/show/523/pyrefly-fast-ide-friendly-typing-for-python"},{"category":"Episode","description":"Today we\u2019re turning tiny tips into big wins. Khuyen Tran, creator of CodeCut.ai, has shipped hundreds of bite-size Python and data science snippets across four years. We dig into open-source tools you can use right now, cleaner workflows, and why notebooks and scripts don\u2019t have to be enemies. If you want faster insights with fewer yak-shaves, this one\u2019s packed with takeaways you can apply before lunch. Let\u2019s get into it.","id":522,"title":"Data Sci Tips and Tricks from CodeCut.ai","url":"/episodes/show/522/data-sci-tips-and-tricks-from-codecut.ai"},{"category":"Episode","description":"English is now an API. Our apps read untrusted text; they follow instructions hidden in plain sight, and sometimes they turn that text into action. If you connect a model to tools or let it read documents from the wild, you have created a brand new attack surface. In this episode, we will make that concrete. We will talk about the attacks teams are seeing in 2025, the defenses that actually work, and how to test those defenses the same way we test code. Our guides are Tori Westerhoff and Roman Lutz from Microsoft. They help lead AI red teaming and build PyRIT, a Python framework the Microsoft AI Red Team uses to pressure test real products. By the end of this hour you will know where the biggest risks live, what you can ship this quarter to reduce them, and how PyRIT can turn security from a one time audit into an everyday engineering practice.","id":521,"title":"Red Teaming LLMs and GenAI with PyRIT","url":"/episodes/show/521/red-teaming-llms-and-genai-with-pyrit"},{"category":"Episode","description":"Twenty years after a scrappy newsroom team hacked together a framework to ship stories fast, Django remains the Python web framework that ships real apps, responsibly. In this anniversary roundtable with its creators and long-time stewards: Simon Willison, Adrian Holovaty, Will Vincent, Jeff Triplett, and Thibaud Colas, we trace the path from the Lawrence Journal-World to 1.0, DjangoCon, and the DSF; unpack how a BSD license and a culture of docs, tests, and mentorship grew a global community; and revisit lessons from deployments like Instagram. We talk modern Django too: ASGI and async, HTMX-friendly patterns, building APIs with DRF and Django Ninja, and how Django pairs with React and serverless without losing its batteries-included soul. You\u2019ll hear about Django Girls, Djangonauts, and the Django Fellowship that keep momentum going, plus where Django fits in today\u2019s AI stacks. Finally, we look ahead at the next decade of speed, security, and sustainability.","id":518,"title":"Celebrating Django's 20th Birthday With Its Creators","url":"/episodes/show/518/celebrating-djangos-20th-birthday-with-its-creators"},{"category":"Episode","description":"Agentic AI programming is what happens when coding assistants stop acting like autocomplete and start collaborating on real work. In this episode, we cut through the hype and incentives to define \u201cagentic,\u201d then get hands-on with how tools like Cursor, Claude Code, and LangChain actually behave inside an established codebase. Our guest, Matt Makai, now VP of Developer Relations at DigitalOcean, creator of Full Stack Python and Plushcap, shares hard-won tactics. We unpack what breaks, from brittle \u201cgenerate a bunch of tests\u201d requests to agents amplifying technical debt and uneven design patterns. Plus, we also discuss a sane git workflow for AI-sized diffs. You\u2019ll hear practical Claude tips, why developers write more bugs when typing less, and where open source agents are headed. Hint: The destination is humans as editors of systems, not just typists of code.","id":517,"title":"Agentic Al Programming with Python","url":"/episodes/show/517/agentic-al-programming-with-python"},{"category":"Episode","description":"Python\u2019s data stack is getting a serious GPU turbo boost. In this episode, Ben Zaitlen from NVIDIA joins us to unpack RAPIDS, the open source toolkit that lets pandas, scikit-learn, Spark, Polars, and even NetworkX execute on GPUs. We trace the project\u2019s origin and why NVIDIA built it in the open, then dig into the pieces that matter in practice: cuDF for DataFrames, cuML for ML, cuGraph for graphs, cuXfilter for dashboards, and friends like cuSpatial and cuSignal. We talk real speedups, how the pandas accelerator works without a rewrite, and what becomes possible when jobs that used to take hours finish in minutes. You\u2019ll hear strategies for datasets bigger than GPU memory, scaling out with Dask or Ray, Spark acceleration, and the growing role of vector search with cuVS for AI workloads. If you know the CPU tools, this is your on-ramp to the same APIs at GPU speed.","id":516,"title":"Accelerating Python Data Science at NVIDIA","url":"/episodes/show/516/accelerating-python-data-science-at-nvidia"},{"category":"Episode","description":"What if your code was crash-proof? That's the value prop for a framework called Temporal. Temporal is a durable execution platform that enables developers to build scalable applications without sacrificing productivity or reliability. The Temporal server executes units of application logic called Workflows in a resilient manner that automatically handles intermittent failures, and retries failed operations. We have Mason Egger from Temporal on to dive into durable execution.","id":515,"title":"Durable Python Execution with Temporal","url":"/episodes/show/515/durable-python-execution-with-temporal"},{"category":"Episode","description":"Every year the core developers of Python convene in person to focus on high priority topics for CPython and beyond. This year they met at PyCon US 2025. Those meetings are closed door to keep focused and productive. But we're lucky that Seth Michael Larson was in attendance and wrote up each topic presented and the reactions and feedback to each. We'll be exploring this year's Language Summit with Seth. It's quite insightful to where Python is going and the pressing matters.","id":514,"title":"Python Language Summit 2025","url":"/episodes/show/514/python-language-summit-2025"},{"category":"Episode","description":"Do you like to dive into the details and intricacies of how Python executes and how we can optimize it? Well, do I have an episode for you. We welcome back Brandt Bucher to give us an update on the upcoming JIT compiler for Python and why it differs from JITs for languages such as C# and Java.","id":512,"title":"Building a JIT Compiler for CPython","url":"/episodes/show/512/building-a-jit-compiler-for-cpython"},{"category":"Episode","description":"If you're doing data science and have mostly spent your time doing exploratory or just local development, this could be the episode for you. We are joined by Catherine Nelson to discuss techniques and tools to move your data science game from local notebooks to full-on production workflows.","id":511,"title":"From Notebooks to Production Data Science Systems","url":"/episodes/show/511/from-notebooks-to-production-data-science-systems"},{"category":"Episode","description":"Are you using Polars for your data science work? Maybe you've been sticking with the tried-and-true Pandas? There are many benefits to Polars directly of course. But you might not be aware of all the excellent tools and libraries that make Polars even better. Examples include Patito which combines Pydantic and Polars for data validation and polars_encryption which adds AES encryption to selected columns. We have Christopher Trudeau back on Talk Python To Me to tell us about his list of excellent libraries to power up your Polars game and we also talk a bit about his new Polars course.","id":510,"title":"10 Polars Tools and Techniques To Level Up Your Data Science","url":"/episodes/show/510/10-polars-tools-and-techniques-to-level-up-your-data-science"},{"category":"Episode","description":"If you've heard the phrase \"Automate the boring things\" for Python, this episode starts with that idea and takes it to another level. We have Glyph back on the podcast to talk about \"Programming YOUR computer with Python.\" We dive into a bunch of tools and frameworks and especially spend some time on integrating with existing platform APIs (e.g. macOS's BrowserKit and  Window's COM APIs) to build desktop apps in Python that make you happier and more productive. Let's dive in!","id":508,"title":"Program Your Own Computer with Python","url":"/episodes/show/508/program-your-own-computer-with-python"},{"category":"Episode","description":"If you want to leverage the power of LLMs in your Python apps, you would be wise to consider an agentic framework. Agentic empowers the LLMs to use tools and take further action based on what it has learned at that point. And frameworks provide all the necessary building blocks to weave these into your apps with features like long-term memory and durable resumability. I'm excited to have Sydney Runkle back on the podcast to dive into building Python apps with LangChain and LangGraph.","id":507,"title":"Agentic AI Workflows with LangGraph","url":"/episodes/show/507/agentic-ai-workflows-with-langgraph"},{"category":"Episode","description":"What trends and technologies should you be paying attention to today? Are there hot new database servers you should check out? Or will that just be a flash in the pan? I love these forward looking episodes and this one is super fun. I've put together an amazing panel: Gina H\u00e4u\u00dfge, Ines Montani, Richard Campbell, and Calvin Hendryx-Parker. We dive into the recent Stack Overflow Developer survey results as a sounding board for our thoughts on rising and falling trends in the Python and broader developer space.","id":504,"title":"Developer Trends in 2025","url":"/episodes/show/504/developer-trends-in-2025"},{"category":"Episode","description":"Do you or your company need accounting software? Well, there are plenty of SaaS products out there that you can give your data to. but maybe you also really like Django and would rather have a foundation to build your own accounting system exactly as you need for your company or your product. On this episode, we're diving into Django Ledger, created by Miguel Sanda, which can do just that.","id":502,"title":"Django Ledger: Accounting with Python","url":"/episodes/show/502/django-ledger-accounting-with-python"},{"category":"Episode","description":"We're sitting down with Eric Matthes, the educator, author, and developer behind Django Simple Deploy. If you've ever struggled with taking that final step of getting your Django app onto a live server (without spending days wrestling with DevOps complexities), then give Django Simple Deploy a look. Eric shares how Django Simple Deploy automates away the boilerplate parts of deployment, so you can focus on building features instead of deciphering endless configs. We'll talk about this new project's journey to 1.0, the range of hosting platforms it supports, and why it's not just for beginners.","id":500,"title":"Django Simple Deploy and other DevOps Things","url":"/episodes/show/500/django-simple-deploy-and-other-devops-things"},{"category":"Episode","description":"This episode is all about Beeware, the project that working towards true native apps built on Python, especially for iOS and Android. Russell's been at this for more than a decade, and the progress is now hitting critical mass. We'll talk about the Toga GUI toolkit, building and shipping your apps with Briefcase, the newly official support for iOS and Android in CPython, and so much more. I can't wait to explore how BeeWare opens up the entire mobile ecosystem for Python developers, let's jump right in.","id":499,"title":"BeeWare and the State of Python on Mobile","url":"/episodes/show/499/beeware-and-the-state-of-python-on-mobile"},{"category":"Episode","description":"In this episode, we welcome back Will McGugan, the creator of the wildly popular Rich library and founder of Textualize. We'll dive into Will's latest article on \"Algorithms for High Performance Terminal Apps\" and explore how he's quietly revolutionizing what's possible in the terminal, from smooth animations and dynamic widgets to full-on TUI (or should we say GUI?) frameworks. Whether you're looking to supercharge your command-line tools or just curious how Python can push the limits of text-based UIs, you'll love hearing how Will's taking a modern, web-inspired approach to old-school terminals.","id":498,"title":"Algorithms for high performance terminal apps","url":"/episodes/show/498/algorithms-for-high-performance-terminal-apps"},{"category":"Episode","description":"Have you ever wondered why certain data points stand out so dramatically? They might hold the key to everything from fraud detection to groundbreaking discoveries. This week on Talk Python to Me, we dive into the world of outlier detection with Python with Brett Kennedy. You'll learn how outliers can signal errors, highlight novel insights, or even reveal hidden patterns lurking in the data you thought you understood. We'll explore fresh research developments, practical use cases, and how outlier detection compares to other core data science tasks like prediction and clustering. If you're ready to spot those game-changing anomalies in your own projects, stay tuned.","id":497,"title":"Outlier Detection with Python","url":"/episodes/show/497/outlier-detection-with-python"},{"category":"Episode","description":"Today we explore the wild world of Python deployment with my friend, Calvin Hendryx-Parker from Six Feet Up. We\u2019ll tackle some of the biggest challenges in taking a Python app from \u201cit works on my machine\u201d to production, covering inconsistent environments, conflicting dependencies, and sneaky security pitfalls. Along the way, Calvin shares how containerization with Docker and Kubernetes can both simplify and complicate deployments, especially for smaller teams. Finally, we\u2019ll introduce Scaf, a powerful project blueprint designed to give developers a rock-solid start on Python web projects of all sizes.\r<br/>\n\r<br/>\nGet notified when the <a href=\"https://talkpython.fm/books/python-in-production\"><em>Talk Python in Production</em> book</a> goes live and <a href=\"https://talkpython.fm/books/python-in-production\">read the first third online</a> right now.","id":496,"title":"Scaf: Complete blueprint for new Python Kubernetes projects","url":"/episodes/show/496/scaf-complete-blueprint-for-new-python-kubernetes-projects"},{"category":"Episode","description":"On this episode, I'm joined by Dr. Geoff Boeing, an assistant professor at the University of Southern California whose research spans urban planning, spatial analysis, and data science. We explore why OpenStreetMap is such a powerful source of global map data\u2014and how Geoff's Python library, OSMnx, makes that data easier to download, model, and visualize. Along the way, we talk about what shapes city streets around the world, how urban design influences everything from daily commutes to disaster resilience, and why turning open data into accessible tools can open up completely new ways of understanding our cities. If you've ever wondered how to build or analyze your own digital maps in Python, or what it takes to manage a project that transforms raw geographic data into meaningful research, you won't want to miss this conversation.","id":495,"title":"OSMnx: Python and OpenStreetMap","url":"/episodes/show/495/osmnx-python-and-openstreetmap"},{"category":"Episode","description":"In this episode, I'm joined by JJ Allaire, founder and executive chairman at Posit, and Carlos Scheidegger, a software engineer at Posit, to explore Quarto, an open-source tool revolutionizing technical publishing. We discuss how Quarto empowers users to seamlessly transform Jupyter notebooks into polished reports, dashboards, e-books, websites, and more. JJ shares his journey from creating RStudio to developing Quarto as a versatile, multi-language tool, while Carlos delves into its roots in reproducibility and the challenges of academic publishing. Don't miss this deep dive into a tool that's shaping the future of data-driven storytelling!","id":493,"title":"Quarto: Open-source technical publishing","url":"/episodes/show/493/quarto-open-source-technical-publishing"},{"category":"Episode","description":"If you're a Django developer, I'm sure you've heard so many people raving about FastAPI and Pydantic. But you really love Django and don't want to switch. Then you might want to give Django Ninja a serious look. Django Ninja is highly inspired by FastAPI, but is also deeply integrated into Django itself. We have Vitaliy Kucheryaviy the creator of Django Ninja on this show to tell us all about it.","id":490,"title":"Django Ninja","url":"/episodes/show/490/django-ninja"},{"category":"Episode","description":"Peter Wang has been pushing Python forward since the early days of its data science roots. We're lucky to have him back on the show. We're going to talk about the Anaconda Toolbox for Excel as well as many other trends and topics that are hot in the Python space right now. I'm sure you'll enjoy listening to the two of us exchanging our takes on the topics and trends.","id":489,"title":"Anaconda Toolbox for Excel and more with Peter Wang","url":"/episodes/show/489/anaconda-toolbox-for-excel-and-more-with-peter-wang"},{"category":"Episode","description":"There has been a lot of changes in the low-level Python space these days. The biggest has to be how many projects have rewritten core performance-intensive sections in Rust. Or even the wholesale adoption of Rust for newer projects such as uv and ruff. On this episode, we dive into the tools and workflow needed to build these portions of Python apps in Rust with David Seddon and Samuel Colvin.","id":487,"title":"Building Rust Extensions for Python","url":"/episodes/show/487/building-rust-extensions-for-python"},{"category":"Episode","description":"If you are a .NET developer or work in a place that has some of those folks, wouldn't it be great to fully leverage the entirety of PyPI with it's almost 600,000 packages inside your .NET code? But how would you do this? Previous efforts have let you write Python syntax but using the full libraries (especially the C-based ones) has been out of reach, until CSnakes. This project by Anthony Shaw and Aaron Powell unlocks some pretty serious integration between the two languages. We have them both here on the show today to tell us all about it.","id":486,"title":"CSnakes: Embed Python code in .NET","url":"/episodes/show/486/csnakes-embed-python-code-in-.net"},{"category":"Episode","description":"What do developers need to know about AppSec and building secure software? We have Tanya Janca (AKA SheHacksPurple) on the show to tell us all about it. We talk about what developers should expect from threat modeling events as well as concrete tips for security your apps and services.","id":485,"title":"Secure coding for Python with SheHacksPurple","url":"/episodes/show/485/secure-coding-for-python-with-shehackspurple"},{"category":"Episode","description":"Have you heard about HTMX? We've discussed it a time or two on this show. We're back with another episode on HTMX, this time with a real-world success story and lessons learned. We have Sheena O'Connell on to tell us how she moved from a React-Django app to pure Django with HTMX.","id":484,"title":"From React to a Django+HTMX based stack","url":"/episodes/show/484/from-react-to-a-django-htmx-based-stack"},{"category":"Episode","description":"Do you struggle to make sure your code is always correct before you check it in? What about your team members' code? That one person who never wants to run the linter? Tired of dealing with tons of conflicts and spurious git changes? You need git pre-commit hooks. We're lucky to have Stefanie Molin on this episode who has done a bunch of writing and teaching of git hooks.","id":482,"title":"Pre-commit Hooks for Python Devs","url":"/episodes/show/482/pre-commit-hooks-for-python-devs"},{"category":"Episode","description":"Hynek has been writing and speaking on some of the most significant topics in the Python space and I've enjoyed his takes. So I invited him on the show to share them with all of us. This episode really epitomizes one of the reasons I launched Talk Python 9 years ago. It's as if we run into each other at a bar during a conference and I ask Hynek, \"So what are your thoughts on ...\" and we dive down the rabbit hole for an hour. I hope you enjoy it.","id":481,"title":"Python Opinions and Zeitgeist with Hynek","url":"/episodes/show/481/python-opinions-and-zeitgeist-with-hynek"},{"category":"Episode","description":"If you work in data science, you definitely know about data frame libraries. Pandas is certainly the most popular, but there are others such as cuDF, Modin, Polars, Dask, and more. They are all similar but definitely not the same APIs and Polars is quite different.  But here's the problem. If you want to write a library that is for users of more than one of these data frame frameworks, how do you do that? Or if you want to leave open the possibility of changing yours after the app is built, same problem. That's the problem that Narwhals solves. We have Marco Gorelli on the show to tell us all about it.","id":480,"title":"Ahoy, Narwhals are bridging the data science APIs","url":"/episodes/show/480/ahoy-narwhals-are-bridging-the-data-science-apis"},{"category":"Episode","description":"You're about to launch your new app or API, or even just a big refactor of your current project. Will it stand up and deliver when you put it into production or when that big promotion goes live? Or will it wither and collapse? How would you know? Well you would test that of course. We have Anthony Shaw back on the podcast to dive into a wide range of tools and techniques for performance and loading testing of web apps.","id":479,"title":"Designing Effective Load Tests for Your Python App","url":"/episodes/show/479/designing-effective-load-tests-for-your-python-app"},{"category":"Episode","description":"Do you have text that you want to process automatically? Maybe you want to pull out key products or topics of conversation? Maybe you want to get the sentiment? The possibilities are many with this week's topic: NLP with spaCy and Python. Our guest, Vincent D. Warmerdam, has worked on spaCy and other tools at Explosion AI and he's here to give us his tips and tricks for working with text from Python.","id":477,"title":"Awesome Text Tricks with NLP and spaCy","url":"/episodes/show/477/awesome-text-tricks-with-nlp-and-spacy"},{"category":"Episode","description":"A couple of weeks ago, Charlie Marsh and the folks at Astral made another big splash with a major release of uv called \"uv: Unified Python packaging\" which has many far reaching features. We had to have Charlie on the show to give us the inside look into this development. Let's get to it.","id":476,"title":"Unified Python packaging with uv","url":"/episodes/show/476/unified-python-packaging-with-uv"},{"category":"Episode","description":"Every year the core developers meet to discuss and propose the major changes and trends in Python itself. This invite-only conference of about 50 people happens inside PyCon in the US. Because it's private, we rarely get detailed looks inside this event. On this episode, we have Seth Michael Larson here to give us his account of the sessions and proposals. It's a unique look into the zeitgeist of CPython.","id":475,"title":"Python Language Summit 2024","url":"/episodes/show/475/python-language-summit-2024"},{"category":"Episode","description":"Python performance has come a long way in recent times. And it's often the data scientists, with their computational algorithms and large quantities of data, who care the most about this form of performance. It's great to have Stan Seibert back on the show to talk about Python's performance for data scientists. We cover a wide range of tools and techniques that will be valuable for many Python developers and data scientists.","id":474,"title":"Python Performance for Data Science","url":"/episodes/show/474/python-performance-for-data-science"},{"category":"Episode","description":"<span>This episode turned out to be a seminal one for me. After speaking  with David about the Flask ecosystem, it finally convinced me to get  moving and convert </span><a href='https://talkpython.fm'><span>talkpython.fm</span></a><span> to Quart. You can read all about the journey in a detailed write up I did at </span><a href='https://talkpython.fm/blog/posts/talk-python-rewritten-in-quart-async-flask/'><span>Talk Python rewritten in Quart (async Flask)</span></a><span>.</span></p><p><span>With this episode, I hope you\u2019re ready for an inside look at the  latest happenings in Flask, one of Python\u2019s most popular web frameworks. David Lord, Flask\u2019s lead maintainer, takes us behind the scenes of  recent performance boosts (like a 50% speedup in Werkzeug), the future  of async support via Quart, and how the broader Pallets ecosystem is  evolving under one umbrella. You\u2019ll also hear about Pallets Eco, which  aims to streamline and revive critical Flask extensions, and learn how  you can contribute to this massive open-source effort. If you use Flask, want to keep your Python apps on the cutting edge, or just love  data-driven insights from top maintainers, this episode is for you.</span></p><p><strong><span>Flask</span></strong><span> and its sister libraries are faster, leaner, and more maintainable than ever. The </span><strong><span>pallets-eco</span></strong><span> initiative aims to keep the Flask extension ecosystem thriving. David  and the Pallets team welcome new contributors, especially folks  interested in type annotations, extension maintenance, or community  support. Check out the Pallets Discord to get involved!</span>","id":472,"title":"State of Flask and Pallets in 2024","url":"/episodes/show/472/state-of-flask-and-pallets-in-2024"},{"category":"Episode","description":"Python is special. It's used by the big tech companies but also by those you would rarely classify as developers. On this episode, we get a look inside how Python is being used at a Children's Hospital to speed and improve patient care. We have Dr. Somak Roy here to share how he's using Python in his day to day job to help kids get well a little bit faster.","id":470,"title":"Python in Medicine and Patient Care","url":"/episodes/show/470/python-in-medicine-and-patient-care"},{"category":"Episode","description":"Python is one of the most popular languages of the current era. It dominates data science, it an incredible choice for web development, and its many people's first language. But it's not super great on front-end programing, is it? Frameworks like React, Vue and other JavaScript frameworks rule the browser and few other languages even get a chance to play there. But with pyscript, which I've covered several times on this show, we have the possibility of Python on the front end. Yet it's not really a front end framework, just a runtime in the browser. That's why I'm excited to have Ken Kinder on the podcast to talk about his project PuePy, a reactive frontend framework in Python.","id":469,"title":"PuePy: Reactive frontend framework in Python","url":"/episodes/show/469/puepy-reactive-frontend-framework-in-python"},{"category":"Episode","description":"I have a special episode for you this time around. We're coming to you live from PyCon 2024. I had the chance to sit down with some amazing people from the data science side of things: Jodie Burchell, Maria Jose Molina-Contreras, and Jessica Greene. We cover a whole set of recent topics from a data science perspective. Though we did have to cut the conversation a bit short as they were coming from and go to talks they were all giving but it was still a pretty deep conversation.","id":467,"title":"Data Science Panel at PyCon 2024","url":"/episodes/show/467/data-science-panel-at-pycon-2024"},{"category":"Episode","description":"There hasn't been a boom like the AI boom since the .com days. And it may look like a space destined to be controlled by a couple of tech giants. But Ines Montani thinks open source will play an important role in the future of AI. I hope you join us for this excellent conversation about the future of AI and open source.","id":465,"title":"The AI Revolution Won't Be Monopolized","url":"/episodes/show/465/the-ai-revolution-wont-be-monopolized"},{"category":"Episode","description":"Do you want to look inside your Django request? How about all of your requests in development and see where they overlap? If that sounds useful, you should check out Kolo. It's a pretty incredible extension for your editor (VS Code at the moment, more editors to come most likely). We have Wilhelm Klopp on to tell us all about it.","id":464,"title":"Seeing code flows and generating tests with Kolo","url":"/episodes/show/464/seeing-code-flows-and-generating-tests-with-kolo"},{"category":"Episode","description":"So you've created a web app with Python using Flask, Django, FastAPI, or even Emmett. It works great on your machine. How do you get it out to the world? You'll need a production-ready web server. On this episode, we have Giovanni Barillari to tell us about his relatively-new server named Granian. It promises better performance and much better consistency than many of the more well known ones today.","id":463,"title":"Running on Rust: Granian Web Server","url":"/episodes/show/463/running-on-rust-granian-web-server"},{"category":"Episode","description":"This episode dives into some of the most important data science libraries from the Python space with one of its pioneers: Wes McKinney. He's the creator or co-creator of pandas, Apache Arrow, and Ibis projects and an entrepreneur in this space.","id":462,"title":"Pandas and Beyond with Wes McKinney","url":"/episodes/show/462/pandas-and-beyond-with-wes-mckinney"},{"category":"Episode","description":"Do you use Python in an academic setting? Maybe you run a research lab or teach courses using Python. Maybe you're even a student using Python. Whichever it is, you'll find a ton of great advice in this episode. I talk with Keiland Cooper about how he is using Python at his neuroscience lab at the University of California, Irvine.","id":461,"title":"Python in Neuroscience and Academic Labs","url":"/episodes/show/461/python-in-neuroscience-and-academic-labs"},{"category":"Episode","description":"Do you find yourself or your team building internal apps frequently for your company? Are you familiar with the term \"forms over data\"? They are super empowering for your org but they can be pretty repetitive and you might find yourself spending more time than you'd like working on them rather than core products and services. I invited Jimmy Chan from Dropbase to tell us about their service who's tagline is \"Build internal web apps with just Python.\" It's a cool service and a fun conversation.","id":460,"title":"Dropbase: Build Internal Tools with Python","url":"/episodes/show/460/dropbase-build-internal-tools-with-python"},{"category":"Episode","description":"We all know that tools like ChatGPT have really empowered developers to tackle bigger problems. Are you using TailwindCSS and need a login page? Try asking Chat \"What is the HTML for a login page with the login username, password, and button in its own section in the center of the page?\" It will literally give you a first pass version of it. But how far can you push this? Fred Tubiermont may have taken it farther than most. He built a functioning SaaS product with paying customers by only using ChatGPT and Python. It's fascinating to hear his story.","id":459,"title":"I Built A Python SaaS with AI","url":"/episodes/show/459/i-built-a-python-saas-with-ai"},{"category":"Episode","description":"Serverless has moved from the fringes to the forefront of modern application architecture, especially for Pythonistas looking to reduce operational complexity. Today, we\u2019re joined by Tony Sherman\u2014an industry pro who\u2019s taken Python-based projects from proof-of-concept to production, all powered by serverless tech like AWS Lambda and RDS Proxy. We\u2019ll break down real-world performance tips, packaging best practices, and highlight the new wave of serverless-friendly libraries in the Python ecosystem. Whether you\u2019re building IoT pipelines, spinning up ephemeral dev environments, or just sick of tinkering with Kubernetes, this discussion will help you decide if serverless is your next logical move\u2014and how to get there smoothly.","id":458,"title":"Serverless Python in 2024","url":"/episodes/show/458/serverless-python-in-2024"},{"category":"Episode","description":"Do you know what custom GPTs are? They're configurable and shareable chat experiences with a name, logo, custom instructions, conversation starters, access to OpenAI tools, and custom API actions. And, you can build them with Python! Ian Maurer has been doing just that and is here to share his experience building them.","id":456,"title":"Building GPT Actions with FastAPI and Pydantic","url":"/episodes/show/456/building-gpt-actions-with-fastapi-and-pydantic"},{"category":"Episode","description":"Interested in data science but you're not quite working in it yet? In software, getting that very first job can truly be the hardest one to land. On this episode, we have Avery Smith from Data Career Jumpstart here to share his advice for getting your first data job.","id":455,"title":"Land Your First Data Job","url":"/episodes/show/455/land-your-first-data-job"},{"category":"Episode","description":"Do you have data that you pull from external sources or is generated and appears at your digital doorstep? I bet that data needs processed, filtered, transformed, distributed, and much more. One of the biggest tools to create these data pipelines with Python is Dagster. And we are fortunate to have Pedram Navid on the show this episode. Pedram is the Head of Data Engineering and DevRel at Dagster Labs. And we're talking data pipelines this week at Talk Python.","id":454,"title":"Data Pipelines with Dagster","url":"/episodes/show/454/data-pipelines-with-dagster"},{"category":"Episode","description":"Have you ever been wait around for pip to do its thing while installing packages or syncing a virtual environment or through some higher level tool such as pip-tools? Then you'll be very excited to hear about the tool just announced from Astral called uv. It's like pip, but 100x faster. Charlie Marsh from Ruff fame and founder of Astral is here to dive in. Let's go.","id":453,"title":"uv - The Next Evolution in Python Packages?","url":"/episodes/show/453/uv-the-next-evolution-in-python-packages"},{"category":"Episode","description":"Have you heard of Quart? It's the fully-async version of Flask created by Philip Jones who is working closely with the Flask team on these parallel projects. The TL;DR; version is that if you want to take advantage of async and await and you're using Flask, you want to give Quart a solid look. We've spoken to Philip previously about Quart. This time around here's here to share his top Quart extensions and libraries you can adopt today.","id":452,"title":"Top Quart (async Flask) Extensions","url":"/episodes/show/452/top-quart-async-flask-extensions"},{"category":"Episode","description":"Are you interested in contributing to Django? Then there is an amazing mentorship program that helps Python and Django enthusiasts, because contributes and potentially core developers of Django. It's called Djangonauts and their slogan is \"where contributors launch.\" On this episode, we have Sarah Boyce from the Django team and former Djangonaut and now Djangonaut mentor, Tushar Gupta. Not only is this excellent for the Django community, many of other open source communities would do well to keep an eye on how this creative project is working.","id":451,"title":"Djangonauts, Ready for Blast-Off","url":"/episodes/show/451/djangonauts-ready-for-blast-off"},{"category":"Episode","description":"Building web UIs in Python has always been in interesting proposition. On one end, we have a the full web design story with artisanal HTML and CSS. On another end there are several Python platforms that aim to the bring RAD, rapid app development, style of building with Python. Those can be great, and I've covered a couple of them, but they usually reach a limit on what they can do or how they integrate with the larger web ecosystem. On this episode, we have Samuel Colvin to share his latest exciting project FastUI. With FastUI, you build responsive web applications using React without writing a single line of JavaScript, or touching npm. Yet designers and other tools can focus on React front-ends for a professional SPA like app experience.","id":449,"title":"Building UIs in Python with FastUI","url":"/episodes/show/449/building-uis-in-python-with-fastui"},{"category":"Episode","description":"So you've created a Python-based open source project and it's started to take off. You're getting contributors, lots of buzz in the podcast space, and more. But you have that day job working on Java. How do you make the transition from popular hobby project to full time job? After all, you are giving away your open source project for free, right? Well, on this episode, I have put together an amazing panel of guests who all have done exactly this: Turned their project into full time work and even companies in some cases. We have Samuel Colvin, Gina H\u00e4u\u00dfge, Sebasti\u00e1n Ram\u00edrez, Charlie Marsh, Will McGugan and Eric Holscher on to share their stories.","id":448,"title":"Full-Time Open Source Devs Panel","url":"/episodes/show/448/full-time-open-source-devs-panel"},{"category":"Episode","description":"It's an exciting time for the capabilities of Python. We have the Faster CPython initiative going strong, the recent async work, the adoption of typing and on this episode we discuss a new isolation and parallelization capability coming to Python through sub-interpreters. We have Eric Snow who spearheaded the work to get them added to Python 3.12 and is working on the Python API for 3.13 along with Anthony Shaw who has been pushing the boundaries of what you can already do with subinterpreters.","id":447,"title":"Parallel Python Apps with Sub Interpreters","url":"/episodes/show/447/parallel-python-apps-with-sub-interpreters"},{"category":"Episode","description":"Are you early in your software dev or data science career? Maybe it hasn't even really started yet and you're still in school. On this episode we have Sydney Runkle who has had a ton of success in the Python space and she hasn't even graduated yet. We sit down to talk about what she's done and might do differently again to achieve that success. It's \"The Young Coder's Blueprint to Success\" on episode 444 of Talk Python To Me.","id":444,"title":"The Young Coder's Blueprint to Success","url":"/episodes/show/444/the-young-coders-blueprint-to-success"},{"category":"Episode","description":"Special crossover episode of Python Bytes to wrap up 2023. Topics include:\r<br/>\n\r<br/>\n<ol>    <ul><strong>Michael #1</strong>: <a href=\"https://hatch.pypa.io/latest/blog/2023/12/11/hatch-v180/\">Hatch v1.8</a></ul>    <ul><strong>Brian #2:</strong> <a href=\"https://svcs.hynek.me/en/stable/\">svcs : A Flexible Service Locator for Python</a></ul>    <ul><strong>Michael #3:</strong> <a href=\"https://discuss.python.org/t/steering-council-election-results-2024-term/40851\">Steering Council 2024 Term  Election Results</a></ul>    <ul><strong>Brian #4:</strong> <a href=\"https://typethepipe.com/post/python-protocols-when-to-use\">Python protocols. When        to use them in your projects to abstract and decoupling</a></ul>    <ul>Extras</ul><ul>Joke: <strong>Joke:</strong> <a href=\"https://mastodon.social/@tveskov/111289358585305218\">The dream is dead?</a></ul></ol>","id":443,"title":"Python Bytes Crossover 2023","url":"/episodes/show/443/python-bytes-crossover-2023"},{"category":"Episode","description":"You've probably heard the term \"syntactic sugar\", that is, syntax within a programming language that is designed to make things easier to read or to express. It makes the language \"sweeter\" for human use. It turns out Brett Cannon has spent 2 years diving into and writing about Python's sweet language features and how they really work down inside CPython. He joins me on the show today to dive into a few of the more relevant posts he's written about it.","id":441,"title":"Python = Syntactic Sugar?","url":"/episodes/show/441/python-syntactic-sugar"},{"category":"Episode","description":"We all know that LLMs and generative AI has been working its way into many products. It's Jupyter's turn to get a really awesome integration. We have David Qiu here to tell us about Jupyter AI. Jupyter AI provides a user-friendly and powerful way to apply generative AI to your notebooks. It lets you choose from many different LLM providers and models to get just the help you're looking for. And it does way more than just a chat pane in the UI. Listen to find out.","id":440,"title":"Talking to Notebooks with Jupyter AI","url":"/episodes/show/440/talking-to-notebooks-with-jupyter-ai"},{"category":"Episode","description":"On this episode we have Wolf Vollprecht and Ruben Arts from the pixi project here to talk about pixi, a high performance package manager for Python and other languages that actually manages Python itself too. They have a lot of interesting ideas on where Python packaging should go and are putting their time and effort behind them. Will pixi become your next package manager? Listen in to find out.","id":439,"title":"Pixi, A Fast Package Manager","url":"/episodes/show/439/pixi-a-fast-package-manager"},{"category":"Episode","description":"Are you considering or struggling with replacing much of the interactivity of your Django app with frontend JavaScript frameworks? After all, your users do expect an interactive and modern app, right? Before you make a rash decision, you owe it to yourself to check out HTMX. It goes well with Django. We have Christopher Trudeau to run through a whole awesome list of HTMX and Python and tell us about his new HTMX + Django course.","id":437,"title":"HTMX for Django Developers (And All of Us)","url":"/episodes/show/437/htmx-for-django-developers-and-all-of-us"},{"category":"Episode","description":"How well do you know your Python packaging tools? These are things like pip which install your project's dependencies and their dependencies and so on. In this mix, we have more modern tools such as Poetry, Flit, Hatch and others. And even tools outside of Python itself which may attempt to manage Python itself in addition to the libraries. To make sense of all of this, we welcome back Anna-Lena Popkes for an unbiased evaluation of environment and packaging tools.","id":436,"title":"An Unbiased Evaluation of Environment and Packaging Tools","url":"/episodes/show/436/an-unbiased-evaluation-of-environment-and-packaging-tools"},{"category":"Episode","description":"We all know about Flask and Django. And of course FastAPI made a huge splash when it came on the scene a few years ago. But new web frameworks are being created all the time. And they have these earlier frameworks to borrow from as well. On this episode we dive into a new framework gaining a lot of traction called Litestar. Will it be the foundation of your next project? Join me as I get to know Litestar with its maintainers: Jacob Coffee, Janek Nouvertn\u00e9, and Cody Fincher.","id":433,"title":"Litestar: Effortlessly Build Performant APIs","url":"/episodes/show/433/litestar-effortlessly-build-performant-apis"},{"category":"Episode","description":"By now, surely you've heard how awesome Pydantic version 2 is. The team led by Samual Colvin spent almost a year refactoring and reworking the core into a high-performance Rust version while keeping the public API in Python and largely unchanged. The main benefit of this has been massive speed ups for frameworks and devs using Pydantic.\r<br/>\n\r<br/>\nBut just how much work is it to take a framework deeply built on Pydantic and make that migration? What are some of the pitfalls? On this episode, we welcome back Roman Right to talk about his experience converting Beanie, the popular MongoDB async framework based on Pydantic, from Pydantic v1 to v2. And we'll have some fun talking MongoDB as well while we are at it.","id":432,"title":"Migrating to Pydantic 2.0: Beanie for MongoDB","url":"/episodes/show/432/migrating-to-pydantic-2.0-beanie-for-mongodb"},{"category":"Episode","description":"Every year Python has a new major release. This year it's Python 3.12 and it'll come out on October 2, 2023. That's 4 days from when this episode was published. There is quite process involved to test, build, and ship Python across many platforms and channels. We have Seth Michael Larson here to give us a detailed rundown on what exactly is involved in releasing CPython.","id":431,"title":"Visualizing CPython Release Process","url":"/episodes/show/431/visualizing-cpython-release-process"},{"category":"Episode","description":"We write tests to show us when there are problems with our code. But what if there are intermittent problems with the tests themselves? That can be big hassle. In this episode, we have Gregory Kapfhammer and Owain Parry on the show to share their research and advice for taming flaky tests.","id":429,"title":"Taming Flaky Tests","url":"/episodes/show/429/taming-flaky-tests"},{"category":"Episode","description":"Have you heard of Django? It's this little web framework that, well, kicked off much of Python's significance in the web space back in 2005. And that makes Django officially an adult. That's right, Django is now 18. And Django continues to lead the way on how community should be done for individual projects such as web frameworks. We have Carlton Gibson and Will Vincent back on the show this episode to discuss a bit of the Django history, Django trends in 2023, a little HTMX + Django, and lots more.","id":428,"title":"Django Trends in 2023","url":"/episodes/show/428/django-trends-in-2023"},{"category":"Episode","description":"Getting started in Python is pretty easy. There's even a t-shirt that jokes about it: I learned Python, it was a good weekend. But to go from know how to create variables and writing loops, to building amazing things like FastAPI or Instagram, well there is this little gap between those two things. On this episode we welcome Eric Matthes to the show. He has thought a lot about teaching Python and comes to share his 10 tips for going from Python beginner to expert.","id":427,"title":"10 Tips and Ideas for the Beginner to Expert Python Journey","url":"/episodes/show/427/10-tips-and-ideas-for-the-beginner-to-expert-python-journey"},{"category":"Episode","description":"One of the most exciting initiatives in the Python space these days is pyscript which enables Python running natively in your browser. With consistent support from the folks at Anaconda, this project has been making solid strides since its initial release. On this episode we catch up with Fabio Pliger and Nicholas Tollervey to see where they are with the pyscript project.","id":426,"title":"What's New in PyScript [August 2023]","url":"/episodes/show/426/whats-new-in-pyscript-august-2023"},{"category":"Episode","description":"Understanding how your Python application is using memory can be tough. First, Python has it's own layer of reused memory (arenas, pools, and blocks) to help it be more efficient. And many important Python packages are built in natively compiled languages like C and Rust often times making that section of your memory opaque. But with Memray, you can way deeper insight into your memory usage. We have Pablo Galindo Salgado and Matt Wozniski back on the show to dive into Memray, the sister project to their pystack one we recently covered.","id":425,"title":"Memray: The endgame Python memory profiler","url":"/episodes/show/425/memray-the-endgame-python-memory-profiler"},{"category":"Episode","description":"Python is used for a wide variety of software projects. One area it's really gained a huge amount of momentum is in the computational space (including data science). On this episode we welcome back Allen Downey to dive into a particular slice of this space: simulation problems and Python in Physics and Engineering in general.","id":423,"title":"Solving 10 different simulation problems with Python","url":"/episodes/show/423/solving-10-different-simulation-problems-with-python"},{"category":"Episode","description":"When you think of Netflix (as a technology company), you probably imagine them as cloud innovators. They were one of the first companies to go all-in on a massive scale for cloud computing as well as throwing that pesky chaos monkey into the servers. But they have become a hive of amazing Python activity. From their CDN, demand predictions and failover, security, machine learning, executable notebooks and lots more, the Python at play is super interesting. On this episode, we have Zoran Simic and Amjith Ramanujam on the show to give us this rare inside look.","id":421,"title":"Python at Netflix","url":"/episodes/show/421/python-at-netflix"},{"category":"Episode","description":"Here's the situation. You have a Python app that is locked or even has completely crashed and all you're left with is a core dump on the server. Now what?  It's time for PyStack! You can capture a view of your app as if you've set a breakpoint and even view the callstack and locals across language calls (for example from Python to C++ and back). We have the maintainers, Pablo Galindo Salgado and Matt Wozniski, here to dive into PyStack. You'll definitely want to have this tool in your toolbox.","id":419,"title":"Debugging Python in Production with PyStack","url":"/episodes/show/419/debugging-python-in-production-with-pystack"},{"category":"Episode","description":"Large language models and chat-based AIs are kind of mind blowing at the moment. Many of us are playing with them for working on code or just as a fun alternative to search. But others of us are building applications with AI at the core. And when doing that, the slightly unpredictable nature and probabilistic nature of LLMs make writing and testing Python code very tricky. Enter promptimize from Maxime Beauchemin and Preset. It's a framework for non-deterministic testing of LLMs inside our applications. Let's dive inside the AIs with Max.","id":417,"title":"Test-Driven Prompt Engineering for LLMs with Promptimize","url":"/episodes/show/417/test-driven-prompt-engineering-for-llms-with-promptimize"},{"category":"Episode","description":"The release of Pydantic 2.0, its partial rewrite in Rust, and its refactoring into Pydantic core and top-level Pydantic in Python is big news. In fact, the alpha of Pydantic 2 was just released. Of course, these changes will have potentially wide ranging (and positive!) effects on libraries that are built upon Pydantic such as FastAPI, Beanie, and others. That's why this chance I had to catch up with Samuel Colvin from Pydantic and Sebasti\u00e1n Ram\u00edrez from FastAPI together, live from PyCon 2023. It's a super fun and wide ranging interview I'm sure you'll enjoy. Plus, there is a bit of an easter egg in the middle.","id":415,"title":"Future of Pydantic and FastAPI","url":"/episodes/show/415/future-of-pydantic-and-fastapi"},{"category":"Episode","description":"At PyCon 2023, there was a section of the expo floor dedicated to new Python-based companies called Startup Row. I wanted to bring their stories and the experience of talking with these new startups to you. So in this episode, we'll talk with founders from these companies for 5 to 10 minutes each.","id":414,"title":"A Stroll Down Startup Lane","url":"/episodes/show/414/a-stroll-down-startup-lane"},{"category":"Episode","description":"Did you make this year's PyCon event in the US? There was a lot of excitement this time around in Salt Lake City. In this episode I'll bring you a bunch of experiences we had this year. It starts where frequent guest Jay Miller turns the tables and interviews me at the Microsoft booth on the expo hall floor in front of a live audience. Then you'll hear from Mario Munoz, Nick Muoh, Chris Williams, Ray McLendon, and Sean Tibor about their time at the conference.","id":413,"title":"Live from PyCon 2023","url":"/episodes/show/413/live-from-pycon-2023"},{"category":"Episode","description":"What if we distributed CPython, the runtime, in the same way we distributed Python packages - as prebuilt binary wheels that only need to be downloaded and unzipped to run? For starters, that would mean we could ship and deploy Python apps without worrying whether Python itself is available or up-to-date on the platform. Nathaniel Smith has just proposed a PEP to do just that, PEP 711. And we'll dive into that with him next.","id":412,"title":"PEP 711 - Distributing Python Binaries","url":"/episodes/show/412/pep-711-distributing-python-binaries"},{"category":"Episode","description":"What advice would you give someone just getting into Python? What did you learn over time through hard work and a few tears that would have really helped you? It's a fun game to play and we have Jason McDonald on the podcast to give us his take. Enjoy!","id":411,"title":"Things I Wish Someone Had Explained To Me Sooner About Python","url":"/episodes/show/411/things-i-wish-someone-had-explained-to-me-sooner-about-python"},{"category":"Episode","description":"AI has taken the world by storm. It's gone from near zero to amazing in just a few years. We have ChatGPT, we have Stable Diffusion. But what about Jupyter Notebooks and pandas? In this episode, we meet Justin Waugh, the creator of Sketch. Sketch adds the ability to have conversational AI interactions about your pandas data frames (code and data). It's pretty powerful and I know you'll enjoy the conversation.","id":410,"title":"The Intersection of Tabular Data and Generative AI","url":"/episodes/show/410/the-intersection-of-tabular-data-and-generative-ai"},{"category":"Episode","description":"In recent years, there has been a lot of experimenting how we work with dependencies and external libraries for our Python code. There is pip, pip-tools, Poetry, pdm, pyenv, pipenv, Hatch and others workflows. We dove into this deeply back on episode 406: Reimagining Python's Packaging Workflows. We're back with Ofek Lev to take a deeper look at Hatch.","id":408,"title":"Hatch: A Modern Python Workflow","url":"/episodes/show/408/hatch-a-modern-python-workflow"},{"category":"Episode","description":"If you're like most people, the simplicity and easy of getting started is a big part of pytest's appeal. But beneath that simplicity, there is a lot of power and depth. We have Brian Okken on this episode to dive into his latest pytest tips and tricks for beginners and power users.","id":407,"title":"pytest tips and tricks for better testing","url":"/episodes/show/407/pytest-tips-and-tricks-for-better-testing"},{"category":"Episode","description":"The great power of Python is its over 400,000 packages on PyPI to serve as building blocks for your app. How do you get those needed packages on to your dev machine and managed within your project? What about production and QA servers? I don't even know where to start if you're shipping built software to non-dev end users. There are many variations on how this works today. And where we should go from here has become a hot topic of discussion. So today, that's the topic for Talk Python. I have a great panel of guests: Steve Dower, Pradyun Gedam, Ofek Lev, and Paul Moore.","id":406,"title":"Reimagining Python's Packaging Workflows","url":"/episodes/show/406/reimagining-pythons-packaging-workflows"},{"category":"Episode","description":"So you know about dependencies and testing, right? If you're talking to a DB in your app, you have to decide how to approach that with your tests. There are lots of solid options you might pick and they vary by goals. Do you mock out the DB layer for isolation or do you use a test DB to make it as real as possible? Do you just punt and use the real DB for expediency? What if your dependency was a huge array of radio telescopes and a rack of hundreds of bespoke servers? That's the challenge on deck today were we discuss testing radio astronomy with pytest with our guest James Smith. He's a Digital Signal Processing engineer at the South African Radio Astronomy Observatory and has some great stories and tips to share.","id":405,"title":"Testing in Radio Astronomy with Python and pytest","url":"/episodes/show/405/testing-in-radio-astronomy-with-python-and-pytest"},{"category":"Episode","description":"Clean code is one of those aspects of your programming career that's easy to put on the back burner (sometimes by management more than yourself). But it's important in the short term for writing more debuggable and readable code. And important in the long run for avoiding having your program take on the dreaded \"legacy code\" moniker. We're fortunate to have Bob Belderbos back on the show. He's been thinking and writing about clean code and Python a lot lately and we'll dive into a bunch of tips you can use right away to make your code cleaner.","id":404,"title":"Clean Code in Python","url":"/episodes/show/404/clean-code-in-python"},{"category":"Episode","description":"Imagine a world with free and unlimited clean energy. That's the musings of a great science fiction story. But nuclear fusion (the kind that powers the sun)  has always been close at hand, we see the sun every day, and yet impossibly far away as a technology. We took a major step towards this becoming a reality with the folks at the Lawrence Livermore National Labratory in the US achieved \"ignition\" where they got significantly more energy out than they put in. And Python played a major role in this research and experiment. We have Jay Salmonson here to give us a look at the science and the Python code of this discovery.","id":403,"title":"Fusion Ignition Breakthrough and Python","url":"/episodes/show/403/fusion-ignition-breakthrough-and-python"},{"category":"Episode","description":"When you think about processing tabular data in Python, what library comes to mind? Pandas, I'd guess. But there are other libraries out there and Polars is one of the more exciting new ones. It's built in Rust, embraces parallelism, and can be 10-20x faster than Pandas out of the box.\r<br/>\n\r<br/>\nWe have Polars' creator, Ritchie Vink here to give us a look at this exciting new data frame library.","id":402,"title":"Polars: A Lightning-fast DataFrame for Python [updated audio]","url":"/episodes/show/402/polars-a-lightning-fast-dataframe-for-python-updated-audio"},{"category":"Episode","description":"At some point, you've probably migrated an app from one framework or major runtime version to another. For example, Django to Flask, Python 2 to Python 3, or even Angular to Vue.js. This can be a big challenge. If you had 100s of active devs and millions of lines of code, it's a huge challenge. We have Ben Bariteau from Yelp here to recount their story moving 3.8M lines of code from Python 2 to Python 3. But this is not just a 2-to-3 story. It has many lessons on how to migrate code in many situations. There are plenty of gems to take from his experience.","id":401,"title":"Migrating 3.8 Million Lines of Python","url":"/episodes/show/401/migrating-3.8-million-lines-of-python"},{"category":"Episode","description":"Our code quality tools (linters, test frameworks, and others) play an important role in keeping our code error free and conforming to the rules our teams have chosen. But when these tools become sluggish and slow down development, we often avoid running them or even turn them off. On this episode, we have Charlie Marsh here to introduce Ruff, a fast Python linter, written in Rust. To give you a sense of what he means with fast, common Python linters can take 30-60 seconds to lint the CPython codebase. Ruff takes 300 milliseconds. I ran it on the 20,000 lines of Python code for our courses web app at Talk Python Training, and it was instantaneous. It's the kind of tool that can change how you work. I hope you're excited to learn more about it.","id":400,"title":"Ruff - The Fast, Rust-based Python Linter","url":"/episodes/show/400/ruff-the-fast-rust-based-python-linter"},{"category":"Episode","description":"Monorepos are contrary to how many of us have been taught to use source control. To start a project or app, the first thing we do is create a git repo for it. This leads to many focused and small repositories. A quick check of my GitHub account shows there are 179 non-fork repositories. That's a lot but I think many of us work that way. \r<br/>\n\r<br/>\nBut it's not like this with monorepos. There you create one (or a couple) repositories for your entire company. This might have 100s or 1,000s of employees working on multiple projects within the single repo. Famously, Google, Meta, Microsoft, and Airbnb all employ very large monorepos with varying strategies of coordination.","id":399,"title":"Monorepos in Python","url":"/episodes/show/399/monorepos-in-python"},{"category":"Episode","description":"The iconic and first ever image of a black hole was recently released. It took over a decade of work and is a major achievement for astronomy and broadens our understanding of the universe for all of us. Would it surprise you to know that Python played a major part in this discovery? Of course it did, and Dr. Sara Issaoun is here to give us the full story.","id":398,"title":"Imaging Black Holes with Python","url":"/episodes/show/398/imaging-black-holes-with-python"},{"category":"Episode","description":"The beauty of open source software and libraries is that you're not stuck with a single option some vendor is offering. This is especially true when that support is poor and antiquated. Almost any capability you think of has multiple options even for a single language such as Python. Just think about how many web frameworks you can pick today.","id":397,"title":"Evaluating New Open Source Tech Panel","url":"/episodes/show/397/evaluating-new-open-source-tech-panel"},{"category":"Episode","description":"For links and very detailed show notes, please view <a href=\"https://pythonbytes.fm/episodes/show/312/ai-goes-on-trial-for-writing-code\">the original episode page</a> over on Python Bytes. Thanks for listening!","id":396,"title":"AI Goes on Trial For Writing Code (crossover)","url":"/episodes/show/396/ai-goes-on-trial-for-writing-code-crossover"},{"category":"Episode","description":"If you maintain projects on places like GitHub, you know that having a classy readme is important and that maintaining a change log can be helpful for you and consumers of the project. It can also be a pain. That's why I'm excited to welcome back Ned Batchelder to the show. He has a lot of tools to help here as well as some opinions we're looking forward to hearing. We cover his tools and a bunch of others he and I found along the way.","id":395,"title":"Tools for README.md Creation and Maintenance","url":"/episodes/show/395/tools-for-readme.md-creation-and-maintenance"},{"category":"Episode","description":"Jupyter is an amazing environment for exploring data and generating executable reports with Python. But there are many external tools, extensions, and libraries to make it so much better and make you more productive. On this episode, we are going to cover a ton of them. We have Markus Schanta, the maintainer of the awesome-jupyter list on the show and we'll highlight a bunch of Jupyter gems.","id":394,"title":"Awesome Jupyter Libraries and Extensions in 2022","url":"/episodes/show/394/awesome-jupyter-libraries-and-extensions-in-2022"},{"category":"Episode","description":"Space science is one of the few sciences that can spark wonder and imagining in almost anyone. It also happens to be the domain of Python with many missions, telescopes, and analysis happening with Python playing a major role.","id":393,"title":"Space Science with Python","url":"/episodes/show/393/space-science-with-python"},{"category":"Episode","description":"When you think data science, Jupyter notebooks and associated tools probably come to mind. But I want to broaden your toolset a bit and encourage you to look around at other tools that are literally at your fingertips. The terminal and shell command line tools.\r<br/>\n\r<br/>\nOn this episode, you'll meed Jeroen Janssens. He wrote the book Data Science on The Command Line Book and there are a bunch of fun and useful small utilities that will make your life simpler that you can run immediately in the terminal. For example, you can query a CSV file with SQL right from the command line.","id":392,"title":"Data Science from the Command Line","url":"/episodes/show/392/data-science-from-the-command-line"},{"category":"Episode","description":"No Python announcement of 2022 was met with more fanfare than pyscript. This project, announced at PyCon 2022, allows you to write Python files and run them in your browser in place of JavaScript or even with interactions between Python and JavaScript. There was just one catch: The runtime download was a 9MB WebAssembly file. That made its uses quite limited.","id":391,"title":"Pyscript powered by MicroPython","url":"/episodes/show/391/pyscript-powered-by-micropython"},{"category":"Episode","description":"If you're a fan of Python's async and await keywords and the powers they unlock, then this episode is for you. We have Timo Furrer here to share a whole bunch of asyncio related Python packages. Timo runs the awesome-asyncio list and he and I picked out some of our favorites to share with you.","id":389,"title":"18 awesome asyncio packages in Python","url":"/episodes/show/389/18-awesome-asyncio-packages-in-python"},{"category":"Episode","description":"Python 3.11 is here! Keeping with the annual release cycle, the Python core devs have released the latest version of Python. And this one is a big one. It has more friendly error messages and is massively faster than 3.10 (between 10 to 60% faster) which is a big deal for a year over year release of a 30 year old platform.\r<br/>\n\r<br/>\nOn this episode, we have Irit Katriel, Pablo Galindo Salgado, Mark Shannon, and Brandt Bucher all of whom participated in releasing Python this week on the show to tell us about that process and some of the highlight features.","id":388,"title":"Python 3.11 is here and it's fast","url":"/episodes/show/388/python-3.11-is-here-and-its-fast"},{"category":"Episode","description":"Do you have a large or growing Python code base? If you struggle to run builds, tests, linting, and other quality checks regularly or quickly, you'll want to hear what Benjy Weinberger has to say. He's here to introduce Pants Build to us. Pants is a fast, scalable, user-friendly build system for codebases of all sizes. It's currently focused on Python, Go, Java, Scala, Kotlin, Shell, and Docker.","id":387,"title":"Build All the Things with Pants Build System","url":"/episodes/show/387/build-all-the-things-with-pants-build-system"},{"category":"Episode","description":"Do you love Python's async and await but feel that you could use more flexibility and higher-order constructs like running a group of tasks and child tasks as a single operation, or streaming data between tasks, combining async tasks with multiprocessing or threads, or even async file support? You should check out AnyIO. On this episode we have Alex Gr\u00f6nholm the creator of AnyIO here to give us the whole story.","id":385,"title":"Higher level Python asyncio with AnyIO","url":"/episodes/show/385/higher-level-python-asyncio-with-anyio"},{"category":"Episode","description":"For all the amazing powers of Python, deploying packaged apps that leverage native OS-level capabilities isn't one of them. But it can be done and we have a great guest, Rhet Turnbull, here to tell us how he built his distributable macOS app Textinator that uses macOS's native vision recognition framework through Python.","id":383,"title":"Textinator and Building macOS Apps with Python","url":"/episodes/show/383/textinator-and-building-macos-apps-with-python"},{"category":"Episode","description":"We are on the edge of a major jump in Python performance. With the work done by the Faster CPython team and Python 3.11 due out in around a month, your existing Python code might see an increase of well over 25% in speed with no changes. One of the main reasons is its new specializing, adaptive interpreter. \r<br/>\n\r<br/>\nThis episode is about that new feature and a great tool called Specialist which lets you visualize how Python is speeding up your code and where it can't unless you make minor changes. Its creator, Brandt Bucher is here to tell us all about.","id":381,"title":"Python Perf: Specializing, Adaptive Interpreter","url":"/episodes/show/381/python-perf-specializing-adaptive-interpreter"},{"category":"Episode","description":"Terminals seem like the very lowest common denominator for software platforms. They have to work over SSH. They only show text. You can't do much with them. Or can you? Will McGugan and team have been building Textual (based on Rich) which looks more like an animated web app than a terminal app. And he has learned a bunch of lessons trying to maximize terminal based apps. He's here to share his 7 lessons he's learned while building a modern TUI (text user interface) framework.","id":380,"title":"7 lessons from building a modern TUI framework","url":"/episodes/show/380/7-lessons-from-building-a-modern-tui-framework"},{"category":"Episode","description":"Do you write web apps in Django? The framework has come a long way lately with versions 3 and 4 adopting many of the modern Python capabilities (async, for example). But there are so many other libraries and apps that you can use to do more with less code in plugin new functionality. I'm happy to have Christopher Trudeau here on talk Python to take us through his 17 favorite libraries you should be using in Django.","id":379,"title":"17 Libraries You Should Be Using in Django","url":"/episodes/show/379/17-libraries-you-should-be-using-in-django"},{"category":"Episode","description":"Have you heard of Flutter? It's a modern and polished UI framework to write mobile apps, desktop apps, and even web apps. While interesting, you may have kept your distance because Flutter is a Dart language-based framework. But with the project we're covering today, Flet, many Flutter UIs can now be written in pure Python. Flet is a very exciting development in the GUI space for Python devs. And we have the creator, Feodor Fitsner, here to take us through it.","id":378,"title":"Flet: Flutter apps in Python","url":"/episodes/show/378/flet-flutter-apps-in-python"},{"category":"Episode","description":"PyPI has been in the news for a bunch of reasons lately. Many of them good. But also, some with a bit of drama or mixed reactions. On this episode, we have Dustin Ingram, one of the PyPI maintainers and one of the directors of the PSF, here to discuss the whole 2FA story, securing the supply chain, and plenty more related topics. This is another important episode that people deeply committed to the Python space will want to hear.","id":377,"title":"Python Packaging and PyPI in 2022","url":"/episodes/show/377/python-packaging-and-pypi-in-2022"},{"category":"Episode","description":"Pydantic has become a core building block for many Python projects. After 5 years, it's time for a remake. With version 2, the plan is to rebuild the internals (with benchmarks already showing a 17x performance improvement) and clean up the API. Sounds great, but what does that mean for us? Samuel Colvin, the creator of Pydantic, is here to share his plan for Pydantic v2.","id":376,"title":"Pydantic v2 - The Plan","url":"/episodes/show/376/pydantic-v2-the-plan"},{"category":"Episode","description":"Every year, the Python core developers and a few other key players in the Python ecosystem meet to discuss the pressing issues and important advancements at an event called the Python Language Summit. While Python is a community known for openness, this meeting is typically held behind closed doors mostly for efficiency's sake. On this episode, we'll give you a look behind that door. We have Alex Waygood here on this episode to break it down for us and give a look inside the summit.","id":375,"title":"Python Language Summit 2022","url":"/episodes/show/375/python-language-summit-2022"},{"category":"Episode","description":"Deploying and managing your application after you create it can be a big challenge. Cloud platforms such as Azure have literally hundreds of services. Which ones should you choose? How do you link them together? In this episode, Anthony Shaw and Shayne Boyer share a new CLI tool and template they've created for jump starting you use of modern Python apps and deploying them to Azure. We're talking FastAPI, Beanie and MongoDB, async and await, Bicep DevOps, automated CI/CD pipelines and more. Plus we catch up on other Python work happening that Anthony is involved with. If you're interested in deploying or structuring modern Python apps, you'll find some interesting take aways from our conversation.","id":373,"title":"Reinventing Azure's Python CLI","url":"/episodes/show/373/reinventing-azures-python-cli"},{"category":"Episode","description":"Often when we learn about or work with Math, it's done so in a very detached style. You might learn the rules and techniques for differentiation, for example. But how often do you get to apply them to meaningful and interesting problems? In this episode, we have Vince Knight and Geraint Palmer on to discuss solving a wide variety of applied and approachable math problems using Python. Whether you're deeply into math or not so much, I think there is a lot to enjoy from this episode.","id":372,"title":"Applied mathematics with Python","url":"/episodes/show/372/applied-mathematics-with-python"},{"category":"Episode","description":"I'm sure you're familiar with package managers for your OS even if you don't use them. On macOS we have Homebrew, Chocolatey on Windows, and apt, yum, and others on Linux. But if you want to install Python applications, you typically have to fallback to managing them with pip. Maybe you install them for your account with the --user flag. But with pipx you get a clean, isolated install for every Python application that you use. And if you distribute Python apps, pipx is a definitely worth considering as a channel.","id":371,"title":"pipx - Installable, Isolated Python Applications","url":"/episodes/show/371/pipx-installable-isolated-python-applications"},{"category":"Episode","description":"How do you test whether your web sites are working well? Unit tests are great. But for web apps, the number of pieces that have to click together \"just so\" are many. You have databases, server code (such as a Flask app), server templates (Jinja for example), CSS, Javascript, and even deployment topologies (think nginx + uvicorn). Unit tests won't cover all of that integration. But Playwright does. Playwright is a modern, Pythonic take on testing webs apps using code driving a browser core to interact with web apps the way real users and API clients do. I think you'll find a lot to like there. And we have Pandy Knight from Automation Panda here to break it down for us.","id":368,"title":"End-to-End Web Testing with Playwright","url":"/episodes/show/368/end-to-end-web-testing-with-playwright"},{"category":"Episode","description":"Despite Python being overwhelmingly popular and positive, there are major areas of computing where Python is not present. Most notably on mobile and on the frontend side of the web. PyScript, a new project launched by Fabio Pliger from Anaconda, just might change that. It was made public and announced at PyCon just two weeks ago by Peter Wang and now has over 10,000 GitHub stars.  But what is hype vs. reality vs. projected hopes and dreams? We're going to find out on this episode. Fabio is here to tell us all about his new project.","id":367,"title":"Say Hello to PyScript (WebAssembly Python)","url":"/episodes/show/367/say-hello-to-pyscript-webassembly-python"},{"category":"Episode","description":"Does your app have a database? Does that database play an important role in how the app operations and users perceive its quality? Most of you probably said yes to the first, and definitely to the second. But what if your DB isn't doing as well as it should? How would you know? And once you know, what do you do about it?\r<br/>\n\r<br/>\nOn this episode, we're joined by Michael Christofides, co-creator of pgMustard, to discuss and explore the EXPLAIN command for Postgres and other databases as well as all the recommendations you might dig into as a result of understanding exactly what's happening with you queries.","id":366,"title":"Optimizing PostgreSQL DB Queries with pgMustard","url":"/episodes/show/366/optimizing-postgresql-db-queries-with-pgmustard"},{"category":"Episode","description":"How much time do you spend solving negative engineering problems? And can a framework solve them for you? Think of negative engineering as things you do to avoid bad outcomes in software. At the lowest level, this can be writing good error handling with try / except. But it's broader than that: logging, observability (like Sentry tools), retries, failover (as in what you might get from Kubernetes), and so on. We have a great chat with Chris White about Prefect, a tool for data engineers and data scientists meaning to solve many of these problems automatically. But it's a conversation applicable to a broader software development community as well.","id":365,"title":"Solving Negative Engineering Problems with Prefect","url":"/episodes/show/365/solving-negative-engineering-problems-with-prefect"},{"category":"Episode","description":"We're all familiar with the data science tools like numpy, pandas, and others. These are numerical tools working with floating point numbers, often to represent real-world systems. But what if you exactly specify the equations, symbolically like many of us did back in Calculus and Differential Equations courses? With SymPy, you can do exactly that. Create equations, integrate, differentiate, and solve them. Then you can convert those solutions into Python (or even C++ and Fortran code). We're here with two of the core maintainer: Ond\u0159ej \u010cert\u00edk and Aaron Meurer to learn all about SymPy.","id":364,"title":"Symbolic Math with Python using SymPy","url":"/episodes/show/364/symbolic-math-with-python-using-sympy"},{"category":"Episode","description":"What would a modern Python project look like? Maybe it would use Poetry rather than pip directly for its package management. Perhaps its test automation would be controlled with Nox. You might automate its release notes with Release Drafter. The list goes on and on. And that list is the topic of this episode.  Join me and Claudio Jolowicz as we discuss his Hypermodern Python project and template.","id":362,"title":"Hypermodern Python Projects","url":"/episodes/show/362/hypermodern-python-projects"},{"category":"Episode","description":"Python has come a long way since it was released in 1991. It originally released when the Standard Library was primary the totality of functionality you could leverage when building your applications. With the addition of pip and the 368,000 packages on PyPI, it's a different world where what we need and expect from the Standard Library. Brett Cannon and Christian Heimes have introduced PEP 594 which is the first step in trimming outdated and unmaintained older modules from the Standard Library. Join us to dive into the history and future of Python's Standard Library.","id":360,"title":"Removing Python's Dead Batteries (in just 5 years)","url":"/episodes/show/360/removing-pythons-dead-batteries-in-just-5-years"},{"category":"Episode","description":"Are you working on or considering a machine learning project? On this episode, we'll meet three people from the MLOps community: Demetrios Brinkmann, Kate Kuznecova, and Vishnu Rachakonda. They are here to tell us about the lifecycle of a machine learning project. We'll talk about getting started with prototypes and choosing frameworks, the development process, and finally moving into deployment and production.","id":359,"title":"Lifecycle of a machine learning project","url":"/episodes/show/359/lifecycle-of-a-machine-learning-project"},{"category":"Episode","description":"Have you been considering launching a product or even a business based on Python's AI / ML stack? We have a great guest on the episode this week, Dylan Fox, who is the cofounder of AssemblyAI and has been building his startup successfully over the past few years. He has interesting stories of 100s of GPUs in the cloud, evolving ML models, and much more that I know you'll enjoy hearing.","id":356,"title":"Tips for ML / AI startups","url":"/episodes/show/356/tips-for-ml-ai-startups"},{"category":"Episode","description":"What database are you using in your apps these days? If you like most Python people, it's probably PostgreSQL. If you roll with NoSQL like me, you're probably using MongoDB. Maybe you're even using a graph database focused more on relationships.\r<br/>\n\r<br/>\nBut there's a new Python database in town, and as you learn in during this episode, many critical Python libraries have come into existence because of it. This database is called EdgeDB. EdgeDB is built upon Postgres, implemented mostly in python, and is something of a marriage of a traditional relational database and an ORM.","id":355,"title":"EdgeDB - Building a database in Python","url":"/episodes/show/355/edgedb-building-a-database-in-python"},{"category":"Episode","description":"When you think about the power of Python, the clean language or powerful standard library may come to mind. You might certainly point to the external packages too. But what about the relative ease of picking up new libraries or even parts of the standard library? Documentation plays an important role there. And the tools in the Python space for building solid documentation and even publishing articles and books involving live code are huge assets.","id":354,"title":"Sphinx, MyST, and Python Docs in 2022","url":"/episodes/show/354/sphinx-myst-and-python-docs-in-2022"},{"category":"Episode","description":"Two frameworks that have taken the Python world by storm are FastAPI and Pydantic. Once you already have your data exchange modeled in Pydantic, you might want to use that code for storing it in the database. And, if you have DB models you might want to somehow use them to power and document the APIs built with FastAPI.\r<br/>\n\r<br/>\nBut the popular ORMs, such as SQLAlchemy and others, far predate Pydantic. But could they be put together?","id":353,"title":"SQLModel: The New ORM for FastAPI and Beyond","url":"/episodes/show/353/sqlmodel-the-new-orm-for-fastapi-and-beyond"},{"category":"Episode","description":"Do we talk about running Python in production enough? I can tell you that the Talk Python infrastructure (courses, podcasts, APIs, etc.) get a fair amount of traffic, but they look nothing like what Google, or Instagram, or insert [BIG TECH NAME] here's deployments do. Yet, mostly, we hear about interesting feats of engineering at massive scale that is impressive but often is also outside of the world most Python devs need for their companies and services.","id":352,"title":"Running Python in Production","url":"/episodes/show/352/running-python-in-production"},{"category":"Episode","description":"The world of AI is changing fast. And the AI / ML space is a bit out of the ordinary for software developers. Typically in software, we can prove that given a certain situations, the code will always behave the same. We can point to where and why a decision is made. \r<br/>\n\r<br/>\nML isn't like that. We set it up and then it takes on a life of its own.","id":351,"title":"Machine Learning Ethics and Laws Panel","url":"/episodes/show/351/machine-learning-ethics-and-laws-panel"},{"category":"Episode","description":"For 30 years, Python was overseen by Guido van Rossum since he created and released it around in 1990. When he retired in 2018 he left the creation of the new governing body up to the core developers. After a few stressful months, they concept of the steering council became the way forward.","id":350,"title":"Python Steering Council 2021 Retrospective","url":"/episodes/show/350/python-steering-council-2021-retrospective"},{"category":"Episode","description":"This podcast episode you're listening to right now was delivered to you, in part, by MongoDB and Python powering our web apps and production processes. But if you're using pymongo, the native driver from MongoDB to talk to the server, you're doing it wrong. Basing your app on a foundation of exchanging raw dictionaries is a castle of sand. BTW, see the joke at the end of the show about this.","id":349,"title":"Meet Beanie: A MongoDB ODM + Pydantic","url":"/episodes/show/349/meet-beanie-a-mongodb-odm-pydantic"},{"category":"Episode","description":"I'm always on the look out for a good Python UI framework. This episode focuses on Dear PyGui. \r<br/>\n\r<br/>\nDear PyGui: A fast and powerful Graphical User Interface Toolkit for Python with minimal dependencies, created by Jonathan Hoffstadt and Preston Cothren. They are here to tell us all about it.","id":348,"title":"Dear PyGui: Simple yet Fast Python GUI Apps","url":"/episodes/show/348/dear-pygui-simple-yet-fast-python-gui-apps"},{"category":"Episode","description":"The team at Instagram dropped a performance bomb on the Python world when they open-sourced Cider, their performance oriented fork of CPython. It contains a number of performance optimizations, including bytecode inline caching, eager evaluation of coroutines, a method-at-a-time JIT, and an experimental bytecode compiler that uses type annotations to emit type-specialized bytecode that performs better in the JIT.","id":347,"title":"Cinder - Specialized Python that Flies","url":"/episodes/show/347/cinder-specialized-python-that-flies"},{"category":"Episode","description":"You know that feeling when one of your developer friends or colleague tells you about some amazing tool, library, or shell environment that you never heard of that you just have to run out and try right away? This episode is jam-packed full of those moments. We welcome back Jay Miller to discuss tools and tips for developer productivity. The title says 10 tips, but we actually veer into many more along the way. I think you'll really enjoy this useful and light-hearted episode.","id":345,"title":"10 Tips and Tools for Developer Productivity","url":"/episodes/show/345/10-tips-and-tools-for-developer-productivity"},{"category":"Episode","description":"SQLAlchemy is the most widely used ORM (Object Relational Mapper) for Python developers. It's been around since February 2006. But we might be in for the most significant release since the first one: SQLAlchemy 2.0. This version adds async and await support, new context-manager friendly features everywhere, and even a unified query syntax. Mike Bayer is back to give us a glimpse of what's coming and why Python's database story is getting stronger.","id":344,"title":"SQLAlchemy 2.0","url":"/episodes/show/344/sqlalchemy-2.0"},{"category":"Episode","description":"Here's a question: What's the most common way to explore data? Would you say pandas and matplotlib? Maybe you went more general and said Jupyter notebooks. How about Excel, or Google Sheets, or Numbers, or some other spreadsheet app? Yeah, my bet is on Excel. And while it has many drawbacks, it makes exploring tabular data very accessible to many people, most of whom aren't even developers or data scientists.\r<br/>\n\r<br/>\nOn this episode, we're talking about a tool called Mito. This is an add-in for Jupyter notebooks that injects an Excel-like interface into the notebook. You pass it data via a pandas dataframe (or some other source) and then you can explore it as if you're using Excel. The cool thing is though, just below that, it's writing the pandas code you'd need to do to actually accomplish that outcome in code.","id":343,"title":"Do Excel things, get notebook Python code with Mito","url":"/episodes/show/343/do-excel-things-get-notebook-python-code-with-mito"},{"category":"Episode","description":"At PyCon 2017, Jake Vanderplas gave a great keynote where he said, \"Python is a mosaic.\" He described how Python is stronger and growing because it's being adopted and used by people with diverse technical backgrounds. In this episode, we're adding to that mosaic by diving into how Python is being used in the architecture, engineering, and construction industry. Our guest, Gui Talarico, has worked as an architect who help automate that world by bringing Python to solve problems others were just doing by point-and-click tooling. I think you'll enjoy this look into that world. We also touch on his project pyairtable near the end as well.","id":342,"title":"Python in Architecture (as in actual buildings)","url":"/episodes/show/342/python-in-architecture-as-in-actual-buildings"},{"category":"Episode","description":"Do you do anything with Jupyter notebooks? If you do, there is a very good chance you're working with the pandas library. This is one of THE primary tools of anyone doing computational work or data exploration with Python. Yet, this library is massive and knowing the idiomatic way to use it can be hard to discover.","id":341,"title":"25 Pandas Functions You Didn\u2019t Know Existed","url":"/episodes/show/341/25-pandas-functions-you-didn-t-know-existed"},{"category":"Episode","description":"Is Python slow? We touched on that question with Guido and Mark last episode. This time we welcome back friend of the show, Anthony Shaw. Here's there to share the massive amount of work he's been doing to answer that question and speed things up where they answer is yes. He's just released version 1.0 of the Pyjion project.","id":340,"title":"Time to JIT your Python with Pyjion?","url":"/episodes/show/340/time-to-jit-your-python-with-pyjion"},{"category":"Episode","description":"There has a been a bunch of renewed interested in making Python faster. While for some of us, Python is already plenty fast. For others, such as those in data science, scientific computing, and even the large tech companies, making Python even a little faster would be a big deal.\r<br/>\n\r<br/>\nThis episode is the first of several that dive into some of the active efforts to increase the speed of Python while maintaining compatibility with existing code and packages.","id":339,"title":"Making Python Faster with Guido and Mark","url":"/episodes/show/339/making-python-faster-with-guido-and-mark"},{"category":"Episode","description":"How do you build and maintain a complex suite of Python packages? Of course, you want to put them on PyPI. The best format there is as a wheel. This means that when developers use your code, it comes straight down and requires no local tooling to install and use.","id":338,"title":"Using cibuildwheel to manage the scikit-HEP packages","url":"/episodes/show/338/using-cibuildwheel-to-manage-the-scikit-hep-packages"},{"category":"Episode","description":"Have you heard of Kedro? It's a Python framework for creating reproducible, maintainable and modular data science code. \r<br/>\n\r<br/>\nWe all know that reproducibility and related topics are important ones in the data science space. The freedom to pop open a notebook and just start exploring is much of the magic.\r<br/>\n\r<br/>\nYet, that free-form style can lead to difficulties in versioning, reproducibility, collaboration, and moving to production. Solving these problems is the goal of Kedro. And we have 3 great guests from the Kedro community here to give us the rundown: Yetunde Dada, Waylon Walker, and Ivan Danov.","id":337,"title":"Kedro for Maintainable Data Science","url":"/episodes/show/337/kedro-for-maintainable-data-science"},{"category":"Episode","description":"Gene therapy holds the promise to permanently cure diseases that have been considered life-long challenges. But the complexity of rewriting DNA is truly huge and lives in its own special kind of big-data world.\r<br/>\n\r<br/>\nOn this episode, you'll meet David Born, a computational biologist who uses Python to help automate genetics research and helps move that work to production.","id":335,"title":"Gene Editing with Python","url":"/episodes/show/335/gene-editing-with-python"},{"category":"Episode","description":"We know that Python and data science are growing in lock-step together. But exactly what's happening in the data science space in 2021? Stan Seibert from Anaconda is here to give us a report on what they found with their latest \"State of Data Science in 2021\" survey.","id":333,"title":"State of Data Science in 2021","url":"/episodes/show/333/state-of-data-science-in-2021"},{"category":"Episode","description":"Does it seem like your Python projects are getting bigger and bigger? Are you feeling the pain as your codebase expands and gets tougher to debug and maintain? Patrick Viafore is here to help us write more maintainable, longer-lived, and more enjoyable Python code.","id":332,"title":"Robust Python","url":"/episodes/show/332/robust-python"},{"category":"Episode","description":"Python is a technology and community built upon the goodwill and volunteer time of 1,000s of contributors from the core devs inside CPython to the authors of 100,000s of external packages on PyPI.","id":331,"title":"Meet the Python Developer in Residence: Lukasz Langa","url":"/episodes/show/331/meet-the-python-developer-in-residence-lukasz-langa"},{"category":"Episode","description":"If you are working with data pipelines, you definitely need to give Apache Airflow a look. This pure-Python workflow framework is one of the most popular and capable out there. You create your workflows by writing Python code using clever language operators and then you can monitor them and even debug them visually once they get started.\r<br/>\n\r<br/>\nStop writing manual code or cron-job based code to create data pipelines check out Airflow. We're joined by three excellent guests from the Airflow community: Jarek Potiuk, Kaxil Naik, and Leah Cole.","id":330,"title":"Apache Airflow Open-Source Workflow with Python","url":"/episodes/show/330/apache-airflow-open-source-workflow-with-python"},{"category":"Episode","description":"We're back with another GeekOut episode. Richard Campbell, a developer and podcaster who also dives deep into science and tech topics, is back for our third GeekOut episode. This time around, we're diving into renewable energy, energy storage, and just what do we do to keep the lights on with our frying our beloved Earth?","id":329,"title":"Geekout: Renewable Energy","url":"/episodes/show/329/geekout-renewable-energy"},{"category":"Episode","description":"ORMs are one of the main tools to put first-class data access in the hands on non-SQL-loving developers and even for those who do love SQL, making them way more productive. When you hear about ORMs in Python, we often hear about either SQLAlchemy and Django ORM. And we should, they are great. But there are newer ORMs that take better advantage of modern Python.","id":328,"title":"Piccolo: A fast, async ORM for Python (updated)","url":"/episodes/show/328/piccolo-a-fast-async-orm-for-python-updated"},{"category":"Episode","description":"Did you know I'm a fan of GUIs. You know, they are kind of like web pages, but they run on your computer, they have their own windows, and you can even use them offline! On this episode, we'll dive into wxPython with Mike Driscoll. He's back on the podcast to share his hard-won experience on building and distributing Python Window-based applications.","id":326,"title":"Building Desktop Apps with wxPython","url":"/episodes/show/326/building-desktop-apps-with-wxpython"},{"category":"Episode","description":"Python is used to solve a large and varied set of problems. One of its core pillars is web APIs. Another one is ML and data science. Those two important pieces were brought together in an unexpected yet magically-futuristic way by Rod Senra's team working with the Gatorade Sports Science Institute.","id":324,"title":"Gatorade-powered Python APIs","url":"/episodes/show/324/gatorade-powered-python-apis"},{"category":"Episode","description":"You've got your Python API or app running in a Docker container. Great! Are you ready to ship it to that hosted cluster service and head off to production? Not so fast. Have you considered how you'll manage evolving dependencies and addressing security updates over time? Not just for the base OS but for installed packages? How about your pip installed dependencies? Are you running as root? If you don't know, the answer is yes.","id":323,"title":"Best practices for Docker in production","url":"/episodes/show/323/best-practices-for-docker-in-production"},{"category":"Episode","description":"Are you interested in getting ahead in data science? On this episode, you'll meet Sanyam Bhutani who studied computer science but found his education didn't prepare him for getting a data science-focused job. That's where he started his own path of self-education and advancement. Now he's working at an AI startup and ranking high on Kaggle.","id":322,"title":"A path into data science","url":"/episodes/show/322/a-path-into-data-science"},{"category":"Episode","description":"Have you wanted to add more interactivity and liveness to your web application? If you built it using Flask, Django, or some other Python web framework, that thought probably didn't fill you with joy. Because it might mean that you need to change a bunch of code and rewrite a significant bit of your app using a full-on front-end framework like Vue.js or React.js.","id":321,"title":"HTMX - Clean, Dynamic HTML Pages","url":"/episodes/show/321/htmx-clean-dynamic-html-pages"},{"category":"Episode","description":"When you think of government software development and projects, do you fast apps and modern tech stacks jump to mind? Probably not. So you'll be delighted to hear from our guest, Laura Beaufort. She's the Tech Lead at the US Federal Election Commission.","id":317,"title":"Python at the US Federal Election Commission","url":"/episodes/show/317/python-at-the-us-federal-election-commission"},{"category":"Episode","description":"Flask is one of the most popular Python web frameworks. And they have huge news to share with us. Flask 2.0 just released after a ton of work. And it's as big of a deal as the version number suggests. Async changes are coming, Python 3.5 and below (including Python 2) support has been dropped and much much more. Join me as I discuss Flask 2.0 with David Lord and Philip Jones.","id":316,"title":"Flask 2.0","url":"/episodes/show/316/flask-2.0"},{"category":"Episode","description":"Have you heard that FastAPI is awesome? We have Michael Herman back on the show to help us make it even more awesome with his FastAPI awesome list. He's categorized many extensions and other libraries working with FastAPI to help you be even more efficient with this framework.","id":315,"title":"Awesome FastAPI extensions and add ons","url":"/episodes/show/315/awesome-fastapi-extensions-and-add-ons"},{"category":"Episode","description":"Here's an episode that I did not see coming! Sebastian Witowski and I put together a live stream ask me anything (AMA) as a follow up to some of the ideas around his recent course, Modern Python Projects. We dove deep in comparisons of Poetry vs. pip vs pyenv and answered questions like do you need to use Docker? When should you? and so on.","id":314,"title":"Ask us about modern Python projects and tools","url":"/episodes/show/314/ask-us-about-modern-python-projects-and-tools"},{"category":"Episode","description":"How do you build Python applications that can handling literally billions of requests. I has certainly been done to great success with places like YouTube (handling 1M requests / sec) and Instagram as well as internal pricing APIs at places like PayPal and other banks.","id":312,"title":"Python Apps that Scale to Billions of Users","url":"/episodes/show/312/python-apps-that-scale-to-billions-of-users"},{"category":"Episode","description":"These days Git is synonymous with source control itself. Rare are the current debates of whether to use git vs SVN vs some fossil like SourceSafe vs you name it. But do you know how Git works? What about it's internals? I'm sure you've seen a .git folder in your project's root. But to most folks, it's a black box.","id":311,"title":"Get inside the .git folder","url":"/episodes/show/311/get-inside-the-.git-folder"},{"category":"Episode","description":"The tables have turned and this time I'm the guest and you all are the hosts. I get a ton of questions over email and twitter asking me about my thoughts on various trends, tools, and behind the scenes questions around Talk Python. So I've enlisted two listeners who are up for hosting a conversation and taking questions from you all.","id":310,"title":"AMA (Ask Me Anything) with Michael","url":"/episodes/show/310/ama-ask-me-anything-with-michael"},{"category":"Episode","description":"Machine learning and data science are full of best practices and important workflows. Can we extrapolate these to our broader lives? Eugene Yan and I give it a shot on this slightly more philosophical episode of Talk Python To Me.","id":309,"title":"What ML Can Teach Us About Life: 7 Lessons","url":"/episodes/show/309/what-ml-can-teach-us-about-life-7-lessons"},{"category":"Episode","description":"Docker is one of the core elements of developing Python applications in consistent ways as well as running them across different hardware universally. On this episode, you'll meet Peter McKee from Docker. He's here to catch us up on what's happening in the Docker universe for Python developers.","id":308,"title":"Docker for Python Developers (2021 Edition)","url":"/episodes/show/308/docker-for-python-developers-2021-edition"},{"category":"Episode","description":"People often ask me how they can find a Python community to be part of. Maybe discussion forum or slack channel. This week, we look at one of the most active communities in Python Discord. It's Python, on a discord server. But it's more than that too.","id":305,"title":"Python community at Python Discord","url":"/episodes/show/305/python-community-at-python-discord"},{"category":"Episode","description":"If you are involved in science or use computational tools in your work, you should be using code to solve your problem. On this episode, we have Dr. Becky Smethurst who's an astrophysicist at Oxford University. She uses Python to explore galaxies and black holes.","id":303,"title":"Python for Astronomy with Dr. Becky","url":"/episodes/show/303/python-for-astronomy-with-dr.-becky"},{"category":"Episode","description":"I'm sure you're familiar with data science. But what about data engineering? Are these the same or how are they related?","id":302,"title":"The Data Engineering Landscape in 2021","url":"/episodes/show/302/the-data-engineering-landscape-in-2021"},{"category":"Episode","description":"Have you been learning Django and now want to get your site online? Not sure the best way to host it or the trade offs between the various options? Maybe you want to make sure your Django site is secure. On this episode, I'm joined by two Django experts Will Vincent and Carlton Gibson to talk about deploying and running Django in production along with recent updates in Django 3.2 and beyond.","id":301,"title":"Deploying and running Django web apps in 2021","url":"/episodes/show/301/deploying-and-running-django-web-apps-in-2021"},{"category":"Episode","description":"You've heard that software developers and startups go hand-in-hand. But what about data scientists? Of course they! But how do you turn your data science skill set into a data science <em>business</em> skill set? What are some of the areas ripe for launching such a business into?","id":300,"title":"Building a data science startup (panel)","url":"/episodes/show/300/building-a-data-science-startup-panel"},{"category":"Episode","description":"In this episode, we'll be discussing two powerful tools for data reporting and exploration: Datasette and Dogsheep.\r<br/>\n\r<br/>\nDatasette helps people take data of any shape or size, analyze and explore it, and publish it as an interactive website and accompanying API.\r<br/>\n\r<br/>\nDogsheep is a collection of tools for personal analytics using SQLite and Datasette. Imagine a unified search engine for everything personal in your life such as twitter, photos, google docs, todoist, goodreads, and more, all in once place and outside of cloud companies.\r<br/>\n\r<br/>\nOn this episode we talk with Simon Willison who created both of these projects. He's also one of the co-creators of Django and we'll discuss some early Django history!","id":299,"title":"Personal search engine with datasette and dogsheep","url":"/episodes/show/299/personal-search-engine-with-datasette-and-dogsheep"},{"category":"Episode","description":"Are you building or running an internal machine learning team? How about looking for a new ML position? On this episode, I talk with Chip Huyen from Snorkel AI about building ML teams, finding ML positions, and teach ML at Stanford.","id":298,"title":"Building ML teams and finding ML jobs","url":"/episodes/show/298/building-ml-teams-and-finding-ml-jobs"},{"category":"Episode","description":"2020 will be one for the history books, won't it? I've put together a great group to look back on 2020 - from the Python perspective.","id":297,"title":"Python year in review (2020 edition)","url":"/episodes/show/297/python-year-in-review-2020-edition"},{"category":"Episode","description":"Quick: Name the 3 most advanced engineering organizations you can think of? Maybe an aerospace company such as SpaceX or Boeing come to mind. Maybe you thought of CERN and the LHC. But in terms of bespoke engineering capabilities, you should certainly put the F1 racing teams on your list.","id":296,"title":"Python in F1 racing","url":"/episodes/show/296/python-in-f1-racing"},{"category":"Episode","description":"Geography is the study of places and the relationships between people and their environments. Often we think of maps, but maps are static. GIS gets interesting when you realize that we're studying and visualizing data flowing through these locations and communities.","id":295,"title":"GIS + Python","url":"/episodes/show/295/gis-python"},{"category":"Episode","description":"When we think about accounts and security, we often think about identity (logging in and proving who you are). But for many applications, especially internal apps at large organizations, that's just step one. The next step is what can you do and what can you not do.","id":294,"title":"oso authorizes Python","url":"/episodes/show/294/oso-authorizes-python"},{"category":"Episode","description":"As software developers, we live in a world of uncertainty and flux. Do you need to build a new web app? Well maybe using Django makes the most sense if you've been doing it for a long time. There is Flask, but it's more mix and match being a microframework. But you've also heard that async and await are game changers and FastAPI might be the right choice.","id":293,"title":"Learning how to learn as a developer","url":"/episodes/show/293/learning-how-to-learn-as-a-developer"},{"category":"Episode","description":"Are you a data scientist looking to branch out on your own and start something new? Maybe you're just looking for a way to work with those exciting libraries that aren't yet in play at the day job. Rather than putting everything on the line, quitting your job, and hoping things work out, maybe you should start with a side-hustle.","id":290,"title":"Side Hustles for Data Scientists","url":"/episodes/show/290/side-hustles-for-data-scientists"},{"category":"Episode","description":"When I saw the headline \"Machine learning algorithm confirms 50 new exoplanets in historic first\" I knew the Python angle of this story had to be told! And that's how this episode was born. Join David Armstrong and Jev Gamper as they tell us how they use Python and machine learning to discover not 1, but 50 new exoplanets in pre-existing Keplar satellite data.","id":289,"title":"Discovering exoplanets with Python","url":"/episodes/show/289/discovering-exoplanets-with-python"},{"category":"Episode","description":"We know our unit tests should be relatively independent from other parts of the system. For example, running a test shouldn't generally call a credit card possessing API and talk to a database when your goal is just to test the argument validation.","id":287,"title":"Testing without dependencies, mocking in Python","url":"/episodes/show/287/testing-without-dependencies-mocking-in-python"},{"category":"Episode","description":"NASA's Jet Propulsion Laboratory (JPL)'s primary function is the construction and operation of planetary robotic spacecraft, though it also conducts Earth-orbit and astronomy missions. It is also responsible for operating NASA's Deep Space Network.","id":286,"title":"Python and ML at NASA Jet Propulsion Laboratory (JPL)","url":"/episodes/show/286/python-and-ml-at-nasa-jet-propulsion-laboratory-jpl"},{"category":"Episode","description":"If you're into data science, you've probably heard about Dask. It's a package that feels like familiar APIs such as Numpy, Pandas, and Scikit-Learn. Yet it can scale that computation across CPU cores on your local machine all the way to distributed grid-based computing in large clusters.","id":285,"title":"Dask as a Platform Service with Coiled","url":"/episodes/show/285/dask-as-a-platform-service-with-coiled"},{"category":"Episode","description":"As Python 3 has eclipsed the old constrains of Python 2 and web frameworks that adopted them, we have seen a big jump in new frameworks appearing on the scene taking full advantage of things like type hints, async and await, and more.","id":284,"title":"Modern and fast APIs with FastAPI","url":"/episodes/show/284/modern-and-fast-apis-with-fastapi"},{"category":"Episode","description":"Git hook scripts are useful for identifying simple issues before committing your code. Hooks run on every commit to automatically point out issues in code such as trailing whitespace and debug statements. By pointing these issues out before code review, this allows a code reviewer to focus on the architecture of a change while not wasting time with trivial style nitpicks.","id":282,"title":"pre-commit framework","url":"/episodes/show/282/pre-commit-framework"},{"category":"Episode","description":"I love to bring you stories of Python being used in amazing places outside the traditional tech silos of pure web development and data science. \r<br/>\n\r<br/>\nOn this episode, you'll meet Robert \"Kane\" Replogle, who works on the simulation and test software at Richard Childress Racing. The NASCAR team that just finished #1 and 2 in at the Texas Motor Speedway.","id":281,"title":"Python in Car Racing","url":"/episodes/show/281/python-in-car-racing"},{"category":"Episode","description":"Python is quick and easy to learn. And yet, there is a massive gap between knowing the common aspects of the language (loops, variables, functions, and so on) and how to write a well-factored application using modern tools and libraries. That's where learning Python is a never-ending journey.","id":279,"title":"Modern Python Developer's Toolkit","url":"/episodes/show/279/modern-python-developers-toolkit"},{"category":"Episode","description":"We recently covered 10 tips that every Flask developer should know. But we left out a pretty big group in the Python web space: Django developers! And this one is for you. I invited Bob Belderbos, who's been running his SaaS business on Python and Django for several years now, to share his tips and tricks.","id":277,"title":"10 tips every Django developer should know","url":"/episodes/show/277/10-tips-every-django-developer-should-know"},{"category":"Episode","description":"We're back with another GeekOut episode. Richard Campbell, a developer and podcaster who also dives deep into science and tech topics, is back for our second GeekOut episode. Last time we geeked out about the real science and progress around a moon base. This time it's why is there life on Earth, where could it be or have been in the solar system, and beyond.","id":276,"title":"Geekout: Life in the solar system and beyond","url":"/episodes/show/276/geekout-life-in-the-solar-system-and-beyond"},{"category":"Episode","description":"Do you obsess about writing your code just the right way before you get started? Maybe you have some ugly code on your hands and you need to make it better. Either way, refactoring could be your ticket to happier days! On this episode, we'll talk through a powerful example of iteratively refactoring some code until we eventually turn our ugly duckling into a Pythonic beauty.","id":275,"title":"Beautiful Pythonic Refactorings","url":"/episodes/show/275/beautiful-pythonic-refactorings"},{"category":"Episode","description":"Python is one of the primary languages for IoT devices. With runtimes such as CircuitPython and MicroPython, they are ideal for the really small IoT chips. \r<br/>\n\r<br/>\nMaybe you've heard of the Circuit Playground Express, BBC micro:bit, or the fancy Adafruit CLUE.  They aren't too expensive (ranging from $25 to $50 each). But for large groups such as classrooms, this can be a lot of money. Moreover, getting your hands on these devices can sometimes be tricky as well.","id":272,"title":"No IoT things in hand? Simulate them with Device Simulator Express","url":"/episodes/show/272/no-iot-things-in-hand-simulate-them-with-device-simulator-express"},{"category":"Episode","description":"On this episode, we are going to weave a thread through three different areas of Python programming that at first seem unlikely to have much in common. Yet, the core will be the same throughout. I think this is a cool lesson to learn as you get deeper into programming and a great story to highlight it.","id":270,"title":"Python in supply chains: oil rigs, rockets, and lettuce","url":"/episodes/show/270/python-in-supply-chains-oil-rigs-rockets-and-lettuce"},{"category":"Episode","description":"The toolchain for modern data science can be intimidating. How do you choose between all the data visualization libraries out there? How about creating interactive web apps from those analyses? On this episode, we dive into a project that attempts to bring the whole story together: HoloViz.","id":269,"title":"HoloViz - a suite of tools for Python visualization","url":"/episodes/show/269/holoviz-a-suite-of-tools-for-python-visualization"},{"category":"Episode","description":"Are you using interactive notebooks for your data exploration or day-to-day programming? What environment do you use? Was it Jupyter and now you've made the move to JupyterLab? That's a great choice. But did you know there are more environments out there to choose from and compare? Have you heard of Callisto or Iodide? How about CoCalc or PolyNote? That's just the tip of the iceberg!","id":268,"title":"Analyzing dozens of notebook environments","url":"/episodes/show/268/analyzing-dozens-of-notebook-environments"},{"category":"Episode","description":"Do you write tests for your code? You probably should. And most of the time, pytest is the industry standard these days. But pytest can be much more than what you get from just installing it as a tool.","id":267,"title":"15 amazing pytest plugins","url":"/episodes/show/267/15-amazing-pytest-plugins"},{"category":"Episode","description":"Refactoring your code is a fundamental step on the path to professional and maintainable software. We rarely have the perfect picture of what we need to build when we start writing code and attempts to over plan and overdesign software often lead to analysis paralysis rather than ideal outcomes.","id":266,"title":"Refactoring your code, like magic with Sourcery","url":"/episodes/show/266/refactoring-your-code-like-magic-with-sourcery"},{"category":"Episode","description":"The debate about whether Python is fast or slow is never-ending. It depends on what you're optimizing for: Server CPU consumption? Developer time? Maintainability? There are many factors. But if we keep our eye on pure computational speed in the Python layer, then yes, Python is slow.","id":265,"title":"Why is Python slow?","url":"/episodes/show/265/why-is-python-slow"},{"category":"Episode","description":"Are you a web developer who uses Flask? It has become the most popular Python web framework. Even if you have used it for years, I bet we cover at least one thing that will surprise you and make your Flask code better.","id":264,"title":"10 tips every Flask developer should know","url":"/episodes/show/264/10-tips-every-flask-developer-should-know"},{"category":"Episode","description":"As developers and technologists, it's easy to think that powerful and unique ideas will percolate to the top. If we build something amazing, enthusiastic users will find and share our creations.","id":263,"title":"SEO for developers","url":"/episodes/show/263/seo-for-developers"},{"category":"Episode","description":"Has anyone told you that you should get into data science? Have you heard it's a great career? In fact, data scientist is the best job in America according to Glassdoor's 2018 rankings.","id":262,"title":"Build a career in data science","url":"/episodes/show/262/build-a-career-in-data-science"},{"category":"Episode","description":"Traditionally, when we have depended upon software to make a decision with real-world implications, that software was deterministic. It had some inputs, a few if statements, and we could point to the exact line of code where the decision was made. And the same inputs lead to the same decisions.","id":261,"title":"Monitoring and auditing machine learning","url":"/episodes/show/261/monitoring-and-auditing-machine-learning"},{"category":"Episode","description":"If you work on the data science or data visualization side of Python, you may have come to it from a scripting side of things. Writing just a little Python, using its magical libraries, with little structure or formalism to build a powerful analysis tool that runs in the terminal or maybe a jupyter notebook.\r<br/>\n\r<br/>\nWhat if you could take that same code, sprinkle in just a bit of a simple API, and turn it into a fast and dynamic single page application allowing your users to dive into the visualizations on the web?","id":260,"title":"From basic script to interactive data sci app with Streamlit","url":"/episodes/show/260/from-basic-script-to-interactive-data-sci-app-with-streamlit"},{"category":"Episode","description":"Did you come to Python from the academic side of the world? Maybe got into working with code for research or lab work and found you liked coding more than your first field of study. Whatever the reason, many people make the transition from the academic world over to tech and industry.","id":259,"title":"From Academia to Tech Industry and Python","url":"/episodes/show/259/from-academia-to-tech-industry-and-python"},{"category":"Episode","description":"With radio astronomy, we can look across many light-years of distance and see incredible details such as the chemical makeup of a given region. Kevin Vinsen and Rodrigo Tobar from ICRAR are using the world's fastest supercomputer along with some sweet Python to process the equivalent of 1,600 hours of standard-definition YouTube video per second.","id":257,"title":"Exploring the galaxy with the fastest supercomputer, Python, and radio astronomy","url":"/episodes/show/257/exploring-the-galaxy-with-the-fastest-supercomputer-python-and-radio-astronomy"},{"category":"Episode","description":"Modern cars have become mobile computer systems with many small computers running millions of lines of code. On this episode, we plug a little Python into those data streams.","id":255,"title":"Talking to cars with Python","url":"/episodes/show/255/talking-to-cars-with-python"},{"category":"Episode","description":"This episode is a unique one. On this episode, I've invited Richard Campbell and developer and podcaster who also dives deep into science and tech topics. We are going to dig into his geekout series and spend some time talking realistically about moonbases and space travel.","id":253,"title":"Moon base geekout","url":"/episodes/show/253/moon-base-geekout"},{"category":"Episode","description":"Did you come into Python from a computational science side of things? Were you just looking for something better than Excel or Matlab and got pulled in by all the Python has to offer?","id":252,"title":"What scientific computing can learn from CS","url":"/episodes/show/252/what-scientific-computing-can-learn-from-cs"},{"category":"Episode","description":"What does it take to build a Python library that will be used by a large number of developers? This happens all the in open source. Projects take off and become wildly successful.","id":251,"title":"Building and UX Testing Azure's Python SDK","url":"/episodes/show/251/building-and-ux-testing-azures-python-sdk"},{"category":"Episode","description":"As the popularity of Python grows, we see it popping up in all sorts of interesting places and projects. On this episode, you'll meet C.K. Sample and Nathan Papapietro from HyperGiant. They are using Python and AI to develop the EOS Bioreactor.","id":250,"title":"Capture over 400x C02 as trees with AI and Python","url":"/episodes/show/250/capture-over-400x-c02-as-trees-with-ai-and-python"},{"category":"Episode","description":"Are you learning or helping someone else learn Python, why not make a game out of it?  TwilioQuest is a game that doesn't treat you with kid-gloves while teaching you Python. Using your editor of choice, write code on your machine, and still play the game to solve Python challenges.","id":249,"title":"Capture the Staff of Pythonic Knowledge in TwilioQuest","url":"/episodes/show/249/capture-the-staff-of-pythonic-knowledge-in-twilioquest"},{"category":"Episode","description":"Do you run an open-source project? Does it seem like you never have enough time to support it? Have you considered starting one but are unsure you can commit to it? It's a real challenge.","id":247,"title":"Solo maintainer of open-source in academia","url":"/episodes/show/247/solo-maintainer-of-open-source-in-academia"},{"category":"Episode","description":"When you can call yourself a professional developer? Sure, getting paid to write code is probably part of the formula. But when is your skillset up to that level?","id":246,"title":"Practices of the Python Pro","url":"/episodes/show/246/practices-of-the-python-pro"},{"category":"Episode","description":"Python is growing incredibly quickly and has found its place in many facets of the developer and computational space. But one area that is still shaky and uncertain is packaging and shipping software to users.","id":245,"title":"Python packaging landscape in 2020","url":"/episodes/show/245/python-packaging-landscape-in-2020"},{"category":"Episode","description":"We've come to the end of 2019. Python 2 has just a handful of days before it goes unsupported. And I've met up with Dan Bader from RealPython.com to look back at the year of Python articles on his website. We dive into the details behind 10 of his most important articles from the past year.","id":244,"title":"Top 10 Real Python Articles of 2019","url":"/episodes/show/244/top-10-real-python-articles-of-2019"},{"category":"Episode","description":"We all love the Python language. But it's the 200,000+ packages that actually make Python incredibly useful and productive. But installing these libraries and sometimes even Python itself can vary across platforms. In particular, Windows has had a hard time.","id":243,"title":"Python on Windows is OK, actually","url":"/episodes/show/243/python-on-windows-is-ok-actually"},{"category":"Episode","description":"Open source has permeated much of the software industry. What about health care? This highly regulated and important industry might seem to be the domain of huge specialized software companies.","id":241,"title":"Opal: Full stack health care apps","url":"/episodes/show/241/opal-full-stack-health-care-apps"},{"category":"Episode","description":"You might use Python every day. But how much do you know about what happens under the covers, down at the C level? When you type something like variable = [], what are the byte-codes that accomplish this? How about the class backing the list itself?","id":240,"title":"A guided tour of the CPython source code","url":"/episodes/show/240/a-guided-tour-of-the-cpython-source-code"},{"category":"Episode","description":"In this episode, we'll dive into one of the foundations of modern data science, Bayesian algorithms, and thinking. Join me along with guest Max Sklar as we look at the algorithmic side of data science.","id":239,"title":"Bayesian foundations","url":"/episodes/show/239/bayesian-foundations"},{"category":"Episode","description":"Let's start with a philosophical question: Are you human? Are you sure? We could begin to answer the question physically. Are you made up of cells that would typically be considered as belonging to the human body?","id":237,"title":"A gut feeling about Python","url":"/episodes/show/237/a-gut-feeling-about-python"},{"category":"Episode","description":"Do you do data science? Imagine you work with over 200 data scientists. Many of whom have diverse backgrounds or have come from non-CS backgrounds. Some of them want to use Python. Others are keen to work with R.","id":236,"title":"Scaling data science across Python and R","url":"/episodes/show/236/scaling-data-science-across-python-and-r"},{"category":"Episode","description":"When you think about the types of jobs you get as a Python developer,  you probably weight the differences between data science and web development.","id":232,"title":"Become a robot developer with Python","url":"/episodes/show/232/become-a-robot-developer-with-python"},{"category":"Episode","description":"On this episode, we dive into Python for lawyers and a special tool for conducting legal interviews. Imagine you have to collect details for 20,000 participants in a class-action lawsuit. docassemble, a sweet Python web app, can do it for you with easy.","id":229,"title":"Building advanced Pythonic interviews with docassemble","url":"/episodes/show/229/building-advanced-pythonic-interviews-with-docassemble"},{"category":"Episode","description":"What's it's like building a startup with Python and going through a tech accelerator? You're about to find out. On this episode, you'll meet Elissa Shevinsky from Faster Than Light. They are building a static code analysis as a service business for Python and other code bases. We touch on a bunch of fun topics including static code analysis, entrepreneurship, and tech accelerators.","id":228,"title":"Hunting bugs and tech startups with Python","url":"/episodes/show/228/hunting-bugs-and-tech-startups-with-python"},{"category":"Episode","description":"Did you come to software development outside of traditional computer science? This is common, and even how I got into programming myself. I think it's especially true for data science and scientific computing. That's why I'm thrilled to bring you an episode with Daniel Chen about maintainable data science tips and techniques.","id":227,"title":"Maintainable data science: Tips for non-developers","url":"/episodes/show/227/maintainable-data-science-tips-for-non-developers"},{"category":"Episode","description":"If you're a data scientist, how do you deliver your analysis and your models to the people who need them? A really good option is to serve them over Flask as an API. But there are some special considerations you might keep in mind. How should you structure this API? What type of project structures work best for data science and Flask web apps? That and much more on this episode of Talk Python To Me with guest AJ Pryor.","id":226,"title":"Building Flask APIs for data scientists","url":"/episodes/show/226/building-flask-apis-for-data-scientists"},{"category":"Episode","description":"Have you heard that Python is not good for writing concurrent asynchronous code? This is generally a misconception. But there is one class of parallel computing that Python is not good at: CPU bound work running the Python layer.","id":225,"title":"Can subinterpreters free us from Python's GIL?","url":"/episodes/show/225/can-subinterpreters-free-us-from-pythons-gil"},{"category":"Episode","description":"Back in May of 2018, Bob Belderbos, Julian Sequeira, and I started on what would be a 9-month project. We wanted to create a dedicated, 100 days of code course specifically for Python web developers. Much of what we created for that course, we had prior experience with. But much of it was also new to us.","id":224,"title":"12 lessons from 100 days of web","url":"/episodes/show/224/12-lessons-from-100-days-of-web"},{"category":"Episode","description":"Have you tried to teach programming to beginners? Python is becoming a top choice for the language, but you still have to have them work with the language and understand core concepts like loops, variables, classes, and more. It turns out, video game programming, when kept simple, can be great for this. Need to repeat items in a scene? There's a natural situation to introduce loops. Move an item around? Maybe make a function to redraw it at a location.","id":223,"title":"Fun and Easy 2D Games with Python","url":"/episodes/show/223/fun-and-easy-2d-games-with-python"},{"category":"Episode","description":"How do we get kids excited about programming? Make programming tangible with embedded devices. Did you know that after kids learned to code with the BBC micro:bit, 90% of kids \"thought coding was for everyone\" and 86% said it made CS topics more interesting?","id":221,"title":"Empowering developers by embedding Python","url":"/episodes/show/221/empowering-developers-by-embedding-python"},{"category":"Episode","description":"In the US, we have a very interesting civil option that is quite new: The United States Digital Service.  This service was created by President Obama to fix broken government software systems such as the rocky start of the healthcare system.","id":219,"title":"Take a Python tour of duty at the United States Digital Service","url":"/episodes/show/219/take-a-python-tour-of-duty-at-the-united-states-digital-service"},{"category":"Episode","description":"Do you have stateless code that needs to run in the cloud? The clear answer years ago was to create and HTTP, or even, gasp! A SOAP service before then. While HTTP services are still very important, some of this code can move entirely away from the framework that runs it with serverless programming and hosted functions.","id":218,"title":"Serverless Python functions in Azure","url":"/episodes/show/218/serverless-python-functions-in-azure"},{"category":"Episode","description":"On this episode, I meet up with Rong Lu and Katherine Kampf from Microsoft while I was at BUILD this year. We cover a bunch of topics around data science and talk about two opposing styles of data science development and related tooling: Notebooks vs Python code files and editors.","id":217,"title":"Notebooks vs data science-enabled scripts","url":"/episodes/show/217/notebooks-vs-data-science-enabled-scripts"},{"category":"Episode","description":"One of the questions I often ask at the end of the show is \"When you write some Python code, what editor do you use?\" Increasingly the most common answer is Visual Studio Code. Despite it's Windows only namesake, Visual Studio Code is cross-platform and has been gaining a lot of traction.","id":216,"title":"Digging into Visual Studio Code","url":"/episodes/show/216/digging-into-visual-studio-code"},{"category":"Episode","description":"Have you ever wondered about the software stack powering Talk Python, the training website, mobile apps, video and audio delivery, and more? While at first glance it might seem pretty simple, there's quite a bit going on. We have our own custom search engines. We deliver 15-20 TB of data per month. Our course video streams from 8 locations throughout the world. Our database server is sending about 12 MBit of traffic / sec with no media in the mix. And it's all powered with Python.","id":215,"title":"The software powering Talk Python courses and podcast","url":"/episodes/show/215/the-software-powering-talk-python-courses-and-podcast"},{"category":"Episode","description":"Python 3.8 is coming soon. It's scheduled for release at the end of October 2019 and you can already download test versions today. Given that Python ships on an 18-month cycle, it's time to talk about what's coming for us Python developers in the fall.","id":214,"title":"Dive into CPython 3.8 and beyond","url":"/episodes/show/214/dive-into-cpython-3.8-and-beyond"},{"category":"Episode","description":"On the last episode, we explored Pyodide. A project whose goal is to bring the CPython scientific stack to the browser via WebAssembly.","id":213,"title":"WebAssembly and CPython","url":"/episodes/show/213/webassembly-and-cpython"},{"category":"Episode","description":"How do you stay up on your Python skills. Many of us are self-starters and good at learning on our own or online with the video courses like the ones we have over at Talk Python. But sometimes, having everyone on your team go from zero to ready to work on a project is the best path. And that usually means in-person training.","id":210,"title":"Making the most out of in-person training","url":"/episodes/show/210/making-the-most-out-of-in-person-training"},{"category":"Episode","description":"We all got a bit of a shock to the system when Guido van Rossum decided to step down as the leader and top decider of the Python language and CPython runtime. This happened due to many factors but was precipitated by the so-called walrus operator (PEP 572).","id":209,"title":"Inside Python's new governance model","url":"/episodes/show/209/inside-pythons-new-governance-model"},{"category":"Episode","description":"Let's talk about running Django in production. On this episode, you'll meet Michael Herman who used to work on realpython.com and today is running testdriven.io. We also cover some of the tradeoffs of a set of microservices and a monolith and a round trip journey between them.","id":206,"title":"Running Django in Production","url":"/episodes/show/206/running-django-in-production"},{"category":"Episode","description":"Remember back in math class when you would take a test? It wasn't enough to just write down the answer. What's the limit of this infinite summation? pi/2 Yes, but how did you get that number.","id":204,"title":"StaticFrame, like Pandas but safer","url":"/episodes/show/204/staticframe-like-pandas-but-safer"},{"category":"Episode","description":"What's it like to be a beginner in software development? How about learning Python for the first time? This episode is a special panel episode and is the first of a two-part series we are doing on the podcast called Beginners and Experts.","id":203,"title":"Beginners and Experts in Software Development","url":"/episodes/show/203/beginners-and-experts-in-software-development"},{"category":"Episode","description":"One core question around open source is how do you fund it? Well, there is always that PayPal donate button. But that's been a tremendous failure for many projects. Often the go-to answer is consulting.","id":202,"title":"Building a software business","url":"/episodes/show/202/building-a-software-business"},{"category":"Episode","description":"The Nobel prize in economics recently went to Paul Romer, a convert from proprietary software like Matlab over to Python and the SciPy stack. Paul said, \u201cThe more I learn about proprietary software, the more I worry that objective truth might perish from the earth.\u201d","id":201,"title":"Choosing JupyterHub and Python over MATLAB","url":"/episodes/show/201/choosing-jupyterhub-and-python-over-matlab"},{"category":"Episode","description":"Do your applications call a lot of APIs? Maybe you have a bunch of microservices driving your app. You probably don't have the crazy combinatorial explosion that Zapier does for connecting APIs! They have millions of users automating things with 1,000s of APIs. It's pretty crazy. And they are doing it all with Python. Join me and Bryan Helmig, the CTO and co-founder of Zapier as we discuss how they pull this off with Python.","id":199,"title":"Automate all the things with Python at Zapier","url":"/episodes/show/199/automate-all-the-things-with-python-at-zapier"},{"category":"Episode","description":"It's time to catch up with the Anaconda crew and see what's new in the Anaconda distribution. This edition of Python was created to solve some of the stickier problems of deployment, especially in the data science space. Their usage gives them deep insight into how Python is being used in the enterprise space as well. Which turns out to be a very interesting part of the conversation.","id":198,"title":"Catching up with the Anaconda distribution","url":"/episodes/show/198/catching-up-with-the-anaconda-distribution"},{"category":"Episode","description":"If you are doing any sort of data exploration, you've likely heard about Jupyter notebooks. In fact, there are quite a few options for running and hosting your Jupyter notebooks. You may have heard me rave about PyCharm as an editor too. Well, on this episode, you'll meet Adam Hood from the Datalore team at JetBrains. That's a new project that tries to bring some of the power of PyCharm to notebooks and more.","id":196,"title":"Datalore: Hosted smart notebooks","url":"/episodes/show/196/datalore-hosted-smart-notebooks"},{"category":"Episode","description":"When you think of learning Python, what type of developer or technologist comes to mind? Is it someone looking to get their first job or maybe moving from .NET to Python and looking for a shift in their careers?","id":195,"title":"Teaching Python at Apple","url":"/episodes/show/195/teaching-python-at-apple"},{"category":"Episode","description":"How do you learn programming when you're working in a vacuum? Sure there are resources on the internet, but sometimes just bouncing ideas of others in person makes a huge difference. Join me along with Rusti Gregory as we discuss how he is learning and teaching Python in a small town in Vermont.","id":194,"title":"Learning (and teaching) Python in a vacuum","url":"/episodes/show/194/learning-and-teaching-python-in-a-vacuum"},{"category":"Episode","description":"It's been a fantastic year for Python. Literally, every year is better than the last with so much growth and excitement in the Python space. That's why I've asked two of my knowledgeable Python friends, Dan Bader and Brian Okken, to help pick the top 10 stories from the Python community for 2018.","id":192,"title":"Python Year in Review 2018 Edition","url":"/episodes/show/192/python-year-in-review-2018-edition"},{"category":"Episode","description":"When you think about Microsoft, do you think about Python? Maybe not, but you probably should. They have been doing an incredible amount of work to improve Python for folks on Windows as well as the broader community. You can think of the wild growth of Visual Studio code. But did you know that 5 core developers work there and the majority of Python development happens on Windows?","id":191,"title":"Python's journey at Microsoft","url":"/episodes/show/191/pythons-journey-at-microsoft"},{"category":"Episode","description":"You'll find this episode to be part discussion on how to teach and learn Django as well as why learning web development can be hard and part meta where Will Vincent and I discuss the business of creating content and teaching around Python.","id":190,"title":"Teaching Django","url":"/episodes/show/190/teaching-django"},{"category":"Episode","description":"Have you ever wondered what a developer advocate (sometimes called a dev evangelist) does? You know these folks. They are often seen at conferences working at some high-end tech company's booth or traveling from conference to conference speaking on their specialty.","id":189,"title":"War Stories of the Developer Evangelists","url":"/episodes/show/189/war-stories-of-the-developer-evangelists"},{"category":"Episode","description":"What do most web servers do most of the time? They wait. They wait on external systems while processing a request.","id":188,"title":"Async for the Pythonic web with Sanic","url":"/episodes/show/188/async-for-the-pythonic-web-with-sanic"},{"category":"Episode","description":"The key to making anything a habit, including learning to program, is to make it fun. That's exactly what Anna-Lena Popkes did with her 100 days of code challenge. She created a magical universe where Python-derived creatures and castles live.","id":186,"title":"100 Days of Python in a Magical Universe","url":"/episodes/show/186/100-days-of-python-in-a-magical-universe"},{"category":"Episode","description":"Do you or your team maintain a large Python 2 code base? Would you like to move to Python 3 but there's just too much in place keeping you on legacy Python? Then you will definitely enjoy this story from Jason Fried. He created a grassroots campaign to move Facebook's massive Python 2 codebase to Python 3 and he made Python 3 part of the culture. There are lessons here for every listener.","id":185,"title":"Creating a Python 3 Culture at Facebook","url":"/episodes/show/185/creating-a-python-3-culture-at-facebook"},{"category":"Episode","description":"How can we make learning Python and teaching Python more real for students, especially younger students? The BBC in the UK had a great idea. Make it more physically real with actual devices. That's where Nicholas Tollervey got involved. He helped bring the BBC Micro:bit and Python to millions of kids in the UK.","id":184,"title":"Teaching Python with BBC micro:bit","url":"/episodes/show/184/teaching-python-with-bbc-micro-bit"},{"category":"Episode","description":"Python is taking over much of the development world as it quickly is becoming one of the, or simply the most widely used programming languages. But that does not mean that Python is without its weaknesses. In my mind, there are three such weaknesses: #1 GUIs applications, #2 Native, general purpose mobile apps (iOS and Android), #3 deployment as a single binary or set of binary and resource files.","id":183,"title":"Qt for Python","url":"/episodes/show/183/qt-for-python"},{"category":"Episode","description":"Listeners often tell me one of the really valuable aspects of this podcast is the packages and libraries that they learn about and start using in their projects from guests and myself. On this episode, I've invited Brian Okken (my co-host over on Python Bytes) to take this to 11. We are going to cover the top 30 Python packages from the past year (metric to be determined later in the show).","id":181,"title":"30 amazing Python projects","url":"/episodes/show/181/30-amazing-python-projects"},{"category":"Episode","description":"The Python core developers recently released Python 3.7 and are now busy planning what's coming in 3.8. That makes right now a great time to dig into what was included in Python 3.7 and what's on deck for the next great release of CPython. This week we have Anthony Shaw back on the podcast to tell us all about it.","id":180,"title":"What's new in Python 3.7 and beyond","url":"/episodes/show/180/whats-new-in-python-3.7-and-beyond"},{"category":"Episode","description":"The Python Language Summit is a yearly gathering of around 40 or 50 developers from CPython, other Python implementations, and related projects. It is held on the first day of PyCon. Many of the decisions driving Python forward are made at this summit. On this episode you'll meet Mariatta Wijaya, \u0141ukasz Langa and Brett Cannon, three well-known core devs to walk us through the major topics of this year's summit.","id":179,"title":"Python Language Summit 2018","url":"/episodes/show/179/python-language-summit-2018"},{"category":"Episode","description":"You know you should be testing your code right? How do you know whether it's *well* tested? Are you testing the right things? If you're not using code coverage, chances are is you're guessing.","id":178,"title":"Coverage.py","url":"/episodes/show/178/coverage.py"},{"category":"Episode","description":"Flask is now 8 years old and until recently had gone along pretty steady state. It had been hanging around at version 0.11 and 0.12 for some time. After a year-long effort, the web framework has now been updated to Flask 1.0.","id":177,"title":"Flask goes 1.0","url":"/episodes/show/177/flask-goes-1.0"},{"category":"Episode","description":"The discipline of network engineering is quickly moving towards a world where it's as much programming and automation as it is packets and ports. Join me and Hank Preston to discuss what parts of Python are important for network engineers to learn.","id":175,"title":"Teaching Python to network engineers","url":"/episodes/show/175/teaching-python-to-network-engineers"},{"category":"Episode","description":"Quick, name some ways to make your Python code faster. Did you think PyPy, the JIT-compiled version of Python? Maybe some async and await parallelism? How about Cython where you write in Python-esc language that compiles to machine instructions?","id":172,"title":"Nuitka: A full Python compiler","url":"/episodes/show/172/nuitka-a-full-python-compiler"},{"category":"Episode","description":"Jupyter notebooks have transformed the way many developers and data scientists do their jobs. They offer a platform to not just explore but to explain data and computation.","id":171,"title":"1M Jupyter notebooks analyzed","url":"/episodes/show/171/1m-jupyter-notebooks-analyzed"},{"category":"Episode","description":"Do you write Python software that uses the network, opens files, or accepts user input? Of course you do! That's what almost all software does. But these actions can let bad actors exploit mistakes and oversights we've made to compromise our systems.","id":168,"title":"10 Python security holes and how to plug them","url":"/episodes/show/168/10-python-security-holes-and-how-to-plug-them"},{"category":"Episode","description":"Ever since Python 3.5 was released, we've had a really powerful way to write I/O bound async code using the async and await keywords.","id":167,"title":"Simplifying Python's Async with Trio","url":"/episodes/show/167/simplifying-pythons-async-with-trio"},{"category":"Episode","description":"We have evolved from, \"It builds, ship it!\" to continuous integration where every check-in is automatically verified by something like Travis CI. Taking that further, some people are using continuous delivery. This means, once a check-in is validated by the CI system, it's deployed -- automatically.","id":166,"title":"Continuous delivery with Python","url":"/episodes/show/166/continuous-delivery-with-python"},{"category":"Episode","description":"The blockchain and cryptocurrencies are some of the most disruptive technologies of the decade. On this episode, you'll meet Stuart Farmer who is building a suite of developer tools that speed up the process of creating new and custom blockchains and apps.","id":165,"title":"Python and the blockchain","url":"/episodes/show/165/python-and-the-blockchain"},{"category":"Episode","description":"The brain is truly one of the final frontiers of human exploration. Understanding how brains work has vast consequences for human health and computation. Imagine how computers might change if we actually understood how thinking and even consciousness worked.\r<br/>\n\r<br/>\nOn this episode, you'll meet Justin Kiggins and Corinne Teeter who are research scientists using Python for their daily work at the Allen Institute for Brain Science. They are joined by Nicholas Cain who is a software developer supporting scientists there using Python as well.","id":164,"title":"Python in Brain Research at the Allen Institute","url":"/episodes/show/164/python-in-brain-research-at-the-allen-institute"},{"category":"Episode","description":"Learn how Python is being used in research to understand the inner workings of the Earth.","id":163,"title":"Python in Geoscience","url":"/episodes/show/163/python-in-geoscience"},{"category":"Episode","description":"You often hear about architecture in software. This could be things like microservices, 3-tier apps, or even the dreaded client-server mainframe app. But this episode, we're turning this on its head: It's software in architecture and real-world construction projects with Mark Mendez.","id":162,"title":"Python in Building and Architecture","url":"/episodes/show/162/python-in-building-and-architecture"},{"category":"Episode","description":"Django has reached a major milestone with its 2.0 release. This puts legacy Python (that is Python 2) fully in the rear-view mirror and brings some nice new features to the framework.","id":161,"title":"Django 2.0","url":"/episodes/show/161/django-2.0"},{"category":"Episode","description":"What is the fastest, most scalable web platform? Is it Pyramid running on top of MongoDB with a Redis cache? Maybe Flask and Postgres as a service? Some funky Go API framework?","id":160,"title":"Lektor: Beautiful websites out of flat files","url":"/episodes/show/160/lektor-beautiful-websites-out-of-flat-files"},{"category":"Episode","description":"Python is often described as a \"batteries included\" language and ecosystem. In fact, that's been taken so far that there is even a delightful Easter egg in the Python REPL. Just type \"import antigravity\" to see what I mean.","id":159,"title":"Inside the new PyPI launch","url":"/episodes/show/159/inside-the-new-pypi-launch"},{"category":"Episode","description":"You've surely heard of quantum computing and quantum computers. They are based on the (often) non-intuitive nature of very small particles described by quantum mechanics. So how do they work and what will they mean for us as a society and as developers?","id":158,"title":"Quantum Computing and Python","url":"/episodes/show/158/quantum-computing-and-python"},{"category":"Episode","description":"Learning about programming libraries and languages is useful and interesting. But sometimes knowing WHY certain decisions were made or the history leading up to some change or package being created gives you a deeper understanding.","id":156,"title":"Python History and Perspectives","url":"/episodes/show/156/python-history-and-perspectives"},{"category":"Episode","description":"Since 2008 there has been this tension in Python where the much of the effort to improve Python has been on Python 3 whereas many developers were left stuck on Python 2 primarily because important packages were not yet Python 3 capable.","id":155,"title":"Practical steps for moving to Python 3","url":"/episodes/show/155/practical-steps-for-moving-to-python-3"},{"category":"Episode","description":"Python is often used in big-data situations. One of the more personal sources of large data sets is our own genetic code. Of course, as Python grows stronger in data science, it's finding its place in biology and genetics.","id":154,"title":"Python in Biology and Genomics","url":"/episodes/show/154/python-in-biology-and-genomics"},{"category":"Episode","description":"If you have spent some time in the Python community, you have probably heard the term PEP which stands for Python Enhancement Proposal. In fact, the very first one was created in June 2000 which defines the PEP process.","id":153,"title":"How Python Evolves","url":"/episodes/show/153/how-python-evolves"},{"category":"Episode","description":"Have you heard about ASTs? Maybe that was in the context of compilers or parsers? They are an powerful data structure that we all use but often indirectly. They are just an, well,  abstract idea to most of us.","id":152,"title":"Understanding and using Python's AST","url":"/episodes/show/152/understanding-and-using-pythons-ast"},{"category":"Episode","description":"I hope you using Python 3 these days. One of its powerful new features is type annotations. This lets you build and maintain large-scale Python projects with much more ease and confidence.","id":151,"title":"Gradual Typing of Production Applications","url":"/episodes/show/151/gradual-typing-of-production-applications"},{"category":"Episode","description":"Does your code smell? Have a weird fragrance? It turns out code smells are a real thing and an amazing conceptualization of suboptimal design.  This week you'll meet Yenny Cheung who has some practical and real-world advice on using refactoring in Python to improve your code and wash away those code smells.","id":150,"title":"Technical Lessons Learned from Pythonic Refactoring","url":"/episodes/show/150/technical-lessons-learned-from-pythonic-refactoring"},{"category":"Episode","description":"Are you a fan of developer and technical books? Ever wonder what went into the writing of your favorite Python book? This week we peek inside the world of book authorship with a panel of renowned developer-focused authors.\r<br/>\n\r<br/>\nYou'll meet Katharine Jarmul, Bruce Eckel, Luciano Ramalho, Dan Bader, and Brian Okken.","id":148,"title":"Python Book Authors'  Panel Discussion","url":"/episodes/show/148/python-book-authors-panel-discussion"},{"category":"Episode","description":"There has been a bunch of new Python web frameworks coming out in the past few years. Generally, these have been focused solely on Python 3 and have tried to leverage Python's new async and await features.","id":147,"title":"Quart: Flask, but 3x faster","url":"/episodes/show/147/quart-flask-but-3x-faster"},{"category":"Episode","description":"Voice assistants and voice interfaces are quickly becoming the new, hot way to interact with computers. Two of the notable ones are amazon echo devices and google home devices.\r<br/>\n\r<br/>\nWouldn't it be great if we could program these with Python? Even better if we could use well-known APIs such as Flask.","id":146,"title":"Building Alexa Skills with Python and Flask","url":"/episodes/show/146/building-alexa-skills-with-python-and-flask"},{"category":"Episode","description":"It's been an amazing year for Python. We've seen its meteoric growth continue to become the most popular, major programming language. We've seen significant grants and funding come in for open source. And this just might be the year that the Python 2 or Python 3 question was finally settled.","id":145,"title":"2017 Python Year in Review","url":"/episodes/show/145/2017-python-year-in-review"},{"category":"Episode","description":"Do you run a web application or web service? You probably do a couple of things to optimize the performance of your site. Make sure the database response quickly and more. But did you know a well of performance improvements live in your web servers themselves?","id":143,"title":"Tuning Python Web App Performance","url":"/episodes/show/143/tuning-python-web-app-performance"},{"category":"Episode","description":"How many Python developers do you know that learned Python quickly but then plateaued pretty quickly as well. Maybe this is someone you worked with or maybe it's even you. Python's clean and simple syntax can mean it's easy to learn but hard to master.","id":141,"title":"Python tricks","url":"/episodes/show/141/python-tricks"},{"category":"Episode","description":"How do you learn libraries or parts of Python itself that you don't have actual work projects involving them? Whether that's SQLAlchemy, Slack bots, or map APIs, actually building projects (small and large) with them is really the only way to gain true competency.","id":140,"title":"Level up your Python with #100DaysOfCode challenge","url":"/episodes/show/140/level-up-your-python-with-100daysofcode-challenge"},{"category":"Episode","description":"Have you noticed that web development is kind of hard? If you've been doing it for a long time, this is easy to forget. It probably sounds easy enough","id":138,"title":"Anvil: All web, all Python","url":"/episodes/show/138/anvil-all-web-all-python"},{"category":"Episode","description":"Do run any code that listens on an open port on the internet? This could be a website, a RESTful web service, or (gasp) even a database endpoint.","id":136,"title":"Secure code lessons from Have I Been Pwned","url":"/episodes/show/136/secure-code-lessons-from-have-i-been-pwned"},{"category":"Episode","description":"This episode is all about developer productivity. From continuous learning, to git source control tips, to tools and books for developers, Jay Miller from the Productivity in Tech podcast is here to share his experiences.","id":133,"title":"Productivity for developers","url":"/episodes/show/133/productivity-for-developers"},{"category":"Episode","description":"Are you new to open source? Maybe been using it for a long time and never got around to contributing to it? Wondering how to get started?","id":132,"title":"Contributing to open source","url":"/episodes/show/132/contributing-to-open-source"},{"category":"Episode","description":"Data science has been one of the major driving forces behind the explosion of Python in recent years. It's now used for AI research, controls some of the most powerful telescopes in the world, tracks crop growth and prediction and so much more.","id":131,"title":"Top 10 machine learning libraries","url":"/episodes/show/131/top-10-machine-learning-libraries"},{"category":"Episode","description":"One of the hallmarks of successful developers is continuous learning. The best developers I know don't just keep learning, it's one of the things that drives them. That's why I'm excited to bring you this episode on 10 books Python developers should read.","id":130,"title":"10 books Python developers should be reading","url":"/episodes/show/130/10-books-python-developers-should-be-reading"},{"category":"Episode","description":"Full featured web frameworks such as Django are great. But sometimes, living closer to the network layer is just the thing you need.","id":129,"title":"Falcon: The bare-metal Python web framework","url":"/episodes/show/129/falcon-the-bare-metal-python-web-framework"},{"category":"Episode","description":"When you think of networks, you probably think of physic things: Routers, switches, firewalls, and more. But increasingly, network engineers are managing massive networks that are better managed with software than via admin applications.","id":128,"title":"Pythonic Networks with NAPALM","url":"/episodes/show/128/pythonic-networks-with-napalm"},{"category":"Episode","description":"To make software useful, honestly, to even make it real, you have to ship it. Building a web app? Then deploy that next version. Building a toolset for data scientists? Send them that application. Managed to get a cool GUI going in Python with Togo or PySide? Time to have your users start downloading it.","id":127,"title":"Shipping software to users","url":"/episodes/show/127/shipping-software-to-users"},{"category":"Episode","description":"Containers are revolutionizing the way we deploy and manage applications. These containers allow us to build, develop, test, and even deploy on the exact same system. We can build layered systems that fill in our dependencies. They even can play a crucial role in zero-downtime upgrades.","id":126,"title":"Kubernetes for Pythonistas","url":"/episodes/show/126/kubernetes-for-pythonistas"},{"category":"Episode","description":"APIs were once the new and enabling thing in technology. Today they are table-stakes. And getting them right is important. Today we'll talk about one of the most popular and mature API frameworks in Django REST Framework. You'll meet the creator, Tom Christie and talk about the framework, API design, and even his successful take on funding open source projects.","id":125,"title":"Django REST framework and a new API star is born","url":"/episodes/show/125/django-rest-framework-and-a-new-api-star-is-born"},{"category":"Episode","description":"We all know that Python is a major player in the application of Machine Learning and AI. That often involves grabbing Keras or TensorFlow and applying it to a problem. But what about AI research? When you're actually trying to create something that has yet to be created? How do researchers use Python here?","id":124,"title":"Python for AI research","url":"/episodes/show/124/python-for-ai-research"},{"category":"Episode","description":"What if you could take the experience and insight from 100 job interviews and use them to find just the right job. You'd be able to weed out the bad places that are not the right fit. You'd see that low-ball offer coming a mile away and move right along.","id":123,"title":"Lessons from 100 straight dev job interviews","url":"/episodes/show/123/lessons-from-100-straight-dev-job-interviews"},{"category":"Episode","description":"The past few years have seen an explosion of IoT devices. Many of these are for the so-called smart home. Their true potential lies in the ability to coordinate and automate them as a group.","id":122,"title":"Home Assistant: Pythonic Home Automation","url":"/episodes/show/122/home-assistant-pythonic-home-automation"},{"category":"Episode","description":"Do you have big, monolith web applications or services that are hard to manage, hard to change, and hard to scale? Maybe breaking them into microservices would give you many more options to evolve and grow that app.","id":121,"title":"Microservices in Python","url":"/episodes/show/121/microservices-in-python"},{"category":"Episode","description":"This week we'll enter the world of stock markets, trades, hedge funds and more. You'll meet Yves Hilpisch who runs The Python Quants where Python, open-source, education, and finance intersect.","id":120,"title":"Python in Finance","url":"/episodes/show/120/python-in-finance"},{"category":"Episode","description":"Let's consider the progression we've been on over the past 15 or so years.","id":118,"title":"Serverless software","url":"/episodes/show/118/serverless-software"},{"category":"Episode","description":"One of the nice things about the Python language is it's at least 3 programming paradigms in one: There's the procedural style, object-oriented style, and functional style.\r<br/>\n \r<br/>\nThis week you'll meet Evan Hubinger who is taking Python's functional programming style and turning it to 11. We're talking about Coconut. A full functional programming language that is a proper superset of Python itself.","id":117,"title":"Functional Python with Coconut","url":"/episodes/show/117/functional-python-with-coconut"},{"category":"Episode","description":"Whether you got to attend PyCon, there were just too many good talks to attend them all. Luckily our friends at the PSF were on top of publishing the videos online for the whole world to watch for free.\r<br/>\n \r<br/>\nOn this episode, we'll meet up with Brett Slatkin and replay his path through PyCon. We touch on his top 10 sessions from PyCon 2017.","id":116,"title":"10 top talks of PyCon 2017 reviewed","url":"/episodes/show/116/10-top-talks-of-pycon-2017-reviewed"},{"category":"Episode","description":"Where do you run your Python code? No, not Python 3, Python 2, PyPy or the other implementations. I'm thinking waaaaay lower than that. This week we are talking about the actual chips that execute our code.","id":113,"title":"Dedicated AI chips and running old Python faster at Intel","url":"/episodes/show/113/dedicated-ai-chips-and-running-old-python-faster-at-intel"},{"category":"Episode","description":"I've always thought that if I retired, I'd more or less do what I had been doing as my job - except without the meetings and reports. That is, write interesting and fulfilling software.","id":112,"title":"Geeking out in the golden years","url":"/episodes/show/112/geeking-out-in-the-golden-years"},{"category":"Episode","description":"Are you asked to generate reports from your company's data? Has someone suggested that you buy / deploy massive BI software that expensive, closed source, and generally underwhelming?","id":110,"title":"Data Democratization with Redash","url":"/episodes/show/110/data-democratization-with-redash"},{"category":"Episode","description":"Want to learn how to build an Iron-man like arc reactor accessory or maybe a solar charging backpack? What if you could program these devices with Python? \r<br/>\n\r<br/>\nWe'll be talking about a project and company making this possible. This week you'll meet Tony DiCola who works at Adafruit. A company making hardware programming accessible. We will also talk about micropython which lets you program these cool devices in Python!","id":108,"title":"MicroPython and Open Source Hardware at Adafruit","url":"/episodes/show/108/micropython-and-open-source-hardware-at-adafruit"},{"category":"Episode","description":"You have heard me go on and on about how Python 3.5's async and await changes the game for asynchronous programming in Python. But what exactly does that mean? How does it work in APIs? Internally?\r<br/>\n\r<br/>\nToday I'm here with David Beazley who has been deeply exploring this space with his project Curio.","id":107,"title":"Python concurrency with Curio","url":"/episodes/show/107/python-concurrency-with-curio"},{"category":"Episode","description":"There are many reasons it's a great time to be a developer. One of them is because there are so many choices around data access and databases. So this week we take tour with our guest Jim Fulton of some databases you may not have heard of or given a try.","id":105,"title":"A Pythonic Database Tour","url":"/episodes/show/105/a-pythonic-database-tour"},{"category":"Episode","description":"Game theory is the study competing interests, be it individual actors within an economy or healthy vs. cancer cells within a body. \r<br/>\n\r<br/>\nOur guests this week, Vince Knight, Marc Harper, and Owen Campbell, are here to discuss their python project built to study and simulate one of the central problems in Game Theory: The prisoners' dilemma.","id":104,"title":"Game Theory in Python","url":"/episodes/show/104/game-theory-in-python"},{"category":"Episode","description":"How do you build reliable software with fewer bugs? Yes, unit testing is part of that. But did you know that code reviews often play a key role in this process and come with many benefits on top of just bug detection.","id":102,"title":"Effective Code Reviews","url":"/episodes/show/102/effective-code-reviews"},{"category":"Episode","description":"You know the two questions I asked at the end of each episode? \r<br/>\n\r<br/>\nWhat's your favorite editor for writing Python code and what less-well-known PyPI package do you recommend?\r<br/>\n\r<br/>\nWell this time, we are making a whole episode out of \"What's your favorite editor\". You'll meet Don Jayamanne who created the wildly popular and open source Python add-in for Visual Studio Code. That's not the Windows-only Visual Studio, but Microsoft's free cross-platform editor.","id":101,"title":"Adding a full featured Python environment to  Visual Studio Code","url":"/episodes/show/101/adding-a-full-featured-python-environment-to-visual-studio-code"},{"category":"Episode","description":"One of the areas where Python truly shines is on the web. Many well known websites like YouTube, Pintrest, and Spotify are powered by Python. In the mid 2000's, a number of powerful and popular frameworks were created such as Django, Flask, and Pyramid.","id":99,"title":"Morepath: Super Powered Python Web Framework","url":"/episodes/show/99/morepath-super-powered-python-web-framework"},{"category":"Episode","description":"One of the major areas of innovation in Python 3 is advances in async and concurrent programming. Yet, when working with any of the major web frameworks: django, flask, or pyramid, this is basically no concurrent option. That's why Andrew Godwin decided to tackle the issue on the django side with django channels.","id":98,"title":"Adding concurrency to Django with Django Channels","url":"/episodes/show/98/adding-concurrency-to-django-with-django-channels"},{"category":"Episode","description":"There's a whole spectrum of Python web frameworks. On one end we have the micro-frameworks like bottle, flask, and do some degree Pyramid. On the other things like Django and even CMSes like Wagtail (built on Django) in the far end.","id":97,"title":"Flask, Django style with Flask-Diamond","url":"/episodes/show/97/flask-django-style-with-flask-diamond"},{"category":"Episode","description":"Python is said to be a language that comes with \"batteries included\". That has many meanings depending on the level you're focusing on. At the lowest, it's a very rich and expressive language. Most commonly it means Python has a powerful and comprehensive standard library (itertools and elementtree anyone?).","id":96,"title":"Exploring Awesome Python","url":"/episodes/show/96/exploring-awesome-python"},{"category":"Episode","description":"Google runs millions of lines of Python code. The front-end server that drives youtube.com and YouTube\u2019s APIs is primarily written in Python, and it serves millions of requests per second!","id":95,"title":"Grumpy: Running Python on Go","url":"/episodes/show/95/grumpy-running-python-on-go"},{"category":"Episode","description":"Have you ever had trouble installing a package you wanted to use in your Python app? Likely it contained some odd dependency, required a compilation step, maybe even using an uncommon compiler like Fortran. Did you try it on Windows? How many times have you seen \"Cannot find vcvarsall.bat\" before you had to take a walk?","id":94,"title":"Guarenteed packages via Conda and Conda-Forge","url":"/episodes/show/94/guarenteed-packages-via-conda-and-conda-forge"},{"category":"Episode","description":"You often hear that we need to teach computer science as a foundational skill. Why? Well I'm not sure many of the leaders pushing this forward have great answers other than jobs!","id":93,"title":"Spreading Python through the sciences with Software Carpentry","url":"/episodes/show/93/spreading-python-through-the-sciences-with-software-carpentry"},{"category":"Episode","description":"Here's a bonus as many of you are on winter break or travelling around. I hope you enjoy this episode of Python Bytes. If you love it, be sure to subscribe to the full podcast.\r<br/>\n\r<br/>\nFull <a href='https://pythonbytes.fm/episodes/show/6/python-3.6-is-going-to-be-awesome-kite-your-friendly-co-developing-ai'>show notes here</a>.","id":92,"title":"Bonus: Python Bytes Crossover: Python 3.6 is going to be awesome, Kite: your friendly co-developing AI","url":"/episodes/show/92/bonus-python-bytes-crossover-python-3.6-is-going-to-be-awesome-kite-your-friendly-co-developing-ai"},{"category":"Episode","description":"It's been an amazing year for Python and Data Science. It's time to look back at the major headlines and take stock in what we've done as a community.","id":91,"title":"Top 10 Data Science Stories of 2016","url":"/episodes/show/91/top-10-data-science-stories-of-2016"},{"category":"Episode","description":"Do you have a dirty, messy data problem? Whether you work as a software developer or as a data scientist, you've surely run across data that was malformed, incomplete, or maybe even wrong. Don't let messy data wreck your apps or generate wrong results.","id":90,"title":"Data Wrangling with Python","url":"/episodes/show/90/data-wrangling-with-python"},{"category":"Episode","description":"This special episode is hosted by Jonathon Morgan.","id":89,"title":"A conversation with the Chief Data Scientist of the United States","url":"/episodes/show/89/a-conversation-with-the-chief-data-scientist-of-the-united-states"},{"category":"Episode","description":"Django is a very popular Python web framework. One reason is you have many building blocks to drop in for large sections of your application. Need a full-on admin table editor backend? That's a few lines of code and boom you have a basic table editor.","id":88,"title":"Lightweight Django","url":"/episodes/show/88/lightweight-django"},{"category":"Episode","description":"If you run into a problem with some API or Python code what do you do to solve it? I personally throw a few keywords into google, sometimes even before checking the full docs.","id":86,"title":"Python at StackOverflow","url":"/episodes/show/86/python-at-stackoverflow"},{"category":"Episode","description":"When was the last time you used a 3rd party package in Python? Have you recently pip installed SQLAlchemy? Maybe looked up the documentation on a package you found on PyPI?","id":84,"title":"Are we failing to fund Python's core infrastructure?","url":"/episodes/show/84/are-we-failing-to-fund-pythons-core-infrastructure"},{"category":"Episode","description":"Have you ever searched for a Python educational video? Maybe how to get started with Pyramid, or running queries with SQLAlchemy's ORM layer?","id":83,"title":"Python Videos on Demand at PyVideo","url":"/episodes/show/83/python-videos-on-demand-at-pyvideo"},{"category":"Episode","description":"Algorithms underpin almost everything we do in programming and in problem solving in general. Yet, many of us have partial or incomplete knowledge of the most important and common ones. In this episode, you'll meet Adit Bhargava, the author of the light and playful Grokking Algorithms: An illustrated guide book.","id":82,"title":"Grokking Algorithms in Python","url":"/episodes/show/82/grokking-algorithms-in-python"},{"category":"Episode","description":"The advances in Astronomy over the past century are both evidence of and confirmation of the highest heights of human ingenuity. We have learned by studying the frequency of light that the universe is expanding. By observing the orbit of Mercury that Einstein's theory of general relativity is correct.","id":81,"title":"Python and Machine Learning in Astronomy","url":"/episodes/show/81/python-and-machine-learning-in-astronomy"},{"category":"Episode","description":"NoSQL and document dbs like MongoDB have made building fast scalable software that is easy to evolve and maintain much easier for a broad class of applications. Embeddable, file-based databases like SQLite have made \"shipping\" an application requiring a database a no brainer. The database just runs in process so there is no setup or maintenance.","id":80,"title":"TinyDB: A tiny document db written in Python","url":"/episodes/show/80/tinydb-a-tiny-document-db-written-in-python"},{"category":"Episode","description":"Could you write me a Python app for the wide range of platforms out there? Oh, wait, I want them to be native GUI applications. And I need them on mobile (Android, iOS, tvOS, and watchOS) as well as major desktop apps. I also need them to appear indistinguishable from native apps (be a .app on macOS, .exe on Windows, etc).","id":79,"title":"Beeware Python Tools","url":"/episodes/show/79/beeware-python-tools"},{"category":"Episode","description":"What kind of applications can you build with python? You hear me featuring many people on this show that build websites, web services, or some data science driven application. Of course, all of those are wonderful but I know many of you have dreamed of building a game.","id":78,"title":"How I built an entire game and toolchain 100% in Python","url":"/episodes/show/78/how-i-built-an-entire-game-and-toolchain-100-in-python"},{"category":"Episode","description":"Even with solar panels on your roof, it\u2019s possible that your home is still being powered by fossil fuels. Climate innovator and Python developer Anna Schneider is trying to change that. At her company WattTime, consumers can source the cleanest energy available on the grid.","id":76,"title":"Renewable Python","url":"/episodes/show/76/renewable-python"},{"category":"Episode","description":"Do you like to play games or solve puzzles? Chances are pretty good that you do. After all, what is programming and software development but one really elaborate puzzle?","id":75,"title":"Pythonic games at CheckIO","url":"/episodes/show/75/pythonic-games-at-checkio"},{"category":"Episode","description":"Have you heard of IronPython and Jython?  These two alternate implementations of Python were created by Jim hugunin. They run on top of the .NET and JVM runtimes. On this episode going to look at the story of IronPython. It's been around for many years. Although the last few years, it's been somewhat stagnant.\r<br/>\n\r<br/>\nThat's why I am thrilled to introduce you to Alex Earl, who along with Benedikt Eggers, has become the maintainer of the IronPython project. It's great to see IronPython getting the attention it deserves. We'll talk about IronPython past, present, future on this episode of Talk Python To Me.","id":74,"title":"Past, Present, and Future of IronPython","url":"/episodes/show/74/past-present-and-future-of-ironpython"},{"category":"Episode","description":"In this episode we catch up with David Crook, a developer evangelist at Microsoft. He is a co-organizer for the Fort Lauderdale Machine Learning User Group and is involved in many more user groups and meetups. You hear about some really cool projects where they are using Python and TensorFlow to work on simple things like growing more food to help feed the world.","id":73,"title":"Machine learning at the new Microsoft","url":"/episodes/show/73/machine-learning-at-the-new-microsoft"},{"category":"Episode","description":"What happens when you take a tech-driven online fashion company that is experiencing explosive growth and infuse it with a deep open-source mission? You'll find out on this episode of Talk Python To Me.","id":72,"title":"Fashion-driven open source software at Zalando","url":"/episodes/show/72/fashion-driven-open-source-software-at-zalando"},{"category":"Episode","description":"Writing good, clean code and having a deep working knowledge of Python is critical to your success as a Python developer. But if you look at those who have truly excelled in their career, it's often because they bring something in addition to coding skills.","id":71,"title":"Soft Skills: The software developer's life manual","url":"/episodes/show/71/soft-skills-the-software-developers-life-manual"},{"category":"Episode","description":"Some of the best songs are cover songs of popular music. If you're a musician who wants to create a cover song and actually sell it, you'll be diving deep into complex agreements and legal agreements with record labels. Sounds like no fun to me.\r<br/>\n\r<br/>\nBut this is where Python comes to the rescue! The guys and girls over at Loudr are using Python to create a service for creating, selling, and distributing cover songs. This week you'll meet one of the co-founders, Josh Whelchel. He's here to tell us all the cool ways Python makes this possible, including a touch of machine learning!","id":70,"title":"Pythonic cover songs at Loudr","url":"/episodes/show/70/pythonic-cover-songs-at-loudr"},{"category":"Episode","description":"Do you have a blog? How many articles have you written for it? Do you find it hard to keep writing or hard to get started doing technical writing? We might be able to help you out with that this week.","id":69,"title":"Write an Excellent Programming Blog","url":"/episodes/show/69/write-an-excellent-programming-blog"},{"category":"Episode","description":"Have you listened to the other major Python podcast hosted by Tobias Macey and Chris Patti? It's called podcast.__init__ and, like this show, they have some excellent stories from the Python ecosystem on there weekly. So recently some listeners from both shows suggested the unimaginable: That we 'cross the streams'...","id":68,"title":"Crossing the streams with Podcast.__init__","url":"/episodes/show/68/crossing-the-streams-with-podcast.-init"},{"category":"Episode","description":"Let's talk about your unit testing strategy. How do you select the tests you write or do you even write tests? Typically, when you write a test you have to think of what you are testing and the exact set of inputs and outcomes you're looking for. And there are strategies for this. Try to hit the boundary conditions, the most common use-cases, seek out error handling and so on.","id":67,"title":"Property-based Testing with Hypothesis","url":"/episodes/show/67/property-based-testing-with-hypothesis"},{"category":"Episode","description":"Python is a wonderful programming language that is often underestimated because it's so clear and simple. Oftentimes people mistake this simplicity for being too simple for real-programs. After all, you didn't even struggle to get your program to link against an incompatible static library or battle a DLL version mismatch in your Python app today did you?","id":66,"title":"Faster Python Programs: Measure, Don't Guess","url":"/episodes/show/66/faster-python-programs-measure-dont-guess"},{"category":"Episode","description":"Long gone are the days of the web acting as just linked documents and glorified brochures. Web apps of today are just that, rich interactive applications. But unlike desktop apps of old, these are apps with 100,000's or even millions of concurrent users.","id":65,"title":"Jump on the real-time web with RethinkDB","url":"/episodes/show/65/jump-on-the-real-time-web-with-rethinkdb"},{"category":"Episode","description":"What is the most powerful part of the Python ecosystem? Well, the ability to say \"pip install magic_library\" has to be right near the top. But do you what powers the Python Package Index and the people behind it? Did you know it does over 300 TB traffic each month these days?","id":64,"title":"Inside the Python Package Index","url":"/episodes/show/64/inside-the-python-package-index"},{"category":"Episode","description":"Do you think it's a good idea to test your software? Do you write unit tests or other automated verification for code? I think most of us do these days. A key question is how do you know whether your tests sufficiently verify your code? The standard answer is code coverage.","id":63,"title":"Validating Python tests with mutation testing","url":"/episodes/show/63/validating-python-tests-with-mutation-testing"},{"category":"Episode","description":"What's it like to learn Python? Yes, some of you may have just picked up the language while others have lived and breathed it for years. Either way, you may have some hindsight bias towards the experience. What was hard? What were your expectations? What delighted you?","id":62,"title":"San Diego Technology Immersion Group Learns Python","url":"/episodes/show/62/san-diego-technology-immersion-group-learns-python"},{"category":"Episode","description":"How often do you read some news headline about free speech denied and human rights being suppressed and think that sucks but there is nothing I can do about it from my distant perspective. I guess you could vote slightly differently in the next election and maybe, just maybe, it will have a small impact in 4 years time.","id":61,"title":"Free software, free people","url":"/episodes/show/61/free-software-free-people"},{"category":"Episode","description":"You've heard me talk previously about scaling Python and Python performance on this show. But on this episode I'm bringing you a very interesting project pushing the upper bound of Python performance for a certain class of applications.","id":60,"title":"Scaling Python to 1000's of cores with Ufora","url":"/episodes/show/60/scaling-python-to-1000s-of-cores-with-ufora"},{"category":"Episode","description":"What do you do when you are a high caliber mathematician or scientist and you want share your algorithms and code? This sounds like a job for github, but the problem is often this work is done on proprietary platforms such as Magma, Matlab, Mathematica or others.","id":59,"title":"SageMath - Open source is ready to compete in the classroom","url":"/episodes/show/59/sagemath-open-source-is-ready-to-compete-in-the-classroom"},{"category":"Episode","description":"What do you focus on once you've learned the core concepts of the Python programming language and ecosystem?","id":58,"title":"Create better Python programs with concurrency, libraries, and patterns","url":"/episodes/show/58/create-better-python-programs-with-concurrency-libraries-and-patterns"},{"category":"Episode","description":"You likely know that Python is one of the fastest growing languages for data science. \r<br/>\n\r<br/>\nThis is a discipline that combines the scientific inquiry of hypotheses and tests, the mathematical intuition of probability and statistics, the AI foundations of machine learning, a fluency in big data processing, and the Python language itself. That is a very broad set of skills we need to be good data scientists and yet each one is deep and often hard to understand.","id":56,"title":"Data Science from Scratch","url":"/episodes/show/56/data-science-from-scratch"},{"category":"Episode","description":"In the software field, we pride ourselves on fairness, openness and the fact that our workplaces are largely meritocracies. And compared to other environments, I would say this is certainly true. It's one of the reasons I love being a developer.\r<br/>\n\r<br/>\nAnd yet, if we look at programming jobs in Silicon Valley, you'll see that over 85% of them are filled by men and less than 15% women.","id":55,"title":"How our engineering environments are killing diversity (and how we can fix it)","url":"/episodes/show/55/how-our-engineering-environments-are-killing-diversity-and-how-we-can-fix-it"},{"category":"Episode","description":"How often have people asked what language / technology you work in and when you answered Python they got a little confused and asked, what can you actually build with Python? What type of apps? The implication being Python is just a notch above Bash scripts. That real things aren't built with Python but rather Java, C#, Objective-C and so on.","id":54,"title":"Enterprise Software with Python","url":"/episodes/show/54/enterprise-software-with-python"},{"category":"Episode","description":"What's your favorite Python editor? That is one of the questions I always ask at the end of the episode. This week I want to shine a light on a fantastic answer to that question for Windows developers: Visual Studio.","id":53,"title":"Python in Visual Studio","url":"/episodes/show/53/python-in-visual-studio"},{"category":"Episode","description":"Have you ever played a massively multiplayer online game? My first experience with these types of games with text-based role playing games called MUDs back in the early 90's. Well, things have come a long way since then. Game such as Eve Online have hundreds of thousands of players exploring, trading, and battling within a universe of over 7,000 star systems. Gameplay in Eve Online consists of beautiful 3D space flight within a dynamic universe and many real world players.","id":52,"title":"EVE Online: MMO game powered by Python","url":"/episodes/show/52/eve-online-mmo-game-powered-by-python"},{"category":"Episode","description":"You've heard that machine intelligence is going to transform our lives any day now.  This is usually presented in a way that is vague and non-descript.","id":51,"title":"SigOpt: Optimizing Everything with Python","url":"/episodes/show/51/sigopt-optimizing-everything-with-python"},{"category":"Episode","description":"What do you do when you are working with an amazing web application that, for whatever reason, doesn't have an API? One option is to say I wish that site had an API and give up. Or, you could use scrapy, an open source web scraping framework from Pablo Hoffman and <a href='scrapinghub.com'>scrapinghub.com</a> and create your own API!","id":50,"title":"Web scraping at scale with Scrapy and ScrapingHub","url":"/episodes/show/50/web-scraping-at-scale-with-scrapy-and-scrapinghub"},{"category":"Episode","description":"This episode you'll learn about a project that has the potential to unlock massive innovation around how CPython understands and executes code. And it's coming from what many of you may consider an unlikely source: Microsoft and the recently open-sourced, cross-platform .NET Core runtime.","id":49,"title":"Microsoft's JIT-based Python Project: Pyjion","url":"/episodes/show/49/microsofts-jit-based-python-project-pyjion"},{"category":"Episode","description":"When you think of Python web microframeworks, Flask is definitely near the top of the list. With almost 19,000 stars on GitHub it's a powerful and extensible web framework and it even powers the bandwidth intensive audio delivery of the Talk Python To Me podcast.","id":48,"title":"Building Flask-based Web Apps","url":"/episodes/show/48/building-flask-based-web-apps"},{"category":"Episode","description":"This week on Talk Python To Me, we'll dive into the world of typeface and font development. Even though we spend our days immersed in fonts, from our computer interfaces, signs, books, television and more, much of the process and thinking about fonts is invisible to us. If we dig into font development, we'd see that Python is a key component of the font developer's toolkit.","id":47,"title":"Python in Typeface and Font Development","url":"/episodes/show/47/python-in-typeface-and-font-development"},{"category":"Episode","description":"What did you experience the last time you watched a movie in a theater? Were you captivated by fast-paced action and special effects? Deeply moved by the characters that came to life during those two hours when the outside world just melted away? Yeah, movies are still magical.","id":46,"title":"Python in Movies and Entertainment","url":"/episodes/show/46/python-in-movies-and-entertainment"},{"category":"Episode","description":"What is the role, the core purpose of writing tests for your application? Should you write more unit tests and fewer integration tests, or is it actually the other way around? You may have heard of the test pyramid with unit tests building the foundation. In this episode we talk about a variation on that theme called the test column. We talk about this and more with Brian Okken on this episode of Talk Python To Me.","id":45,"title":"The Python Testing Column, Now a Thing","url":"/episodes/show/45/the-python-testing-column-now-a-thing"},{"category":"Episode","description":"One of the fastest growing areas in Python is scientific computing. In scientific computing with Python, there are a few key packages that make it special. These include NumPy / SciPy / and related packages. The one that brings it all together, visually, is IPython (now known as Project Jupyter). That's the topic on episode 44 of Talk Python To Me.","id":44,"title":"Project Jupyter and IPython","url":"/episodes/show/44/project-jupyter-and-ipython"},{"category":"Episode","description":"What does it take to track detailed analytics and errors from literally thousands of web applications all at once? Could you build such a system entirely in Python?","id":43,"title":"Monitoring high performance Python apps at Opbeat","url":"/episodes/show/43/monitoring-high-performance-python-apps-at-opbeat"},{"category":"Episode","description":"Have you ever dreamt of creating a startup that will change the world? You and your two best friends leave the dull world of writing internal business apps and go heads-down for three months to launch something amazing?","id":42,"title":"Python in Startups and Investing","url":"/episodes/show/42/python-in-startups-and-investing"},{"category":"Episode","description":"How often do you meet people who are looking to get into the software development space? Do they ask you for advice? Maybe they want to know your story of how you got started and landed that first big job. Maybe they want to know what they should be doing right now.","id":41,"title":"Getting your first dev job as a Python developer (part 2)","url":"/episodes/show/41/getting-your-first-dev-job-as-a-python-developer-part-2"},{"category":"Episode","description":"It's the end of the year and many of you are probably kicking and taking it easy without a TPS report to be seen. So we'll keep this fun and lighthearted this week. We've teamed up with the Partially Derivative podcast and we're running down the top 10 data science stories of 2015 in this joint episode.","id":40,"title":"Top 10 Data Science Stories from 2015","url":"/episodes/show/40/top-10-data-science-stories-from-2015"},{"category":"Episode","description":"How often do you meet people who are looking to get into the software development space? Do they ask you for advice? Maybe they want to know your story of how you got started and landed that first big job. Maybe they want to know what they should be doing right now.","id":39,"title":"Getting your first dev job as a Python developer (part 1)","url":"/episodes/show/39/getting-your-first-dev-job-as-a-python-developer-part-1"},{"category":"Episode","description":"Have you heard about the works on my machine certification program? It's a really awesome certification for developers. It was created by Joseph Cooney and enhanced by Jeff Atwood (of stackoverflow fame). Here's how it works:","id":38,"title":"Continuous Integration and Delivery at Codeship","url":"/episodes/show/38/continuous-integration-and-delivery-at-codeship"},{"category":"Episode","description":"How secure is your application? Do you know the main vulnerabilities that most apps suffer from? How would you even start answer these questions? On this episode of Talk Python To Me, Justin Seitz is here to tell us all about it.","id":37,"title":"Python Cybersecurity and Penetration Testing","url":"/episodes/show/37/python-cybersecurity-and-penetration-testing"},{"category":"Episode","description":"As a software developer, what's the most important application on your computer? If your answer is Microsoft Outlook, my heart goes out to you - stay strong! But for most of us, it's probably a toss up between your web browser and code editor.","id":36,"title":"Python IDEs with the PyCharm team","url":"/episodes/show/36/python-ides-with-the-pycharm-team"},{"category":"Episode","description":"Do you have a new web project coming up? Are you thinking of choosing Django or maybe Flask? Those are excellent frameworks, but you might also want to check out TurboGears.","id":35,"title":"Turbogears and the future of Python web frameworks","url":"/episodes/show/35/turbogears-and-the-future-of-python-web-frameworks"},{"category":"Episode","description":"What if you built a product that dramatically improved how hundreds of free, open source Python libraries worked together, gave it to the world for free, and then built a thriving business on it? It's the open-source dream really, isn't it? In this episode, we talk with Travis Oliphant from Continuum who did exactly that!","id":34,"title":"Continuum: Scientific Python and The Business of Open Source","url":"/episodes/show/34/continuum-scientific-python-and-the-business-of-open-source"},{"category":"Episode","description":"You've probably heard of Infrastructure-as-a-services (IaaS) cloud providers such as Amazon's AWS, with EC2 in particular, and to a lesser degree Microsoft's Azure cloud platform. But have you hear of OpenStack? It is an incredibly powerful IaaS platform which you can buy as a service or install in your own data center to build your own private cloud","id":33,"title":"OpenStack: Cloud computing built on Python","url":"/episodes/show/33/openstack-cloud-computing-built-on-python"},{"category":"Episode","description":"Imagine a future where you are building that rich, client-side web app. You start by creating some backend services in Flask or Node, an HTML page, throw in a few divs and uls, and then you type [script src=\"main.py\" language=\"Python\"].","id":32,"title":"PyPy.js - PyPy Python in Your Browser","url":"/episodes/show/32/pypy.js-pypy-python-in-your-browser"},{"category":"Episode","description":"Machine learning allows computers to find hidden insights without being explicitly programmed where to look or what to look for. Thanks to the work of some dedicated developers, Python has one of the best machine learning platforms called scikit-learn. In this episode, Alexandre Gramfort is here to tell us all about scikit-learn and machine learning.","id":31,"title":"Machine Learning with Python and scikit-learn","url":"/episodes/show/31/machine-learning-with-python-and-scikit-learn"},{"category":"Episode","description":"Is that Python code of yours running a little slow? Are you thinking of rewriting the algorithm or maybe even in another language? Well, before you do, you'll want to listen to what Davis Silverman has to say about speeding up Python code using Profiling.","id":28,"title":"Making Python Fast: Profiling Python Code","url":"/episodes/show/28/making-python-fast-profiling-python-code"},{"category":"Episode","description":"Often people complain about the lack of developer skills in western countries like the United States and that problem is amplified when you consider typically under represented groups such as women and minorities. This week you'll meet Laura Blankenship who is doing more than her share to widen the appeal of programming in general and Python in particular.","id":27,"title":"Four Years of Python for High Schoolers","url":"/episodes/show/27/four-years-of-python-for-high-schoolers"},{"category":"Episode","description":"So, you've build an amazing Python web app and now what? You want to put it online of course but that's a whole different skill set. You're in luck, because Matthew Makai is here to tell us all about deploy Python applications on this episode of Talk Python To Me.","id":26,"title":"Deploying Python Web Applications (Updated)","url":"/episodes/show/26/deploying-python-web-applications-updated"},{"category":"Episode","description":"What if you could bottle up all the wisdom and hard-fought experience of many expert Python developers and power up your own skills? That's what Brett Slatkin did and he put it in his book Effective Python.","id":25,"title":"Effective Python","url":"/episodes/show/25/effective-python"},{"category":"Episode","description":"Are you fluent in Python or do you speak the language with an accent? Maybe you have a hint of C++ in your for-in loop or even a little C# coming through in your function names.","id":24,"title":"Fluent Python","url":"/episodes/show/24/fluent-python"},{"category":"Episode","description":"You've heard of the full-stack developer and full-stack Python, but this week Authentise is taking it to a new level with Python all the way from the cloud to the client to the printer.","id":23,"title":"3D Printing with Python at Authentise","url":"/episodes/show/23/3d-printing-with-python-at-authentise"},{"category":"Episode","description":"It's time to look deep within the machine and understand what *really* happens when your Python code executes. We're code-walking through the CPython code and visualizing it at pythontutor.com.","id":22,"title":"CPython Internals and Learning Python with pythontutor.com","url":"/episodes/show/22/cpython-internals-and-learning-python-with-pythontutor.com"},{"category":"Episode","description":"Is your Python code running a little slow? Did you know that the PyPy runtime could make it run up to 10x faster? Seriously! Maciej Fijalkowski is here to tell us all about it. This episode is all about the alternative, JIT compiled, garbage collection Python implementation PyPy.","id":21,"title":"PyPy - The JIT Compiled Python Implementation","url":"/episodes/show/21/pypy-the-jit-compiled-python-implementation"},{"category":"Episode","description":"What if your computer science textbooks could run their python code samples and that code ran directly in your browser, kinda like JavaScript but better, because: Python. It is possible and Brad Miller is making it happen!","id":20,"title":"Interactive Python and Teaching Python: Beyond Text Books","url":"/episodes/show/20/interactive-python-and-teaching-python-beyond-text-books"},{"category":"Episode","description":"Often the most important lessons we learn is what NOT to do. Show #18 is all about BAD Python code and Python Antipatterns with Andreas Dewes. Listen in to learn about the \"Empty Intern Except Block\" and other dubious coding decisions!","id":18,"title":"Python Anti-patterns and other mistakes","url":"/episodes/show/18/python-anti-patterns-and-other-mistakes"},{"category":"Episode","description":"How many layers of abstraction and indirection are between your python code and machine instructions? What if that number could be 1 and Python itself was the operating system? That would be so amazing, right?","id":17,"title":"Python on bare metal with MicroPython","url":"/episodes/show/17/python-on-bare-metal-with-micropython"},{"category":"Episode","description":"Right now there is a chaos monkey running through AWS knocking over Netflix servers. But don't be alarmed! It's all part of the plan. This is Talk Python to Me with Roy Rapoport from Netflix and the topic is \"Python at Netflix.\"","id":16,"title":"Python at Netflix","url":"/episodes/show/16/python-at-netflix"},{"category":"Episode","description":"A strong community is one of Python's super-powers and that's what this episode of Talk Python To Me is all about! We speak with Lynn Root about her work with Python at Spotify, her role in the PSF as a Python Software Foundation board member, how she came to be the founder of PyLadies San Francisco, her talks and presentations, as well as some excellent open source work she is doing.","id":15,"title":"Python at Spotify, PSF, and PyLadies","url":"/episodes/show/15/python-at-spotify-psf-and-pyladies"},{"category":"Episode","description":"It's uncommon when technology and purpose combine to create something amazing. But that's exactly what's happening here a Patreon. Learn how they are using Python to enable an entirely new type of crowdsourcing for creative endeavours (podcasting, art, open source, and more).","id":14,"title":"Moving from PHP to Python 3 with Patreon","url":"/episodes/show/14/moving-from-php-to-python-3-with-patreon"},{"category":"Episode","description":"Did you know that Flask has its origins in an April fools joke that unexpectedly took off? Listen in this week to hear about the history, current state, and future of Flask with its creator Armin Ronacher.\r<br/>\n\r<br/>\nYou'll learn how he's using Python as the backend for a set of major computer games. His thoughts on the future of web development and HTTP 2. And why Rust is an amazing new language you should check out.","id":13,"title":"Flask web framework and much, much more","url":"/episodes/show/13/flask-web-framework-and-much-much-more"},{"category":"Episode","description":"Quick: What's the difference between a module, a package, and packing in Python? Find out in this episode of Talk Python To Me.\r<br/>\n\r<br/>\nAll Python programmers use the import statement, but do you really know how it works and what it allows? Join David and Michael to take a deep dive into diabolical issues related to modules, packages, and imports. When we're done, you'll finally be ready to unleash your million line micro framework on the world!","id":12,"title":"Deep Dive into Modules and Packages","url":"/episodes/show/12/deep-dive-into-modules-and-packages"},{"category":"Episode","description":"Did you know that PythonAnywhere started out as the first spreadsheet powered and scripted using Python before it became a hosting and Python-in-your-browser-Service (PiybS)! Come get to know Harry Percival and his path from Economics to PythonAnywhere all the way to Extreme Programming and Obey the Testing Goat.","id":10,"title":"Bringing Python to the Masses with Hosting and DevOps at PythonAnywhere","url":"/episodes/show/10/bringing-python-to-the-masses-with-hosting-and-devops-at-pythonanywhere"},{"category":"Episode","description":"Did you know that Docker was not the original product from the team that built it? They were working on ways to improve their PaaS cloud platform and docker was just a side product! But oh what a side product. Wisely, dotCloud cancelled their PaaS plans and became Docker Inc.","id":9,"title":"Docker for the Python Developer","url":"/episodes/show/9/docker-for-the-python-developer"},{"category":"Episode","description":"Did you know that Australia is making text-based computer programming a core requirement for high school students? Grok Learning is building the platform to make teaching it to kids a joy for teachers and students. Our guest, Dr. James Curran is a key player in both of these projects.\r<br/>\n\r<br/>\nJoin Michael in a conversation with Dr. Curran from Sydney University and co-founder of Grok Learning to learn about both of these and more! You'll learn about the different types of online tutorials, or short courses, you can use for learning or teaching including a text-based MUD game!","id":8,"title":"Teaching Python at Grok Learning and Classrooms","url":"/episodes/show/8/teaching-python-at-grok-learning-and-classrooms"},{"category":"Episode","description":"Programming is fun. Robots are fun. Programming robots is awesome! This episode Michael speaks with Dirk Thomas from the ROS (Robot Operating System) project. You will learn how to use ROS and ROSPy to program robots.","id":7,"title":"Robot Operating System (ROS) and ROSPy","url":"/episodes/show/7/robot-operating-system-ros-and-rospy"},{"category":"Episode","description":"Come and get plugged right into the middle the inner circle of the Python community with Kenneth Reitz. You'll get some insight into conversations from the latest Language Summit.\r<br/>\n\r<br/>\nKenneth works at Heroku and may be best known for creating Requests - HTTP for Humans. Requests is the most popular package on PyPI,  It has been downloaded over 40,000,000 times.","id":6,"title":"Requests, PyCon, and Python's future","url":"/episodes/show/6/requests-pycon-and-pythons-future"},{"category":"Episode","description":"In this episode we speak with Mike Bayer. Mike created SQLAlchemy in 2005 and over the past 10 years has been building and refining this amazing RDBMS ORM and data access layer.\r<br/>\n\r<br/>\nYou'll learn a lot about the history of the project and how it has evolved over time. You'll also here where Mike got some of his inspiration for the design patterns used in the library.","id":5,"title":"SQLAlchemy and data access in Python","url":"/episodes/show/5/sqlalchemy-and-data-access-in-python"},{"category":"Episode","description":"Join Michael for a conversation with Chris McDonough about the Pyramid web framework. You'll learn about what Pyramid is and how it compares to frameworks like Django, Flask, Bottle, and more. We discuss the history of the project and how Chris took inspiration from the Pylons project as well as some notable uses of Pyramid","id":3,"title":"Pyramid Web Framework","url":"/episodes/show/3/pyramid-web-framework"}]}
