Log in

goodpods headphones icon

To access all our features

Open the Goodpods app
Close icon
The Real Python Podcast - Options for Packaging Your Python Application: Wheels, Docker, and More

Options for Packaging Your Python Application: Wheels, Docker, and More

08/28/20 • 74 min

The Real Python Podcast

Have you wondered, how should I package my Python code? You’ve written the application, but now you need to distribute it to the machines it’s intended to run on. It depends on what the code is, the libraries it depends on, and with whom do you want to share it. This week on the show we have Itamar Turner-Trauring, creator of the website pythonspeed.com. We discuss his article “Options for Packaging Your Python Code: Wheels, Conda, Docker, and More,” covering the how of sharing your code.

Itamar also briefly discusses his Python memory profiler named Fil. We talk about his recent PyCon 2020 presentation, “Small Big Data: What to do When Your Data Doesn’t Fit in Memory.” We also cover several of the resources available on his website for data scientists that want to get deeper into Docker.

Course Spotlight: Python Coding Interviews: Tips & Best Practices

In this step-by-step course, you’ll learn how to take your Python coding interview skills to the next level and use Python’s built-in functions and modules to solve problems faster and more easily.

Topics:

  • 00:00:00 – Introduction
  • 00:01:36 – About the naming of pythonspeed.com
  • 00:03:47 – Fil - Python Memory Profiler
  • 00:06:44 – Small Big Data: What to do when your data doesn’t fit in memory - PyCon 2020
  • 00:12:17 – Options for packaging your Python code: Wheels, Conda, Docker, and more
  • 00:15:13 – Python Wheels
  • 00:19:22 – pipx: Install and Run Python Applications in Isolated Environments
  • 00:20:52 – PEX, and friends
  • 00:24:51 – System Package, RPM or DEB
  • 00:29:42 – Conda Packaging and conda-forge
  • 00:36:09 – Video Course Spotlight
  • 00:37:23 – Self-contained executable: PyInstaller, PyOxidizer, Briefcase
  • 00:43:45 – Container image (Docker, Singularity)
  • 00:54:55 – Why alpine may not be the best choice
  • 01:05:28 – Singularity
  • 01:07:50 – What are you excited about in the world of Python?
  • 01:10:40 – What do you want to learn next?
  • 01:13:54 – Thanks and Goodbye

Show Links:

plus icon
bookmark

Have you wondered, how should I package my Python code? You’ve written the application, but now you need to distribute it to the machines it’s intended to run on. It depends on what the code is, the libraries it depends on, and with whom do you want to share it. This week on the show we have Itamar Turner-Trauring, creator of the website pythonspeed.com. We discuss his article “Options for Packaging Your Python Code: Wheels, Conda, Docker, and More,” covering the how of sharing your code.

Itamar also briefly discusses his Python memory profiler named Fil. We talk about his recent PyCon 2020 presentation, “Small Big Data: What to do When Your Data Doesn’t Fit in Memory.” We also cover several of the resources available on his website for data scientists that want to get deeper into Docker.

Course Spotlight: Python Coding Interviews: Tips & Best Practices

In this step-by-step course, you’ll learn how to take your Python coding interview skills to the next level and use Python’s built-in functions and modules to solve problems faster and more easily.

Topics:

  • 00:00:00 – Introduction
  • 00:01:36 – About the naming of pythonspeed.com
  • 00:03:47 – Fil - Python Memory Profiler
  • 00:06:44 – Small Big Data: What to do when your data doesn’t fit in memory - PyCon 2020
  • 00:12:17 – Options for packaging your Python code: Wheels, Conda, Docker, and more
  • 00:15:13 – Python Wheels
  • 00:19:22 – pipx: Install and Run Python Applications in Isolated Environments
  • 00:20:52 – PEX, and friends
  • 00:24:51 – System Package, RPM or DEB
  • 00:29:42 – Conda Packaging and conda-forge
  • 00:36:09 – Video Course Spotlight
  • 00:37:23 – Self-contained executable: PyInstaller, PyOxidizer, Briefcase
  • 00:43:45 – Container image (Docker, Singularity)
  • 00:54:55 – Why alpine may not be the best choice
  • 01:05:28 – Singularity
  • 01:07:50 – What are you excited about in the world of Python?
  • 01:10:40 – What do you want to learn next?
  • 01:13:54 – Thanks and Goodbye

Show Links:

Previous Episode

undefined - Python Wheels and Pass by Reference in Python

Python Wheels and Pass by Reference in Python

Have you wondered what are Python wheels? How are they used to package Python code? Does Python use pass by value or pass by reference? This week on the show, David Amos is here to help answer these questions, and he has brought another batch of PyCoder’s Weekly articles and projects.

We talk about an article called “What are Python Wheels, and Why Should You Care.” David talks about a Real Python article about pass by reference in Python. We cover several other articles and projects from the Python community including: transcribing speech to text, 4 powerful features Python is still missing, 10 awesome pythonic one-liners, and even more options for packaging your Python code.

Course Spotlight: Practical Recipes for Working With Files in Python

In this course, you’ll learn how you can work with files in Python by using built-in modules to perform practical tasks that involve groups of files, like renaming them, moving them around, archiving them, and getting their metadata.

Topics:

  • 00:00:00 – Introduction
  • 00:01:25 – 4 Powerful Features Python Is Still Missing
  • 00:14:41 – What Are Python Wheels and Why Should You Care?
  • 00:23:58 – 10 Awesome Pythonic One-Liners Explained
  • 00:38:11 – Video Course Spotlight
  • 00:39:14 – How to Transcribe Speech Recordings Into Text With Python
  • 00:43:34 – Pass by Reference in Python: Background and Best Practices
  • 00:49:54 – Options for Packaging Your Python Code: Wheels, Conda, Docker, and More
  • 00:55:53 – PyOxidizer: A Modern Python Application Packaging and Distribution Tool
  • 01:00:13 – Python and PDF: A Review of Existing Tools
  • 01:04:01 – Thanks and Goodbye

Show Links:

4 Powerful Features Python Is Still Missing – Python doesn’t have true constants, nor does it implement features like tail recursion optimization that many compiled languages employ. Find out what other features Python is “missing” when compared to other languages, and why the core developers haven’t added these features to the language.

What Are Python Wheels and Why Should You Care? – In this tutorial, you’ll learn what Python wheels are and why you should care as both a developer and end user of Python packages. You’ll see how the wheel format has gained momentum over the last decade and how it has made the package installation process faster and more stable.

10 Awesome Pythonic One-Liners Explained – Some things in Python are just better on one line.

How to Transcribe Speech Recordings Into Text With Python – Learn to transcribe speech in recordings like MP3s into text with Python and AssemblyAI’s API

Pass by Reference in Python: Background and Best Practices – In this tutorial, you’ll explore the concept of passing by reference and learn how it relates to Python’s own system for handling function arguments. You’ll look at several use cases for passing by reference and learn some best practices for implementing pass-by-reference constructs in Python.

Options for Packaging Your Python Code: Wheels, Conda, Docker, and More – There’s a lot of ways to package your Python code. Find out which one is right for you.

PyOxidizer: A Modern Python Application Packaging and Distribution Tool

Python and PDF: A Review of Existing Tools – The ultimate list of PDF tools in Python.

Additional Links:

Level up your Python skills with our expert-led courses:

Next Episode

undefined - Data Version Control in Python and Real Python Video Transcripts

Data Version Control in Python and Real Python Video Transcripts

Wouldn’t it be nice to a use a form of version control for data? Something that would allow you to track and version your datasets and models. Well, that’s what the tool called DVC is designed to do. This week on the show, David Amos is here and he’s brought another batch of PyCoder’s Weekly articles and projects.

David starts with a Real Python article titled, “Data Version Control With Python and DVC”. We also cover several other articles and projects from the Python community including: where to get exposure to well-written code, delegation – composition and inheritance, good Python project ideas for high school students, never run Python in your downloads folder, and more.

We also have a special guest this week. I talk to Sadie Parker, who recently joined the Real Python team to help create and edit transcripts for all the Real Python video courses. We talk about how to take advantage of all the features this new resource provides. Sadie also discusses how she uses Python to speed up and simplify the editing process. The transcripts and closed captions are now live on the website for all new courses, and we are working through the back catalog.

Course Spotlight: Parallel Iteration With Python’s zip() Function

In this course, you’ll learn how to use the Python zip() function to solve common programming problems. You’ll learn how to traverse multiple iterables in parallel and create dictionaries with just a few lines of code.

Topics:

  • 00:00:00 – Introduction
  • 00:02:01 – Data Version Control With Python and DVC
  • 00:08:57 – Where Do You Go to Get Exposure to Well-Written Code?
  • 00:13:13 – Delegation: Composition and Inheritance in Object-Oriented Programming
  • 00:21:46 – What Are Some Good Python Project Ideas for High School Students?
  • 00:26:53 – Video Course Spotlight
  • 00:27:48 – Never Run Python in Your Downloads Folder
  • 00:35:55 – present: A Terminal-Based Presentation Tool With Colors and Effects
  • 00:37:36 – Mini Raspberry Pi Boston Dynamics–inspired Robot
  • 00:41:48 – Sadie Parker and Transcripts for Real Python Video Courses
  • 00:59:26 – Thanks and Goodbye

Show Links:

Data Version Control With Python and DVC – In this tutorial, you’ll learn to use DVC, a powerful tool that solves many problems encountered in machine learning and data science. You’ll find out how data version control helps you to track your data, share development machines with your team, and create easily reproducible experiments!

Where Do You Go to Get Exposure to Well-Written Code? – Maybe someone needs to start a Python reading club...

Delegation: Composition and Inheritance in Object-Oriented Programming – Delegation is often considered one of the three pillars of object-oriented programming. Learn how to use this powerful concept in Python.

What Are Some Good Python Project Ideas for High School Students? – Honestly, some of these ideas are good for any beginning Pythonista!

Never Run Python in Your Downloads Folder – Learn about security issues that exploit how Python interacts with PATH and why you should always think twice about your current working directory.

present: A Terminal-Based Presentation Tool With Colors and Effects

Mini Raspberry Pi Boston Dynamics–inspired Robot – See how one Redditor taught themselves robotics by building a miniature version of a Boston Dynamic’s robot dog “Spot” using a Raspberry Pi, C++, and Python.

Additional Links:

Episode Comments

Featured in these lists

Generate a badge

Get a badge for your website that links back to this episode

Select type & size
Open dropdown icon
share badge image

<a href="https://goodpods.com/podcasts/the-real-python-podcast-186798/options-for-packaging-your-python-application-wheels-docker-and-more-17007716"> <img src="https://storage.googleapis.com/goodpods-images-bucket/badges/generic-badge-1.svg" alt="listen to options for packaging your python application: wheels, docker, and more on goodpods" style="width: 225px" /> </a>

Copy