The Real Python Podcast

Simon Willison: Using LLMs for Python Development


Listen Later

What are the current large language model (LLM) tools you can use to develop Python? What prompting techniques and strategies produce better results? This week on the show, we speak with Simon Willison about his LLM research and his exploration of writing Python code with these rapidly evolving tools.

Simon has been researching LLMs over the past two and a half years and documenting the results on his blog. He shares which models work best for writing Python versus JavaScript and compares coding tools and environments.

We discuss prompt engineering techniques and the first steps to take. Simon shares his enthusiasm for the usefulness of LLMs but cautions about the potential pitfalls.

Simon also shares how he got involved in open-source development and Django. He’s a proponent of starting a blog and shares how it opened doors for his career.

This episode is sponsored by Postman.

Course Spotlight: Advanced Python import Techniques

The Python import system is as powerful as it is useful. In this in-depth video course, you’ll learn how to harness this power to improve the structure and maintainability of your code.

Topics:

  • 00:00:00 – Introduction
  • 00:02:38 – How did you get involved in open source?
  • 00:04:04 – Writing an XML-RPC library
  • 00:04:40 – Working on Django in Lawrence, Kansas
  • 00:05:31 – Started building open-source collection
  • 00:06:52 – shot-scraper: taking automated screenshots of websites
  • 00:08:09 – First experiences with LLMs
  • 00:10:08 – 22 years of simonwillison.net
  • 00:18:22 – Navigating the hype and criticism of LLMs
  • 00:22:14 – Where to start with Python code and LLMs?
  • 00:26:22 – Sponsor: Postman
  • 00:27:13 – ChatGPT Canvas vs Code Interpreter
  • 00:28:23 – Asking nicely, tricking the system, and tipping?
  • 00:30:35 – More Code Interpreter and building a C extension
  • 00:32:05 – More details on Canvas
  • 00:36:55 – What is a workflow for developing using LLMs?
  • 00:39:43 – Creating pieces of code vs a system
  • 00:42:00 – Workout program for prompting and pitfalls
  • 00:53:54 – Video Course Spotlight
  • 00:55:14 – Why an SVG of a pelican riding a bicycle?
  • 00:57:48 – Repeating a query and refining
  • 01:03:00 – Working in an IDE or text editor
  • 01:05:45 – David Crawshaw on writing code with LLMs
  • 01:08:33 – Running an LLM locally to write code
  • 01:14:02 – Staying out of the AGI conversation
  • 01:16:07 – What are you excited about in the world of Python?
  • 01:18:34 – What do you want to learn next?
  • 01:19:53 – How can people follow your work online?
  • 01:20:51 – Thanks and goodbye
  • Show Links:

    • Simon Willison’s Weblog
    • shot-scraper
    • Matt’s Script Archive, Inc. - Free Perl CGI Scripts
    • XR - my XML-RPC library, now in WordPress - GitHub
    • Adrian Holovaty advertises for someone to join him working in Lawrence (May 2003) - Holovaty.com
    • Datasette: An open source multi-tool for exploring and publishing data
    • My SQLite tag page - Simon Willison
    • Chatbot Arena: Free AI Chat to Compare & Test Best AI Chatbots
    • DeepSeek v3 notes on Christmas day
    • DeepSeek_V3 - PDF
    • Simon Willison on code-interpreter
    • Gemini - Google DeepMind
    • Claude
    • ChatGPT Canvas can make API requests now, but it’s complicated
    • Welcome to Click — Click Documentation
    • My first experience with Llama in March 2023
    • I can now run a GPT-4 class model on my laptop
    • Using LLMs and Cursor to become a finisher
    • GitHub Copilot - Your AI pair programmer
    • In Finland, classes in recognizing fake news, disinformation - Sunday Morning CBS
    • 404Media Podcast: Why We Cover AI the Way We Do
    • Jason Koebler from 404Media - tags on simonwillison.net
    • Building Python tools with a one-shot prompt using uv run and Claude Projects
    • How I program with LLMs - crawshaw - 2025-01-06
    • pelican-riding-a-bicycle - tags on simonwillison.net
    • Things we learned about LLMs in 2024
    • Pyodide
    • Simon Willison on pyodide
    • astral-sh/uv: An extremely fast Python package and project manager
    • Simon Willison on uv
    • Simon Willison’s Newsletter - Substack
    • Semi-automating a Substack newsletter with an Observable notebook
    • Simon Willison (@simonwillison.net) — Bluesky
    • Simon Willison (@[email protected]) - Mastodon
    • Simon Willison (@simonw) - X
    • Level up your Python skills with our expert-led courses:

      • Building HTTP APIs With Django REST Framework
      • Advanced Python import Techniques
      • Absolute vs Relative Imports in Python
      • Support the podcast & join our community of Pythonistas

        ...more
        View all episodesView all episodes
        Download on the App Store

        The Real Python PodcastBy Real Python

        • 4.7
        • 4.7
        • 4.7
        • 4.7
        • 4.7

        4.7

        134 ratings


        More shows like The Real Python Podcast

        View all
        Hanselminutes with Scott Hanselman by Scott Hanselman

        Hanselminutes with Scott Hanselman

        378 Listeners

        Software Engineering Radio - the podcast for professional software developers by se-radio@computer.org

        Software Engineering Radio - the podcast for professional software developers

        263 Listeners

        The Changelog: Software Development, Open Source by Changelog Media

        The Changelog: Software Development, Open Source

        285 Listeners

        LINUX Unplugged by Jupiter Broadcasting

        LINUX Unplugged

        264 Listeners

        Thoughtworks Technology Podcast by Thoughtworks

        Thoughtworks Technology Podcast

        43 Listeners

        Talk Python To Me by Michael Kennedy

        Talk Python To Me

        584 Listeners

        Software Engineering Daily by Software Engineering Daily

        Software Engineering Daily

        631 Listeners

        Super Data Science: ML & AI Podcast with Jon Krohn by Jon Krohn

        Super Data Science: ML & AI Podcast with Jon Krohn

        296 Listeners

        Python Bytes by Michael Kennedy and Brian Okken

        Python Bytes

        213 Listeners

        Data Engineering Podcast by Tobias Macey

        Data Engineering Podcast

        140 Listeners

        Syntax - Tasty Web Development Treats by Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers

        Syntax - Tasty Web Development Treats

        987 Listeners

        CoRecursive: Coding Stories by Adam Gordon Bell - Software Developer

        CoRecursive: Coding Stories

        185 Listeners

        DataFramed by DataCamp

        DataFramed

        267 Listeners

        Practical AI by Practical AI LLC

        Practical AI

        195 Listeners

        The Stack Overflow Podcast by The Stack Overflow Podcast

        The Stack Overflow Podcast

        63 Listeners