Rollbar

Sandstorm.io with Asheesh Laroia - Episode 75

Summary

Sandstorm.io is an innovative platform that aims to make self-hosting applications easier and more maintainable for the average individual. This week we spoke with Asheesh Laroia about why running your own services is desirable, how they have made security a first priority, how Sandstorm is architected, and what the installation process looks like.

Brief Introduction

  • Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great.
  • I would like to thank everyone who has donated to the show. Your contributions help us make the show sustainable. For details on how to support the show you can visit our site at pythonpodcast.com
  • Linode is sponsoring us this week. Check them out at linode.com/podcastinit and get a $20 credit to try out their fast and reliable Linux virtual servers for your next project
  • We are also sponsored by Rollbar. Rollbar is a service for tracking and aggregating your application errors so that you can find and fix the bugs in your application before your users notice they exist. Use the link rollbar.com/podcastinit to get 90 days and 300,000 errors for free on their bootstrap plan.
  • Hired has also returned as a sponsor this week. If you’re looking for a job as a developer or designer then Hired will bring the opportunities to you. Sign up at hired.com/podcastinit to double your signing bonus.
  • Visit our site to subscribe to our show, sign up for our newsletter, read the show notes, and get in touch.
  • To help other people find the show you can leave a review on iTunes, or Google Play Music, and tell your friends and co-workers
  • Join our community! Visit discourse.pythonpodcast.com for your opportunity to find out about upcoming guests, suggest questions, and propose show ideas.
  • I would also like to mention that the organizers of PyCon Zimbabwe are looking to the global Python community for help in supporting their event. If you would like to donate the link will be in the show notes.
  • Your hosts as usual are Tobias Macey and Chris Patti
  • Today we’re interviewing Asheesh Laroia about Sandstorm.io, a project that is trying to make self-hosted applications easy and secure for everyone.

Interview with Asheesh Laroia

  • Introductions
  • How did you get introduced to Python? – Tobias
  • Can you start by telling everyone about the Sandstorm project and how you got involved with it? – Tobias
  • What are some of the reasons that an individual would want to self-host their own applications rather than using comparable services available through third parties? – Tobias
  • How does Sandstorm try to make the experience of hosting these various applications simple and enjoyable for the broadest variety of people? – Tobias
  • What does the system architecture for Sandstorm look like? – Tobias
  • I notice that Sandstorm requires a very recent Linux kernel version. What motivated that choice and how does it affect adoption? – Chris
  • One of the notable aspects of Sandstorm is the security model that it uses. Can you explain the capability-based authorization model and how it enables Sandstorm to ensure privacy for your users? – Tobias
  • What are some of the most difficult challenges facing you in terms of software architecture and design? – Tobias
  • What is involved in setting up your own server to run Sandstorm and what kinds of resources are required for different use cases? – Tobias
  • You have a number of different applications available for users to install. What is involved in making a project compatible with the Sandstorm runtime environment? Are there any limitations in terms of languages or application architecture for people who are targeting your platform? – Tobias
  • How much of Sandstorm is written in Python and what other languages does it use? – Tobias

Keep In Touch

Picks

Links

The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Python at Zalando - Episode 74

Summary

Open source has proven its value in many ways over the years. In many companies that value is purely in terms of consuming available projects and platforms. In this episode Zalando describes their recent move to creating and releasing a number of their internal projects as open source and how that has benefited their business. We also discussed how they are leveraging Python and a couple of the libraries that they have published.

Brief Introduction

  • Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great.
  • I would like to thank everyone who has donated to the show. Your contributions help us make the show sustainable. For details on how to support the show you can visit our site at pythonpodcast.com
  • Linode is sponsoring us this week. Check them out at linode.com/podcastinit and get a $20 credit to try out their fast and reliable Linux virtual servers for your next project
  • Rollbar is also sponsoring us this week. Rollbar is a service for tracking and aggregating your application errors so that you can find and fix the bugs in your application before your users notice they exist. Use the link rollbar.com/podcastinit to get 90 days and 300,000 errors for free on their bootstrap plan.
  • Hired has also returned as a sponsor this week. If you’re looking for a job as a developer or designer then Hired will bring the opportunities to you. Sign up at hired.com/podcastinit to double your signing bonus.
  • Visit our site to subscribe to our show, sign up for our newsletter, read the show notes, and get in touch.
  • To help other people find the show you can leave a review on iTunes, or Google Play Music, and tell your friends and co-workers
  • Join our community! Visit discourse.pythonpodcast.com for your opportunity to find out about upcoming guests, suggest questions, and propose show ideas.
  • Your hosts as usual are Tobias Macey and Chris Patti
  • Today we’re interviewing Jie Bao and João Santos about their use of Python at Zalando

Interview with Zalando

  • Introductions
  • How did you get introduced to Python? – Tobias
  • Can you start by telling us a bit about what Zalando does and some of the technologies that you use? – Tobias
  • What role does Python play in your environment? – Tobias
  • Is the use of Python for a particular project governed by any particular operational guidelines or is it largely a matter of developer choice? – Tobias
  • Given that you have such a variety of platforms to support, how do you architect your systems to keep them easy to maintain and reason about? – Tobias
  • One of the projects that you have open sourced is Connexion. Can you explain a bit about what that is and what it is used for at Zalando? – Tobias
  • What made you choose to standardize on Swagger/OpenAPI vs RAML or some of the other API standards? – Tobias
  • Did Connexion start its life as open source or was it extracted from another project? – Tobias
  • ExpAn is another one of your projects that is written in Python. What do you use that for? – Tobias
  • Can you describe the internal implementation of ExpAn and what it takes to get it set up? – Tobias
  • Given the potential complexity of and the need for statistical significance in the data for proper A/B testing, how did you design ExpAn to satisfy those requirements? – Tobias
  • Given the laws in Germany around digital privacy, were there any special considerations that needed to be made in the collection strategy for the data that gets used in ExpAn? – Tobias

Keep In Touch

Picks

The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Alex Martelli - Episode 73

Summary

Alex Martelli has dedicated a large part of his career to teaching others how to work with software. He has the highest number of Python questions answered on Stack Overflow, he has written and co-written a number of books on Python, and presented innumerable times at conferences in multiple countries. We spoke to him about how he got started in software, his work with Google, and the trends in development and design patterns that are shaping modern software engineering.

Brief Introduction

  • Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great.
  • I would like to thank everyone who has donated to the show. Your contributions help us make the show sustainable. For details on how to support the show you can visit our site at pythonpodcast.com
  • Linode is sponsoring us this week. Check them out at linode.com/podcastinit and get a $20 credit to try out their fast and reliable Linux virtual servers for your next project
  • We also have a returning sponsor this week. Rollbar is a service for tracking and aggregating your application errors so that you can find and fix the bugs in your application before your users notice they exist. Use the link rollbar.com/podcastinit to get 90 days and 300,000 errors for free on their bootstrap plan.
  • Hired is sponsoring us this week. If you’re looking for a job as a developer or designer then Hired will bring the opportunities to you. Sign up at hired.com/podcastinit to double your signing bonus.
  • Visit our site to subscribe to our show, sign up for our newsletter, read the show notes, and get in touch.
  • To help other people find the show you can leave a review on iTunes, or Google Play Music, and tell your friends and co-workers.
  • Join our community! Visit discourse.pythonpodcast.com for your opportunity to find out about upcoming guests, suggest questions, and propose show ideas.
  • Your hosts as usual are Tobias Macey and Chris Patti
  • Today we’re interviewing Alex Martelli

Interview with Alex Martelli

  • Introductions
  • How did you get introduced to Python? – Chris
  • You have achieved a number of honors and recognitions throughout your career for significant technical achievements. What kind of learning strategies do you use to enable you to achieve mastery of technical topics? – Tobias
  • How do you keep the Python In A Nutshell book current as aspects of the core language and its libraries change? – Chris
  • You are known for your prolific contributions to Stack Overflow, particularly on topics pertaining to Python. Was that a specific goal that you had set for yourself or did it happen organically? – Tobias
  • When answering Stack Overflow questions, do you usually already know the answers or do you treat it as a learning opportunity? – Tobias
  • What are some of the most difficult Python questions that you have been faced with? – Tobias
  • You have presented quite a number of times at various Python conferences. What are some of your favorite talks? – Tobias
  • Design patterns and idiomatic code are common themes in a number of your presentations. Why is it important for developers to understand these concepts and what are some of your favorite resources on the topic? – Tobias
  • What do you see as the most influential trends in software development and design, both currently and heading into the future? – Tobias
  • As a long-time computer engineer, are there any features or ideas from other languages that you would like to see incorporated into Python?

Picks

Links

The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Pillow with Alex Clark - Episode 59

Visit our site to listen to past episodes, support the show, join our community, and sign up for our mailing list.

Summary

If you need to work with images the Pillow is the library to use. The Python Image Libary (PIL) has long been the gold standard for resizing, analyzing, and processing pictures in Python. Pillow is the modern fork that is bringing the PIL into the future so that we can all continue to use it moving forward. This week I spoke with Alex Clark about what first led him to fork the project and his experience maintaining it, including the migration to Python 3.

Brief Introduction

  • Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great.
  • I would like to thank everyone who has donated to the show. Your contributions help us make the show sustainable. For details on how to support the show you can visit our site at pythonpodcast.com
  • Linode is sponsoring us this week. Check them out at linode.com/podcastinit and get a $20 credit to try out their fast and reliable Linux virtual servers for your next project
  • We also have a new sponsor this week. Rollbar is a service for tracking and aggregating your application errors so that you can find and fix the bugs in your application before your users notice they exist. Use the link rollbar.com/podcastinit to get 90 days and 300,000 errors for free on their bootstrap plan.
  • Visit our site to subscribe to our show, sign up for our newsletter, read the show notes, and get in touch.
  • To help other people find the show you can leave a review on iTunes, or Google Play Music, and tell your friends and co-workers
  • Join our community! Visit discourse.pythonpodcast.com for your opportunity to find out about upcoming guests, suggest questions, and propose show ideas.
  • Your host as usual is Tobias Macey
  • Today we’re interviewing Alex Clark about the Pillow project

Interview with Alex Clark

  • Introductions
  • How did you get introduced to Python? – Tobias
  • What were you working on that led you to forking the Python Image Library (PIL)? – Tobias
  • What does Fredrik Lundh (author of PIL) think of Pillow?
  • When you first forked the PIL project did you think that you would still be maintaining and updating that fork by now? – Tobias
  • Who else works on the project with you and how did they get involved? – Tobias
  • What kinds of special knowledge or experience have you found to be necessary for understanding and extending the routines in the library and for adding new capabilities? – Tobias
  • Can you describe what PIL and now Pillow are and what kinds of use cases they support? – Tobias
  • How does Pillow compare to libraries with a similar purpose such as ImageMagick? – Tobias
  • I have seen Pillow used in computer vision contexts. What are some of the capabilities of the library that lend themselves to this purpose? – Tobias
  • What architectural patterns does Pillow use to make image operations fast and flexible? Have you found the need to do any significant refactorings of the original code to make it compatible with modern uses and execution environments? – Tobias
  • Have you kept up to date with newer image formats, such as webp? Are there any image formats that Pillow does not support that you would like to see added to the project? – Tobias
  • What are some of the most interesting or innovative uses of Pillow that you have seen? – Tobias
  • What do you have planned for the future of Pillow? – Tobias

Keep In Touch

Picks

Links

The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Wagtail with Tom Dyson - Episode 58

Visit our site to sign up for the newsletter, explore past episodes, subscribe to the show, and help support our work.

Summary

If you are operating a website that needs to publish and manage content on a regular basis, a CMS (Content Management System) becomes the obvious choice for reducing your workload. There are a plethora of options available, but if you are looking for a solution that leverages the power of Python and exposes its flexibility then you should take a serious look at Wagtail. In this episode Tom Dyson explains how Wagtail came to be created, what sets it apart from other options, and when you should implement it for your projects.

Brief Introduction

  • Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great.
  • I would like to thank everyone who has donated to the show. Your contributions help us make the show sustainable. For details on how to support the show you can visit our site at pythonpodcast.com
  • Linode is sponsoring us this week. Check them out at linode.com/podcastinit and get a $20 credit to try out their fast and reliable Linux virtual servers for your next project
  • We also have a new sponsor this week. Rollbar is a service for tracking and aggregating your application errors so that you can find and fix the bugs in your application before your users notice they exist. Use the link rollbar.com/podcastinit to get 90 days and 300,000 errors for free on their bootstrap plan.
  • Visit our site to subscribe to our show, sign up for our newsletter, read the show notes, and get in touch.
  • To help other people find the show you can leave a review on iTunes, or Google Play Music, and tell your friends and co-workers
  • Join our community! Visit discourse.pythonpodcast.com for your opportunity to find out about upcoming guests, suggest questions, and propose show ideas.
  • Your hosts as usual are Tobias Macey and Chris Patti
  • Today we are interviewing Tom Dyson about Wagtail, a modern and sophisticated CMS for Django.

Interview with Tom Dyson

  • Introductions
  • How did you get introduced to Python? – Chris
  • Can you start by explaining what a content management system is and why they are useful? – Tobias
  • How did the Wagtail project get started and what makes it stand out from other comparable offerings? – Tobias
  • What made you choose Django as the basis for the project as opposed to another framework or language such as Pyramid, Flask, or Rails? – Tobias
  • What is your target user and are there any situations in which you would encourage someone to use a different CMS? – Tobias
  • Can you explain the software design approach that was taken with Wagtail and describe the challenges that have been overcome along the way? – Tobias
  • How did you approach the project in a way to make the CMS feel well integrated into the other apps in a given Django project so that it doesn’t feel like an afterthought? – Tobias
  • For someone who wants to get started with using Wagtail, what does that experience look like? – Tobias
  • What are some of the features that are unique to Wagtail? – Tobias
  • Given that Wagtail is such a flexible tool, what are some of the gotchas that people should watch out for as they are working on a new site? – Tobias
  • Does Wagtail have any built-in support for multi-tenancy? – Tobias
  • Does Wagtail have a plugin system to allow developers to create extensions to the base CMS? – Tobias
  • Having built such a sizable plugin with deep integrations to Django, what are some of the shortcomings in the framework that you would like to see improved? – Tobias

Keep In Touch

Picks

Links

The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Buildbot with Pierre Tardy - Episode 57

Visit our site to listen to past episodes, support the show, join our community, and sign up for our mailing list.

Summary

As technology professionals, we need to make sure that the software we write is reliably bug free and the best way to do that is with a continuous integration and continuous deployment pipeline. This week we spoke with Pierre Tardy about Buildbot, which is a Python framework for building and maintaining CI/CD workflows to keep our software projects on track.

Brief Introduction

  • Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great.
  • I would like to thank everyone who has donated to the show. Your contributions help us make the show sustainable. For details on how to support the show, subscribe, join our newsletter, check out the show notes, and get in touch you can visit our site at pythonpodcast.com
  • Linode is sponsoring us this week. Check them out at linode.com/podcastinit and get a $20 credit to try out their fast and reliable Linux virtual servers for your next project
  • We are also sponsored by Rollbar this week. Rollbar is a service for tracking and aggregating your application errors so that you can find and fix the bugs in your application before your users notice they exist. Use the link rollbar.com/podcastinit to get 90 days and 300,000 errors for free on their bootstrap plan.
  • Join our community! Visit discourse.pythonpodcast.com for your opportunity to find out about upcoming guests, suggest questions, and propose show ideas.
  • Your hosts as usual are Tobias Macey and Chris Patti
  • Today we are interviewing Pierre Tardy about the Buildbot continuous integration system.

Interview with Pierre Tardy

  • Introductions
  • How did you get introduced to Python? – Chris
  • For anyone who isn’t familiar with it can you explain what Buildbot is? – Tobias
  • What was the original inspiration for creating the project? – Tobias
  • How did you get involved in the project? – Tobias
  • Can you describe the internal architecture of Buildbot and outline how a typical workflow would look? – Tobias
  • There are a number of packages out on PyPI for doing subprocess invocation and control, in addition to the functions in the standard library. Which does buildbot use and why? – Chris
  • What makes Buildbot stand out from other CI/CD options that are available today? – Tobias
  • Scaling a large CI/CD system can become a challenge. What are some of the limiting factors in the Buildbot architecture and in what ways have you seen people work to overcome them? – Tobias
  • Are there any design or architecture choices that you would change in the project if you were to start it over? – Tobias
  • If you were starting from scratch on implementing buildbot today, would you still use Python? Why? – Chris
  • What are some of the most difficult challenges that have been faced in the creation and evolution of the project? – Tobias
  • What are some of the most notable uses of Buildbot and how do they uniquely leverage the capabilities of the framework? – Tobias
  • What are some of the biggest challenges that people face when beginning to implement Buildbot in their architecture? – Tobias
  • Does buildbot support the use of docker or public clouds as a part of the build process? – Chris
  • I know that the execution engine for Buildbot is written in Twisted. What benefits does that provide and how has that influenced any efforts for providing Python 3 support? – Tobias
  • Does buildbot support build parallelization at all? For instance splitting one very long test run up into 3 instances each running a section of tests to cut build time? – Chris
  • What are some of the most requested features for the project and are there any that would be unreasonably difficult to implement due to the current design of the project? – Tobias
  • Does buildbot offer a plugin system like Jenkins does, or is there some other approach it uses for custom extensions to the base buildbot functionality? – Chris
  • Managing a reliable build pipeline can be operationally challenging. What are some of the thorniest problems for Buildbot in this regard and what are some of the mechanisms that are built in to simplify the operational characteristics? – Tobias
  • What were some of the challenges around supporting slaves running on platforms with very different environmental characteristics like Microsoft Windows? – Chris
  • What is on the roadmap for Buildbot? – Tobias

Keep In Touch

Picks

Links

The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Onion IoT with Lazar and Zheng - Episode 56

Visit our site to listen to past episodes, support the show, join our community, and sign up for our mailing list.

Summary

One of the biggest new trends in technology is the Internet of Things and one of the driving forces is the wealth of new sensors and platforms that are being continually introduced. In this episode we spoke with the founder and head engineer of one such platform named Onion. The Omega board is a new hardware platform that runs OpenWRT and lets you configure it using a number of languages, not least of which is Python.

Brief Introduction

  • Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great.
  • I would like to thank everyone who has donated to the show. Your contributions help us make the show sustainable. For details on how to support the show you can visit our site at pythonpodcast.com
  • Linode is sponsoring us this week. Check them out at linode.com/podcastinit and get a $20 credit to try out their fast and reliable Linux virtual servers for your next project
  • We are also sponsored by Rollbar this week. Rollbar is a service for tracking and aggregating your application errors so that you can find and fix the bugs in your application before your users notice they exist. Use the link rollbar.com/podcastinit to get 90 days and 300,000 errors for free on their bootstrap plan.
  • Visit our site to subscribe to our show, sign up for our newsletter, read the show notes, and get in touch.
  • To help other people find the show you can leave a review on iTunes, or Google Play Music, and tell your friends and co-workers
  • Join our community! Visit discourse.pythonpodcast.com for your opportunity to find out about upcoming guests, suggest questions, and propose show ideas.
  • The Open Data Science Conference in Boston is happening on May 21st and 22nd. If you use the code EP during registration you will save 20% off of the ticket price. If you decide to attend then let us know, we’ll see you there!
  • Your hosts as usual are Tobias Macey and Chris Patti
  • Today we are interviewing Lazar and Zheng about the Onion IoT platform

Interview with Lazar and Zheng

  • Introductions
  • How did you get introduced to Python? – Chris
  • What is the Onion platform and how does it leverage Python? – Tobias
  • Can you compare and contrast the Python support you provide for Onion as compared with Raspberry Pi? – Chris
  • I noticed that you are using the OpenWRT distribution of Linux in order to provide support for multiple languages. What was the driving intent behind choosing it and why is multiple language support so important for an IoT product? – Tobias
  • Do you provide any libraries for using with the Omega to abstract away some of the hardware level tasks? What are some of the design considerations that were involved when developing that? – Tobias
  • What are some of the most interesting projects you have seen people build with Python on your platform? – Tobias

Keep In Touch

Picks

The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

LibCloud with Anthony Shaw - Episode 55

Visit our site to listen to past episodes, support the show, join our community, and sign up for our mailing list.

Summary

More and more of our applications are running in the cloud and there are increasingly more providers to choose from. The LibCloud project is a Python library to help us manage the complexity of our environments from a uniform and pleasant API. In this episode Anthony Shaw joins us to explain how LibCloud works, the community that builds and supports it, and the myriad ways in which it can be used. We also got a peek at some of the plans for the future of the project.

Brief Introduction

  • Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great.
  • Subscribe on iTunes, TuneIn or RSS
  • Follow us on Twitter or Google+
  • Give us feedback! Leave a review on iTunes, Tweet to us, send us an email or leave us a message on Google+
  • Join our community! Visit discourse.pythonpodcast.com for your opportunity to find out about upcoming guests, suggest questions, and propose show ideas.
  • I would like to thank everyone who has donated to the show. Your contributions help us make the show sustainable. For details on how to support the show you can visit our site at pythonpodcast.com
  • Linode is sponsoring us this week. Check them out at linode.com/podcastinit and get a $20 credit to try out their fast and reliable Linux virtual servers for your next project
  • The Open Data Science Conference in Boston is happening on May 21st and 22nd. If you use the code EP during registration you will save 20% off of the ticket price. If you decide to attend then let us know, we’ll see you there!
  • Your hosts as usual are Tobias Macey and Chris Patti
  • Today we are interviewing Anthony Shaw about the Apache LibCloud project

Interview with Anthony Shaw

  • Introductions
  • How did you get introduced to Python? – Chris
  • What is LibCloud and how did it get started? – Tobias
  • How much overhead does using libcloud impose versus native SDKs for performance sensitive APIs like block storage? – Chris
  • What are some of the design patterns and abstractions in the library that allow for supporting such a large number of cloud providers with a mostly uniform API? – Tobias
  • Given that there are such differing services provided by the different cloud platforms, do you face any difficulties in exposing those capabilities? – Tobias
  • How does LibCloud compare to similar projects such as the Fog gem in Ruby? – Tobias
  • What inspired the choice of Python as the language for creating the LibCloud project? Would you make the same choice again? – Tobias
  • Which versions of Python are supported and what challenges has that created? – Tobias
  • What is your opinion on the state of PyPI as a package maintainer? What statistics are most useful to you and what else do you wish you could track? – Tobias
  • Could you walk our listeners through the under the cover process details of instantiating a computer instance in say, Azure using libcloud? – Chris
  • Does LibCloud have any native support for parallelization, such as for the purpose of launching a large number of compute instances simultaneously? – Tobias
  • What does it mean to be an Apache project and what benefits does it provide? – Tobias
  • What are some of the most notable projects that leverage LibCloud for interacting with platform and infrastructure service providers? – Tobias
  • Could you describe how libcloud could be extended to abstract away a new type of service that’s not yet supported – e.g. a database? – Chris
  • Would you suggest that libcloud users extend libcloud to cover ‘native’ services they might use like AWS Lambda, or should they mix libcloud and ‘native’ SDKs in cases like this? – Chris
  • Could you talk a little bit about the cloud oriented network services that libcloud supports? Is it possible to create AWS VPCs, subnets, etc using libcloud? – Chris
  • Do you know if people use LibCloud for abstracting the APIs of a single cloud provider, even if they don’t have any intention of using a different platform? – Tobias
  • Do you think that people are more likely to use LibCloud for bridging across muliple public cloud platforms, or is it more commonly used in a hybrid cloud type of environment? – Tobias
  • What is on the roadmap for LibCloud that people should keep an eye out for? – Tobias

Keep In Touch

Picks

Links

The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Pip and the Python Package Authority with Donald Stufft - Episode 54

Visit our site to listen to past episodes, support the show, join our community, and sign up for our mailing list.

Summary

As Python developers we have all used pip to install the different libraries and projects that we need for our work, but have you ever wondered about who works on pip and how the package archive we all know and love is maintained? In this episode we interviewed Donald Stufft who is the primary maintainer of pip and the Python Package Index about how he got involved with the projects, what kind of work is involved, and what is on the roadmap. Give it a listen and then give him a big thank you for all of his hard work!

Brief Introduction

  • Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great.
  • Subscribe on iTunes, Stitcher, TuneIn or RSS
  • Google Play Music just launched support for podcasts, so now you can check us out there and subscribe to the show.
  • Follow us on Twitter or Google+
  • Give us feedback! Leave a review on iTunes, Tweet to us, send us an email or leave us a message on Google+
  • Join our community! Visit discourse.pythonpodcast.com for your opportunity to find out about upcoming guests, suggest questions, and propose show ideas.
  • I would like to thank everyone who has donated to the show. Your contributions help us make the show sustainable. For details on how to support the show you can visit our site at pythonpodcast.com
  • Linode is sponsoring us this week. Check them out at linode.com/podcastinit and get a $20 credit to try out their fast and reliable Linux virtual servers for your next project
  • We also have a new sponsor this week. Rollbar is a service for tracking and aggregating your application errors so that you can fix the bugs in your application before your users notice they exist. Use the link rollbar.com/podcatinit to get 90 days and 300,000 errors for free on their bootstrap plan.
  • The Open Data Science Conference in Boston is happening on May 21st and 22nd. If you use the code EP during registration you will save 20% off of the ticket price. If you decide to attend then let us know, we’ll see you there!
  • Your hosts as usual are Tobias Macey and Chris Patti
  • Today we are interviewing Donald Stufft about Pip and the Python Packaging Authority

Interview with Donald Stufft

  • Introductions
  • How did you get introduced to Python? – Chris
  • How did you get involved with the Pip project? – Tobias
  • What is the Python Packaging Authority and what does it do? – Tobias
  • How is PyPi / the Python Packaging Authority funded? – Chris
  • What is your opinion on the current state of Python packaging? Are there lessons from other languages and package managers that you think should be adopted by Python? – Tobias
  • What was involved in getting pip into the standard Python distribution? Was there any controversy around this? – Chris
  • Can you describe some of the mechanics of Pip and how it differs from the other packaging systems that Python has used in the past? – Tobias
  • Does pip interact at all with virtualenv, pyenv and the like? – Chris
  • The newest package format for Python is the wheel system. Can you describe what that is and what its benefits are? – Tobias
  • What are the biggest challenges that you have encountered while working on Pip? – Tobias
  • What does the infrastructure for the Python Package Index look like? – Tobias
  • What have been some of the challenges around scaling Pypi’s infrastructure to meet demand? – Chris
  • You’re currently working on a replacement for the PyPI site with the Warehouse project. Can you explain your motivation for that and how it improves on the current system? – Tobias
  • Where do you see the future of dependency management in Python headed? – Chris
  • A few days ago there was a big story about how an NPM library was removed from the index, breaking a large number of dependent projects and applications. Do you think that anything like that could happen in the Python ecosystem? – Tobias
  • What’s on the roadmap for Pip? – Tobias

Keep In Touch

Picks

Links

The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA