The Python Podcast.__init__ – Détails, épisodes et analyse
Détails du podcast
Informations techniques et générales issues du flux RSS du podcast.


Classements récents
Dernières positions dans les classements Apple Podcasts et Spotify.
Apple Podcasts
🇫🇷 France - technology
26/09/2025#92🇨🇦 Canada - technology
11/03/2025#94🇨🇦 Canada - technology
18/02/2025#90
Spotify
Aucun classement récent disponible
Liens partagés entre épisodes et podcasts
Liens présents dans les descriptions d'épisodes et autres podcasts les utilisant également.
See all- https://en.wikipedia.org/wiki/Dune_
64 partages
- https://en.wikipedia.org/wiki/Flow_
53 partages
- https://en.wikipedia.org/wiki/Extract
47 partages
Qualité et score du flux RSS
Évaluation technique de la qualité et de la structure du flux RSS.
See allScore global : %
Historique des publications
Répartition mensuelle des publications d'épisodes au fil des années.
Update Your Model's View Of The World In Real Time With Streaming Machine Learning Using River
Épisode 388
lundi 12 décembre 2022 • Durée 01:16:23
This is a cross-over episode from our new show The Machine Learning Podcast, the show about going from idea to production with machine learning.
SummaryThe majority of machine learning projects that you read about or work on are built around batch processes. The model is trained, and then validated, and then deployed, with each step being a discrete and isolated task. Unfortunately, the real world is rarely static, leading to concept drift and model failures. River is a framework for building streaming machine learning projects that can constantly adapt to new information. In this episode Max Halford explains how the project works, why you might (or might not) want to consider streaming ML, and how to get started building with River.
Announcements- Hello and welcome to the Machine Learning Podcast, the podcast about machine learning and how to bring it from idea to delivery.
- Building good ML models is hard, but testing them properly is even harder. At Deepchecks, they built an open-source testing framework that follows best practices, ensuring that your models behave as expected. Get started quickly using their built-in library of checks for testing and validating your model’s behavior and performance, and extend it to meet your specific needs as your model evolves. Accelerate your machine learning projects by building trust in your models and automating the testing that you used to do manually. Go to themachinelearningpodcast.com/deepchecks today to get started!
- Your host is Tobias Macey and today I’m interviewing Max Halford about River, a Python toolkit for streaming and online machine learning
- Introduction
- How did you get involved in machine learning?
- Can you describe what River is and the story behind it?
- What is "online" machine learning?
- What are the practical differences with batch ML?
- Why is batch learning so predominant?
- What are the cases where someone would want/need to use online or streaming ML?
- The prevailing pattern for batch ML model lifecycles is to train, deploy, monitor, repeat. What does the ongoing maintenance for a streaming ML model look like?
- Concept drift is typically due to a discrepancy between the data used to train a model and the actual data being observed. How does the use of online learning affect the incidence of drift?
- Can you describe how the River framework is implemented?
- How have the design and goals of the project changed since you started working on it?
- How do the internal representations of the model differ from batch learning to allow for incremental updates to the model state?
- In the documentation you note the use of Python dictionaries for state management and the flexibility offered by that choice. What are the benefits and potential pitfalls of that decision?
- Can you describe the process of using River to design, implement, and validate a streaming ML model?
- What are the operational requirements for deploying and serving the model once it has been developed?
- What are some of the challenges that users of River might run into if they are coming from a batch learning background?
- What are the most interesting, innovative, or unexpected ways that you have seen River used?
- What are the most interesting, unexpected, or challenging lessons that you have learned while working on River?
- When is River the wrong choice?
- What do you have planned for the future of River?
- @halford_max on Twitter
- MaxHalford on GitHub
- From your perspective, what is the biggest barrier to adoption of machine learning today?
- Thank you for listening! Don’t forget to check out our other shows. The Data Engineering Podcast covers the latest on modern data management. Podcast.__init__ covers the Python language, its community, and the innovative ways it is being used.
- Visit the site to subscribe to the show, sign up for the mailing list, and read the show notes.
- If you’ve learned something or tried out a project from the show then tell us about it! Email hosts@themachinelearningpodcast.com) with your story.
- To help other people find the show please leave a review on iTunes and tell your friends and co-workers
- River
- scikit-multiflow
- Federated Machine Learning
- Hogwild! Google Paper
- Chip Huyen concept drift blog post
- Dan Crenshaw Berkeley Clipper MLOps
- Robustness Principle
- NY Taxi Dataset
- RiverTorch
- River Public Roadmap
- Beaver tool for deploying online models
- Prodigy ML human in the loop labeling
The intro and outro music is from Hitman’s Lovesong feat. Paola Graziano by The Freak Fandango Orchestra/CC BY-SA 3.0
Sponsored By:
- Linode: Do you want to try out some of the tools and applications that you heard about on Podcast.\_\_init\_\_? Do you have a side project that you want to share with the world? With Linode's managed Kubernetes platform it's now even easier to get started with the latest in cloud technologies. With the combined power of the leading container orchestrator and the speed and reliability of Linode's object storage, node balancers, block storage, and dedicated CPU or GPU instances, you've got everything you need to scale up. Go to [pythonpodcast.com/linode](https://www.pythonpodcast.com/linode) today and get a $100 credit to launch a new cluster, run a server, upload some data, or... And don't forget to thank them for being a long time supporter of Podcast.\_\_init\_\_!
Declarative Machine Learning For High Performance Deep Learning Models With Predibase
Épisode 387
lundi 5 décembre 2022 • Durée 59:22
This is a cross-over episode from our new show The Machine Learning Podcast, the show about going from idea to production with machine learning.
SummaryDeep learning is a revolutionary category of machine learning that accelerates our ability to build powerful inference models. Along with that power comes a great deal of complexity in determining what neural architectures are best suited to a given task, engineering features, scaling computation, etc. Predibase is building on the successes of the Ludwig framework for declarative deep learning and Horovod for horizontally distributing model training. In this episode CTO and co-founder of Predibase, Travis Addair, explains how they are reducing the burden of model development even further with their managed service for declarative and low-code ML and how they are integrating with the growing ecosystem of solutions for the full ML lifecycle.
Announcements- Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great!
- When you’re ready to launch your next app or want to try a project you hear about on the show, you’ll need somewhere to deploy it, so take a look at our friends over at Linode. With their managed Kubernetes platform it’s easy to get started with the next generation of deployment and scaling, powered by the battle tested Linode platform, including simple pricing, node balancers, 40Gbit networking, dedicated CPU and GPU instances, and worldwide data centers. And now you can launch a managed MySQL, Postgres, or Mongo database cluster in minutes to keep your critical data safe with automated backups and failover. Go to pythonpodcast.com/linode and get a $100 credit to try out a Kubernetes cluster of your own. And don’t forget to thank them for their continued support of this show!
- Your host is Tobias Macey and today I’m interviewing Travis Addair about Predibase, a low-code platform for building ML models in a declarative format
- Introduction
- How did you get involved in machine learning?
- Can you describe what Predibase is and the story behind it?
- Who is your target audience and how does that focus influence your user experience and feature development priorities?
- How would you describe the semantic differences between your chosen terminology of "declarative ML" and the "autoML" nomenclature that many projects and products have adopted?
- Another platform that launched recently with a promise of "declarative ML" is Continual. How would you characterize your relative strengths?
- Can you describe how the Predibase platform is implemented?
- How have the design and goals of the product changed as you worked through the initial implementation and started working with early customers?
- The operational aspects of the ML lifecycle are still fairly nascent. How have you thought about the boundaries for your product to avoid getting drawn into scope creep while providing a happy path to delivery?
- Ludwig is a core element of your platform. What are the other capabilities that you are layering around and on top of it to build a differentiated product?
- In addition to the existing interfaces for Ludwig you created a new language in the form of PQL. What was the motivation for that decision?
- How did you approach the semantic and syntactic design of the dialect?
- What is your vision for PQL in the space of "declarative ML" that you are working to define?
- Can you describe the available workflows for an individual or team that is using Predibase for prototyping and validating an ML model?
- Once a model has been deemed satisfactory, what is the path to production?
- How are you approaching governance and sustainability of Ludwig and Horovod while balancing your reliance on them in Predibase?
- What are some of the notable investments/improvements that you have made in Ludwig during your work of building Predibase?
- What are the most interesting, innovative, or unexpected ways that you have seen Predibase used?
- What are the most interesting, unexpected, or challenging lessons that you have learned while working on Predibase?
- When is Predibase the wrong choice?
- What do you have planned for the future of Predibase?
- tgaddair on GitHub
- @travisaddair on Twitter
- From your perspective, what is the biggest barrier to adoption of machine learning today?
- Thank you for listening! Don’t forget to check out our other shows. The Data Engineering Podcast covers the latest on modern data management. The Machine Learning Podcast helps you go from idea to production with machine learning.
- Visit the site to subscribe to the show, sign up for the mailing list, and read the show notes.
- If you’ve learned something or tried out a project from the show then tell us about it! Email hosts@podcastinit.com) with your story.
- To help other people find the show please leave a review on iTunes and tell your friends and co-workers
- Predibase
- Horovod
- Ludwig
- Support Vector Machine
- Hadoop
- Tensorflow
- Uber Michaelangelo
- AutoML
- Spark ML Lib
- Deep Learning
- PyTorch
- Continual
- Overton
- Kubernetes
- Ray
- Nvidia Triton
- Whylogs
- Weights and Biases
- MLFlow
- Comet
- Confusion Matrices
- dbt
- Torchscript
- Self-supervised Learning
The intro and outro music is from Hitman’s Lovesong feat. Paola Graziano by The Freak Fandango Orchestra/CC BY-SA 3.0
Catching Up With Pyre, A Fast Type Checker For Python
Épisode 378
lundi 19 septembre 2022 • Durée 51:45
Static typing versus dynamic typing is one of the oldest debates in software development. In recent years a number of dynamic languages have worked toward a middle ground by adding support for type hints. Python’s type annotations have given rise to an ecosystem of tools that use that type information to validate the correctness of programs and help identify potential bugs. At Instagram they created the Pyre project with a focus on speed to allow for scaling to huge Python projects. In this episode Shannon Zhu discusses how it is implemented, how to use it in your development process, and how it compares to other type checkers in the Python ecosystem.
Announcements- Hello and welcome to Podcast.__init__, the podcast about Python’s role in data and science.
- When you’re ready to launch your next app or want to try a project you hear about on the show, you’ll need somewhere to deploy it, so take a look at our friends over at Linode. With their managed Kubernetes platform it’s easy to get started with the next generation of deployment and scaling, powered by the battle tested Linode platform, including simple pricing, node balancers, 40Gbit networking, dedicated CPU and GPU instances, and worldwide data centers. And now you can launch a managed MySQL, Postgres, or Mongo database cluster in minutes to keep your critical data safe with automated backups and failover. Go to pythonpodcast.com/linode and get a $100 credit to try out a Kubernetes cluster of your own. And don’t forget to thank them for their continued support of this show!
- Your host as usual is Tobias Macey and today I’m interviewing Shannon Zhu about Pyre, a type checker for Python 3 built from the ground up to support gradual typing and deliver responsive incremental checks
- Introductions
- How did you get introduced to Python?
- Can you describe what Pyre is and the story behind it?
- There have been a number of tools created to support various aspects of typing for Python. How would you describe the various goals that they support and how Pyre fits in that ecosystem?
- What are the core goals and notable features of Pyre?
- Can you describe how Pyre is implemented?
- How have the design and goals of the project changed/evolved since you started working on it?
- What are the different ways that Pyre is used in the development workflow for a team or individual?
- What are some of the challenges/roadblocks that people run into when adopting type definitions in their Python projects?
- How has the evolution of type annotations and overall support for them affected your work on Pyre?
- As someone who is working closely with type systems, what are the strongest aspects of Python’s implementation and opportunities for improvement?
- What are the most interesting, innovative, or unexpected ways that you have seen Pyre used?
- What are the most interesting, unexpected, or challenging lessons that you have learned while working on Pyre?
- When is Pyre the wrong choice?
- What do you have planned for the future of Pyre?
- shannonzhu on GitHub
- Tobias
- Lord Of The Rings: The Rings of Power on Amazon Video
- Shannon
- King’s Dilemma board game
- Thank you for listening! Don’t forget to check out our other shows. The Data Engineering Podcast covers the latest on modern data management. The Machine Learning Podcast helps you go from idea to production with machine learning.
- Visit the site to subscribe to the show, sign up for the mailing list, and read the show notes.
- If you’ve learned something or tried out a project from the show then tell us about it! Email hosts@podcastinit.com) with your story.
- To help other people find the show please leave a review on iTunes and tell your friends and co-workers
- PYre
- MyPy
- PyRight
- PyType
- MonkeyType
- Java
- C
- PEP 484
- Flow
- Hack
- Continuous Integration
- OCaml
- PEP 675 – Arbitrary literal strings
- Gradual Typing
- AST == Abstract Syntax Tree
- Language Server Protocol
- Tensor
- Type Arithmetic
- PyCon: Securing Code With The Python Type System
- PyCon: Type Checked Python In The Real World
- PyCon: Łukasz Lange 2022 Keynote
The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA
Making The Case For A (Semi) Formal Specification Of CPython
Épisode 288
mardi 10 novembre 2020 • Durée 36:41
The CPython implementation has grown and evolved significantly over the past ~25 years. In that time there have been many other projects to create compatible runtimes for your Python code. One of the challenges for these other projects is the lack of a fully documented specification of how and why everything works the way that it does. In the most recent Python language summit Mark Shannon proposed implementing a formal specification for CPython, and in this episode he shares his reasoning for why that would be helpful and what is involved in making it a reality.
Announcements- Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great.
- When you’re ready to launch your next app or want to try a project you hear about on the show, you’ll need somewhere to deploy it, so take a look at our friends over at Linode. With the launch of their managed Kubernetes platform it’s easy to get started with the next generation of deployment and scaling, powered by the battle tested Linode platform, including simple pricing, node balancers, 40Gbit networking, dedicated CPU and GPU instances, and worldwide data centers. Go to pythonpodcast.com/linode and get a $100 credit to try out a Kubernetes cluster of your own. And don’t forget to thank them for their continued support of this show!
- Do you want to get better at Python? Now is an excellent time to take an online course. Whether you’re just learning Python or you’re looking for deep dives on topics like APIs, memory mangement, async and await, and more, our friends at Talk Python Training have a top-notch course for you. If you’re just getting started, be sure to check out the Python for Absolute Beginners course. It’s like the first year of computer science that you never took compressed into 10 fun hours of Python coding and problem solving. Go to pythonpodcast.com/talkpython today and get 10% off the course that will help you find your next level. That’s pythonpodcast.com/talkpython, and don’t forget to thank them for supporting the show.
- Your host as usual is Tobias Macey and today I’m interviewing Mark Shannon about his efforts to create a formal specification for the CPython interpreter
- Introductions
- How did you get introduced to Python?
- Can you start by describing the current state of how the Python language and the CPython runtime are defined?
- What is your motivation in advocating for a specification?
- After ~25 years of the language, why is now the time to pursue this effort?
- How does the history of the language and the scope of the ecosystem and community impact the effort required to make this a reality?
- What is involved in creating the specification and where would it be located once complete?
- What are some examples of languages that are formally specified?
- What are the possible benefits of creating a specification for the CPython virtual machine?
- What is the distinction between a specification for the VM as opposed to a specification for the language?
- What are some potential downsides to having a (semi-)formal specification become part of the definition of the interpreter?
- Can you describe the process of doing the work to create the specification?
- How are you approaching the actual definition of the specification (e.g. prose vs programmatic)?
- What are the tradeoffs of prose vs. an executable specification (e.g. TLA+, Alloy)?
- How does this work tie into your goals of improving the speed of the CPython interpreter?
- What are some of the most interesting, unexpected, or challenging aspects of your efforts to bring this specification to CPython?
- How can the community contribute to this effort?
- markshannon on GitHub
- Website
- Tobias
- Mark
- Thank you for listening! Don’t forget to check out our other show, the Data Engineering Podcast for the latest on modern data management.
- Visit the site to subscribe to the show, sign up for the mailing list, and read the show notes.
- If you’ve learned something or tried out a project from the show then tell us about it! Email hosts@podcastinit.com) with your story.
- To help other people find the show please leave a review on iTunes and tell your friends and co-workers
- Join the community in the new Zulip chat workspace at pythonpodcast.com/chat
- CPython
- PyPy
- PEP 380 yield from
- Language Summit
- RustPython
- Jython
- C++
- ML programming language
- Java
- Python Formal Semantics git repository
- CPython PEG Parser Episode with Pablo Galindo and Lysandros Nikolaou
- IETF RFCs
The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA
Bringing Artificial Intelligence Projects From Idea To Production
Épisode 287
mardi 3 novembre 2020 • Durée 47:49
Artificial intelligence applications can provide dramatic benefits to a business, but only if you can bring them from idea to production. Henrik Landgren was behind the original efforts at Spotify to leverage data for new product features, and in his current role he works on an AI system to evaluate new businesses to invest in. In this episode he shares advice on how to identify opportunities for leveraging AI to improve your business, the capabilities necessary to enable aa successful project, and some of the pitfalls to watch out for. If you are curious about how to get started with AI, or what to consider as you build a project, then this is definitely worth a listen.
Announcements- Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great.
- When you’re ready to launch your next app or want to try a project you hear about on the show, you’ll need somewhere to deploy it, so take a look at our friends over at Linode. With the launch of their managed Kubernetes platform it’s easy to get started with the next generation of deployment and scaling, powered by the battle tested Linode platform, including simple pricing, node balancers, 40Gbit networking, dedicated CPU and GPU instances, and worldwide data centers. Go to pythonpodcast.com/linode and get a $100 credit to try out a Kubernetes cluster of your own. And don’t forget to thank them for their continued support of this show!
- Do you want to get better at Python? Now is an excellent time to take an online course. Whether you’re just learning Python or you’re looking for deep dives on topics like APIs, memory mangement, async and await, and more, our friends at Talk Python Training have a top-notch course for you. If you’re just getting started, be sure to check out the Python for Absolute Beginners course. It’s like the first year of computer science that you never took compressed into 10 fun hours of Python coding and problem solving. Go to pythonpodcast.com/talkpython today and get 10% off the course that will help you find your next level. That’s pythonpodcast.com/talkpython, and don’t forget to thank them for supporting the show.
- Equalum’s end to end data ingestion platform is relied upon by enterprises across industries to seamlessly stream data to operational, real-time analytics and machine learning environments. Equalum combines streaming Change Data Capture, replication, complex transformations, batch processing and full data management using a no-code UI. Equalum also leverages open source data frameworks by orchestrating Apache Spark, Kafka and others under the hood. Tool consolidation and linear scalability without the legacy platform price tag. Go to pythonpodcast.com/equalum today to start a free 2 week test run of their platform, and don’t forget to tell them that we sent you.
- Your host as usual is Tobias Macey and today I’m interviewing Henrik Landgren about his experiences building AI platforms to transform business capabilities.
- Introductions
- How did you get introduced to Python?
- Can you start by sharing your thoughts on when, where, and how AI/ML are useful tools for a business?
- What has been your experience in building AI platforms?
- For organizations who are considering investing in AI capabilities, what are some alternative strategies that they might consider first?
- What are the cases where AI is likely to be a wasted effort, or will fail to create a return on investment?
- In order to be succesful in bringing AI products to production, what are the foundational capabilities that are necessary?
- What have you found to be a useful composition of roles and skills for building AI products?
- There are various statistics that all point to a remarkably low success rate for bringing AI into production. What are some of the pitfalls that organizations and engineers should be aware of when undertaking such a project?
- What is your strategy for identifying opportunities for a successful AI product?
- Once you have determined the possible utility for such a project, how do you approach the work of making it a reality?
- What are the common factors in what you built at Spotify and EQT ventures?
- Where do the two efforts diverge?
- Your work on Motherbrain is interesting because of the fact that it is dealing in what seems to be intangible or unpredictable forces. What kinds of input are you relying on to generate useful predictions?
- What are some of the most interesting, innovative, or unexpected uses of AI that you have seen?
- What are some of the biggest failures of AI that you are aware of?
- In your work at Spotify and EQT ventures, what are the most interesting, unexpected, or challenging lessons that you have learned?
- What advice or recommendations do you have for anyone who wants to learn more about the potential for AI and the work involved in bringing it to production?
- @hlandgren on Twitter
- Tobias
- Henrik
- Thank you for listening! Don’t forget to check out our other show, the Data Engineering Podcast for the latest on modern data management.
- Visit the site to subscribe to the show, sign up for the mailing list, and read the show notes.
- If you’ve learned something or tried out a project from the show then tell us about it! Email hosts@podcastinit.com) with your story.
- To help other people find the show please leave a review on iTunes and tell your friends and co-workers
- Join the community in the new Zulip chat workspace at pythonpodcast.com/chat
- EQT Ventures
- Stockholm Sweden
- Motherbrain
- Accenture
- Spotify
- Basic
- C#
- ASP.NET
- Javascript
- Hadoop
- McKinsey
- Deep Learning
- Data Engineer
- Data Scientist
- Machine Learning Engineer
- Discover Weekly Spotify Playlist
- GPT-3
- Deep Fakes
- DBT
The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA
Power Up Your Java Using Python With JPype
Épisode 286
lundi 26 octobre 2020 • Durée 48:40
Python and Java are two of the most popular programming languages in the world, and have both been around for over 20 years. In that time there have been numerous attempts to provide interoperability between them, with varying methods and levels of success. One such project is JPype, which allows you to use Java classes in your Python code. In this episode the current lead developer, Karl Nelson, explains why he chose it as his preferred tool for combining these ecosystems, how he and his team are using it, and when and how you might want to use it for your own projects. He also discusses the work he has done to enable use of JPype on Android, and what is in store for the future of the project. If you have ever wanted to use a library or module from Java, but the rest of your project is already in Python, then this episode is definitely worth a listen.
Announcements- Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great.
- When you’re ready to launch your next app or want to try a project you hear about on the show, you’ll need somewhere to deploy it, so take a look at our friends over at Linode. With the launch of their managed Kubernetes platform it’s easy to get started with the next generation of deployment and scaling, powered by the battle tested Linode platform, including simple pricing, node balancers, 40Gbit networking, dedicated CPU and GPU instances, and worldwide data centers. Go to pythonpodcast.com/linode and get a $60 credit to try out a Kubernetes cluster of your own. And don’t forget to thank them for their continued support of this show!
- You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For more opportunities to stay up to date, gain new skills, and learn from your peers there are a growing number of virtual events that you can attend from the comfort and safety of your home. Go to pythonpodcast.com/conferences to check out the upcoming events being offered by our partners and get registered today!
- Your host as usual is Tobias Macey and today I’m interviewing Karl Nelson about JPype, a language bridge that lets you use Java classes in your Python programs
- Introductions
- How did you get introduced to Python?
- Can you start by giving an overview of what JPype is?
- What was your motivation for becoming such a regular contributor to the project?
- Why might someone want to be able to call into the Java ecosystem from a Python program?
- There have been a number of other projects aiming to combine the capabilities of Java and Python, such as Jython and PyJNIus. What are the relative tradeoffs between the different options?
- Many of those other projects have stalled or stopped altogether. What about JPype has allowed it to survive for so long?
- Can you explain how JPype is implemented?
- How has the design and implementation of the project evolved since it was first implemented?
- How do the relative language versions influence the compatibility of programs on either side of the bridge?
- What is involved in creating a project that uses JPype?
- How are dependencies, packaging, distribution, etc. handled across the Java and Python portions of the code?
- What are some of the ways that JPype can be used for Android applications?
- What are some of the sharp edges or pitfalls that users of JPype should be aware of?
- What are some of the most interesting, innovative, or unexpected ways that you have seen JPype used?
- What have you found to be the most interesting or challenging aspects of building JPype?
- When is JPype the wrong choice?
- What is in store for the future of the project?
- Tobias
- Karl
- JPype
- Java
- Overview of Python to Java bridges
- Lawrence Livermore National Lab
- GTK–
- Gnome
- Perl
- C++
- Matlab
- Java Native Interface (JNI)
- SciPy
- NumPy
- Matplotlib
- Jython
- PyJNIus
- Py4J
- Jep
- Ruby
- Reflection
- Ivy
- Maven
- JDBC
- Kivy
- Android
- Python Slots
- PyPy
- Java ASM
- Arrow Columnar Memory Format
- Protocol Buffers
- GraalVM
The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA
The Journey To Replace Python's Parser And What It Means For The Future
Épisode 285
lundi 19 octobre 2020 • Durée 01:05:49
The release of Python 3.9 introduced a new parser that paves the way for brand new features. Every programming language has its own specific syntax for representing the logic that you are trying to express. The way that the rules of the language are defined and validated is with a grammar definition, which in turn is processed by a parser. The parser that the Python language has relied on for the past 25 years has begun to show its age through mounting technical debt and a lack of flexibility in defining new syntax. In this episode Pablo Galindo and Lysandros Nikolaou explain how, together with Python’s creator Guido van Rossum, they replaced the original parser implementation with one that is more flexible and maintainable, why now was the time to make the change, and how it will influence the future evolution of the language.
Announcements- Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great.
- When you’re ready to launch your next app or want to try a project you hear about on the show, you’ll need somewhere to deploy it, so take a look at our friends over at Linode. With the launch of their managed Kubernetes platform it’s easy to get started with the next generation of deployment and scaling, powered by the battle tested Linode platform, including simple pricing, node balancers, 40Gbit networking, dedicated CPU and GPU instances, and worldwide data centers. Go to pythonpodcast.com/linode and get a $60 credit to try out a Kubernetes cluster of your own. And don’t forget to thank them for their continued support of this show!
- You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For more opportunities to stay up to date, gain new skills, and learn from your peers there are a growing number of virtual events that you can attend from the comfort and safety of your home. Go to pythonpodcast.com/conferences to check out the upcoming events being offered by our partners and get registered today!
- Your host as usual is Tobias Macey and today I’m interviewing Pablo Galindo and Lysandros Nikolaou about their work on replacing the parser in CPython and what that means for the language
- Introductions
- How did you get introduced to Python?
- Can you start by discussing the role of the parser in the lifecycle of a Python program?
- What were the limitations of the previous parser, and how did that contribute to complexity and technical debt in the CPython runtime?
- What are the options for styles of parsers, and what are the benefits of using a PEG style grammar?
- How does the new parser impact the approachability of the CPython code for new contributors?
- What was the process for reimplementing the parser and guarding against regressions in the syntax?
- As developers switch to the 3.9 release, what potential edge cases/bugs might they see from introducing the new parser?
- What new syntax options does this parser provide for the Python language?
- Are there any specific features that are planned for implementation in the 3.10 release that are enabled by the new parser grammar?
- As the language evolves due to new capabilities offered by the updated parser, how will that impact other implementations such as PyPy?
- What were the most interesting, unexpected, or challenging aspects of this project?
- What other aspects of the CPython code do you think should be reconsidered or reimplemented in light of the changes in computing and the usage of the language?
- Pablo
- pablogsal on GitHub
- @pyblogsal on Twitter
- Lysandros
- lysnikolaou on GitHub
- @lysnikolaou on Twitter
- Tobias
- Pablo
- Raised By Wolves TV Series
- Lysandros
- Afterlife TV show
- PEP 617 – New PEG Parser for CPython
- Podcast Episode About Parsers
- CPython
- Bloomberg
- PEG Parsers
- Seafair
- LL(1) Parsers
- Łukasz Langa
- Parser Generator
- Concrete Syntax Tree
- Abstract Syntax Tree
- PyPy
- RustPython
- IronPython
- Structural Pattern Matching – PEP 622
- Pylint
- ASTroid
- Hy
- Walrus Operator/Assignment Expressions
- C99
- Reference Counting
- Cycle Hunting/Generational Garbage Collection
The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA
Cloud Native Application Delivery Using GitOps
Épisode 284
lundi 12 octobre 2020 • Durée 53:44
The way that applications are being built and delivered has changed dramatically in recent years with the growing trend toward cloud native software. As part of this movement toward the infrastructure and orchestration that powers your project being defined in software, a new approach to operations is gaining prominence. Commonly called GitOps, the main principle is that all of your automation code lives in version control and is executed automatically as changes are merged. In this episode Victor Farcic shares details on how that workflow brings together developers and operations engineers, the challenges that it poses, and how it influences the architecture of your software. This was an interesting look at an emerging pattern in the development and release cycle of modern applications.
Announcements- Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great.
- When you’re ready to launch your next app or want to try a project you hear about on the show, you’ll need somewhere to deploy it, so take a look at our friends over at Linode. With the launch of their managed Kubernetes platform it’s easy to get started with the next generation of deployment and scaling, powered by the battle tested Linode platform, including simple pricing, node balancers, 40Gbit networking, dedicated CPU and GPU instances, and worldwide data centers. Go to pythonpodcast.com/linode and get a $60 credit to try out a Kubernetes cluster of your own. And don’t forget to thank them for their continued support of this show!
- Tree Schema is a data catalog that is making metadata management accessible to everyone. With Tree Schema you can create your data catalog and have it fully populated in under five minutes when using one of the many automated adapters that can connect directly to your data stores. Tree Schema includes essential cataloging features such as first class support for both tabular and unstructured data, data lineage, rich text documentation, asset tagging and more. Built from the ground up with a focus on the intersection of people and data, your entire team will find it easier to foster collaboration around your data. With the most transparent pricing in the industry – $99/mo for your entire company – and a money-back guarantee for excellent service, you’ll love Tree Schema as much as you love your data. Go to pythonpodcast.com/treeschema today to get your first month free, and mention this podcast to get %50 off your first three months after the trial.
- You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For more opportunities to stay up to date, gain new skills, and learn from your peers there are a growing number of virtual events that you can attend from the comfort and safety of your home. Go to pythonpodcast.com/conferences to check out the upcoming events being offered by our partners and get registered today!
- Your host as usual is Tobias Macey and today I’m interviewing Victor Farcic about using GitOps practices to manage your application and your infrastructure in the same workflow
- Introductions
- How did you get introduced to Python?
- Can you start by giving an overview of what GitOps is?
- What are the architectural or design elements that developers need to incorporate to make their applications work well in a GitOps workflow?
- What are some of the tools that facilitate a GitOps approach to managing applications and their target environments?
- What are some useful strategies for managing local developer environments to maintain parity with how production deployments are architected?
- As developers acquire more resonsibility for building the automation to provision the production environment for their applications, what are some of the operations principles that they need to understand?
- What are some of the development principles that operators and systems administrators need to acquire to be effective in contributing to an environment that is managed by GitOps?
- What are the areas for collaboration and dividing lines of responsibility between developers and platform engineers in a GitOps environment?
- Beyond the application development and deployment, what are some of the additional concerns that need to be built into an application in order for it to be manageable and maintainable once it is in production?
- What are some of the organizational principles that contribute to a successful implementation of GitOps?
- What are some of the most interesting, innovative, or unexpected ways that you have seen GitOps employed?
- What have you found to be the most challenging aspects of creating a scalable and maintainable GitOps practice?
- When is GitOps the wrong choice, and what are the alternatives?
- What resources do you recommend for anyone who wants to dig deeper into this subject?
- Tobias
- Victor
- GitOps
- CodeFresh
- Kubernetes
- DevOps Paradox Podcast
- Perl
- Cloud Native
- ArgoCD
- Flux
- Observability
- Prometheus
- Helm
- KNative
- MiniKube
- Viktor’s Udemy Books and Courses
- Viktor’s YouTube channel
The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA
Threading The Needle Of Interesting And Informative While You Learn To Code
Épisode 283
mardi 6 octobre 2020 • Durée 56:30
Learning to code is a neverending journey, which is why it’s important to find a way to stay motivated. A common refrain is to just find a project that you’re interested in building and use that goal to keep you on track. The problem with that advice is that as a new programmer, you don’t have the knowledge required to know which projects are reasonable, which are difficult, and which are effectively impossible. Steven Lott has been sharing his programming expertise as a consultant, author, and trainer for years. In this episode he shares his insights on how to help readers, students, and colleagues interested enough to learn the fundamentals without losing sight of the long term gains. He also uses his own difficulties in learning to maintain, repair, and captain his sailboat as relatable examples of the learning process and how the lessons he has learned can be translated to the process of learning a new technology or skill. This was a great conversation about the various aspects of how to learn, how to stay motivated, and how to help newcomers bridge the gap between what they want to create and what is within their grasp.
Announcements- Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great.
- When you’re ready to launch your next app or want to try a project you hear about on the show, you’ll need somewhere to deploy it, so take a look at our friends over at Linode. With the launch of their managed Kubernetes platform it’s easy to get started with the next generation of deployment and scaling, powered by the battle tested Linode platform, including simple pricing, node balancers, 40Gbit networking, dedicated CPU and GPU instances, and worldwide data centers. Go to pythonpodcast.com/linode and get a $60 credit to try out a Kubernetes cluster of your own. And don’t forget to thank them for their continued support of this show!
- This portion of Python Podcast is brought to you by Datadog. Do you have an app in production that is slower than you like? Is its performance all over the place (sometimes fast, sometimes slow)? Do you know why? With Datadog, you will. You can troubleshoot your app’s performance with Datadog’s end-to-end tracing and in one click correlate those Python traces with related logs and metrics. Use their detailed flame graphs to identify bottlenecks and latency in that app of yours. Start tracking the performance of your apps with a free trial at pythonpodcast.com/datadog. If you sign up for a trial and install the agent, Datadog will send you a free t-shirt.
- You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For more opportunities to stay up to date, gain new skills, and learn from your peers there are a growing number of virtual events that you can attend from the comfort and safety of your home. Go to pythonpodcast.com/conferences to check out the upcoming events being offered by our partners and get registered today!
- Your host as usual is Tobias Macey and today I’m interviewing Steven F. Lott about finding a project that you care about to aid in learning to program
- Introductions
- How did you get introduced to Python?
- Can you start by outlining your experiences working with and teaching Python?
- Does your day-to-day experience at work suggest ways to help newcomers learn about Python?
- How have your experiences as an author influenced your perspective on how to help newcomers become motivated to learn programming?
- One of the common pieces of advice that I and others have given to people learning Python or other languages is to find a project that they want to build, but that’s not necessarily a practical approach. What are some of the difficulties that might come of that approach?
- What are some strategies that you have tried for helping learners identify what kinds of project are possible and practical?
- Beyond the difficulty of understanding what is possible and what is going to require a dedicated team of engineers to even attempt, there is the question of remaining motivated for long enough to follow through on a project in the face of syntax errors and design challenges. What can language developers and ecosystems do to improve the newcomer experience in exploring possibilities?
- How can we make syntax errors educational and recoverable, rather than needing accrued knowledge, or hours of web searches?
- As an author, there are complementary goals that may lead to conflict in the form of wanting to provide structured guidance and progression while allowing for creativity and experimentation. How have you approached those objectives in your books?
- What are some of the projects that have motivated you to learn new skills?
- What advice do you have for anyone who is working on or considering writing a book to teach a technical skill?
- What advice do you have for anyone who is trying to learn programming or acquire a skill in a new language, platform, or framework?
- Why are both of you movie picks black and white? Are you a film noir fan?
- Tobias
- The Hobbit Trilogy: Extended Edition (affiliate link)
- The Lord Of The Rings Trilogy: Extended Edition (affiliate link)
- Steven
- Thank you for listening! Don’t forget to check out our other show, the Data Engineering Podcast for the latest on modern data management.
- Visit the site to subscribe to the show, sign up for the mailing list, and read the show notes.
- If you’ve learned something or tried out a project from the show then tell us about it! Email hosts@podcastinit.com) with your story.
- To help other people find the show please leave a review on iTunes and tell your friends and co-workers
- Join the community in the new Zulip chat workspace at pythonpodcast.com/chat
The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA
Solving Python Package Creation For End User Applications With PyOxidizer
Épisode 282
mardi 29 septembre 2020 • Durée 49:40
Python is a powerful and expressive programming language with a vast ecosystem of incredible applications. Unfortunately, it has always been challenging to share those applications with non-technical end users. Gregory Szorc set out to solve the problem of how to put your code on someone else’s computer and have it run without having to rely on extra systems such as virtualenvs or Docker. In this episode he shares his work on PyOxidizer and how it allows you to build a self-contained Python runtime along with statically linked dependencies and the software that you want to run. He also digs into some of the edge cases in the Python language and its ecosystem that make this a challenging problem to solve, and some of the lessons that he has learned in the process. PyOxidizer is an exciting step forward in the evolution of packaging and distribution for the Python language and community.
Announcements- Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great.
- When you’re ready to launch your next app or want to try a project you hear about on the show, you’ll need somewhere to deploy it, so take a look at our friends over at Linode. With the launch of their managed Kubernetes platform it’s easy to get started with the next generation of deployment and scaling, powered by the battle tested Linode platform, including simple pricing, node balancers, 40Gbit networking, dedicated CPU and GPU instances, and worldwide data centers. Go to pythonpodcast.com/linode and get a $60 credit to try out a Kubernetes cluster of your own. And don’t forget to thank them for their continued support of this show!
- This portion of Python Podcast is brought to you by Datadog. Do you have an app in production that is slower than you like? Is its performance all over the place (sometimes fast, sometimes slow)? Do you know why? With Datadog, you will. You can troubleshoot your app’s performance with Datadog’s end-to-end tracing and in one click correlate those Python traces with related logs and metrics. Use their detailed flame graphs to identify bottlenecks and latency in that app of yours. Start tracking the performance of your apps with a free trial at pythonpodcast.com/datadog. If you sign up for a trial and install the agent, Datadog will send you a free t-shirt.
- You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For more opportunities to stay up to date, gain new skills, and learn from your peers there are a growing number of virtual events that you can attend from the comfort and safety of your home. Go to pythonpodcast.com/conferences to check out the upcoming events being offered by our partners and get registered today!
- Your host as usual is Tobias Macey and today I’m interviewing Gregory Szorc about his work on PyOxidizer, a revolutionary new approach to building and distributing self-contained Python applications
- Introductions
- How did you get introduced to Python?
- Can you start by giving an overview on the shortcomings of the current state of the art for distributing Python projects, both for deployment and end-user consumption?
- What is PyOxidizer and what motivated you to create it?
- How does PyOxidizer differ from projects such as CxFreeze, Py2Exe, or Shiv?
- What are the characteristics of CPython and the packaging ecosystem that make it so challenging to easily distribute self-contained applications?
- For someone using PyOxidizer, what is their workflow for building an executable that they can share with end users?
- What are some of the edge cases or special considerations that they need to be aware of?
- How is PyOxidizer implemented?
- How has the design or direction evolved since you first began working on it?
- From your experience in working on PyOxidizer, what changes would you like to see in the Python language or the CPython reference implementation?
- What are some of the most interesting, unexpected, or challenging lessons that you have learned while working on PyOxidizer?
- What do you have planned for the future of PyOxidizer?
- What are the ways that listeners can contribute to PyOxidizer?
- Tobias
- Gregory
- Thank you for listening! Don’t forget to check out our other show, the Data Engineering Podcast for the latest on modern data management.
- Visit the site to subscribe to the show, sign up for the mailing list, and read the show notes.
- If you’ve learned something or tried out a project from the show then tell us about it! Email hosts@podcastinit.com) with your story.
- To help other people find the show please leave a review on iTunes and tell your friends and co-workers
- Join the community in the new Zulip chat workspace at pythonpodcast.com/chat
- PyOxidizer
- Mercurial
- Mozilla
- Virtualenv
- Pip
- Docker
- Py2Exe
- CXFreeze
- Beeware
- Shiv
- FPM
- Python Build Standalone
- Importlib
- Rust
- Russell Keith-Magee Black Swans Keynote
The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA









