The Real Python Podcast

Inheriting a Large Python Code Base & Building a GUI With Kivy


Listen Later

What are the unique challenges of a large Python code base? What techniques can you implement to simplify the management of a big project? This week on the show, Christopher Trudeau is here, bringing another batch of PyCoder’s Weekly articles and projects.

We discuss a recent thread on Hacker News about working with a large Python code base. Christopher advises configuring tests and using tools to keep your code consistent across an organization. He also answers several questions about code complexity, typing, and leveraging third-party libraries.

We cover several other articles and projects from the Python community, including news from the Python Language Summit, Kivy for GUI development, the power of bit manipulation, the removal of unused import statements in your code, and a Python-based iOS project for adding reminders about links from a podcast.

Course Spotlight: Build Cross-Platform GUI Apps With Kivy

In this video course, you’ll learn how to build a cross-platform mobile application with Python and the Kivy GUI framework. You’ll discover how to develop an application that can run on your desktop as well as your phone. Then, you’ll package your app for Windows, Linux, and macOS.

Topics:

  • 00:00:00 – Introduction
  • 00:01:43 – Python 3.13 Removes 20 Stdlib Modules
  • 00:03:20 – Making the Global Interpreter Lock Optional
  • 00:04:52 – What Is the Standard Library For?
  • 00:06:14 – Python’s .__call__() Method: Creating Callable Instances
  • 00:11:40 – The Power of Bit Manipulation
  • 00:15:39 – Using Kivy for GUI Development
  • 00:21:18 – Video Course Spotlight
  • 00:22:43 – How Do You Deal With Large Python Code Bases?
  • 00:40:50 – unimport: Remove Unused Import Statements in Your Code
  • 00:42:36 – Update: rsync-time-machine.py
  • 00:43:20 – memocast: Add links heard in podcasts into iOS reminders
  • 00:47:42 – A request to listeners
  • 00:48:20 – Thanks and goodbye
  • Show Links:

    • Python 3.13 Removes 20 Stdlib Modules – Core developers are busy working on PEP 594, removing dead batteries from Python 3.13. This long post in the discussion forum highlights what work has been completed so far.
    • Making the Global Interpreter Lock Optional – In the past, Sam Gross has outlined how to make the GIL optional in CPython. He presented at the Python Language Summit, providing updates on his progress and future plans for the project.
    • PEP 703 – Making the Global Interpreter Lock Optional in CPython | peps.python.org
    • PEP 703 - Discussion on Python.org
    • What Is the Standard Library For? – This post summarizes a conversation at the Python Language Summit proposing that guidelines be defined for when something should be added to the standard library.
    • Python’s .__call__() Method: Creating Callable Instances – In this tutorial, you’ll learn what a callable is in Python and how to create callable instances using the .__call__() special method in your custom classes. You’ll also code several examples of practical use cases for callable instances in Python.
    • The Power of Bit Manipulation – In this article, you learn about bit manipulation and how to solve problems efficiently using it in Python.
    • Using Kivy for GUI Development – Kivy is an open-source Python library for developing desktop and mobile GUI apps. It’s supported on Windows, Linux, macOS, Android, and iOS. This article introduces you to Kivy and teaches you how to build your first GUI with it.
    • Discussion:

      • How Do You Deal With Large Python Code Bases?
      • Projects:

        • unimport: Remove Unused Import Statements in Your Code
        • memocast: 🎧 A small iOS app for e.g. iPhone that allow you to add links heard in podcasts into reminders
        • Additional Links:

          • Binary, Bytes, and Bitwise Operators in Python – Real Python
          • Build a Mobile Application With the Kivy Python Framework – Real Python
          • Open Source ERP and CRM | Odoo
          • Moodle - Open-source learning platform | Moodle.org
          • rsync-time-machine.py: Time Machine-style backups using rsync
          • Pythonista for iOS
          • Level up your Python skills with our expert-led courses:

            • Python Basics: Object-Oriented Programming
            • Simplify Python GUI Development With PySimpleGUI
            • Build Cross-Platform GUI Apps With Kivy
            • 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

              377 Listeners

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

              Software Engineering Radio - the podcast for professional software developers

              265 Listeners

              The Changelog: Software Development, Open Source by Changelog Media

              The Changelog: Software Development, Open Source

              287 Listeners

              LINUX Unplugged by Jupiter Broadcasting

              LINUX Unplugged

              262 Listeners

              Thoughtworks Technology Podcast by Thoughtworks

              Thoughtworks Technology Podcast

              41 Listeners

              Talk Python To Me by Michael Kennedy

              Talk Python To Me

              584 Listeners

              Software Engineering Daily by Software Engineering Daily

              Software Engineering Daily

              628 Listeners

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

              Super Data Science: ML & AI Podcast with Jon Krohn

              294 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

              988 Listeners

              CoRecursive: Coding Stories by Adam Gordon Bell - Software Developer

              CoRecursive: Coding Stories

              186 Listeners

              DataFramed by DataCamp

              DataFramed

              269 Listeners

              Practical AI by Practical AI LLC

              Practical AI

              190 Listeners

              The Stack Overflow Podcast by The Stack Overflow Podcast

              The Stack Overflow Podcast

              63 Listeners