The Python Podcast.__init__

The Python Podcast.__init__

By Tobias MaceyTechnologyEducation
Download on the App Store

The Python Podcast.__init__ episodes

  • Keep Your Analytics Lint Free With SQLFluff
    Summary

    The growth of analytics has accelerated the use of SQL as a first class language. It has also grown the amount of collaboration involved in writing and maintaining SQL queries. With collaboration comes the inevitable variation in how queries are written, both structurally and stylistically which can lead to a significant amount of wasted time and energy during code review and employee onboarding. Alan Cruickshank was feeling the pain of this wasted effort first-hand which led him down the path of creating SQLFluff as a linter and formatter to enforce consistency and find bugs in the SQL code that he and his team were working with. In this episode he shares the story of how SQLFluff evolved from a simple hackathon project to an open source linter that is used across a range of companies and fosters a growing community of users and contributors. He explains how it has grown to support multiple dialects of SQL, as well as integrating with projects like DBT to handle templated queries. This is a great conversation about the long detours that are sometimes necessary to reach your original destination and the powerful impact that good tooling can have on team productivity.

    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!
    • We’ve all been asked to help with an ad-hoc request for data by the sales and marketing team. Then it becomes a critical report that they need updated every week or every day. Then what do you do? Send a CSV via email? Write some Python scripts to automate it? But what about incremental sync, API quotas, error handling, and all of the other details that eat up your time? Today, there is a better way. With Census, just write SQL or plug in your dbt models and start syncing your cloud warehouse to SaaS applications like Salesforce, Marketo, Hubspot, and many more. Go to pythonpodcast.com/census today to get a free 14-day trial.
    • Your host as usual is Tobias Macey and today I’m interviewing Alan Cruickshank about SQLFluff, a dialect-flexible and configurable SQL linter
    • Interview
      • Introductions
      • How did you get introduced to Python?
      • Can you describe what SQLFluff is and the story behind it?
      • SQL is one of the oldest programming languages that is still in regular use. Why do you think that there are so few linters for it?
      • Who are the target users of SQLFluff and how do those personas influence the design and user experience of the project?
      • What are some of the characteristics of SQL and how it is used that contribute to readability/comprehension challenges?
        • What are some of the additional difficulties that are introduced by templating in the queries?
        • How is SQLFluff implemented?
          • How have the goals and design of the project changed since you first began working on it?
          • How do you handle support of varying SQL dialects without undue maintenance burdens?
          • What are some of the stylistic elements and strategies for making SQL code more maintainable?
          • What are some strategies for making queries self-documenting?
            • What are some signs that you should document it anyway?
            • What are some of the kinds of bugs that you are able to identify with SQLFluff?
            • What are some of the resources/references that you relied on for identifying useful linting rules?
            • What are some methods for measuring code quality in SQL?
            • What are the most interesting, innovative, or unexpected ways that you have seen SQLFluff used?
            • What are the most interesting, unexpected, or challenging lessons that you have learned while working on SQLFluff?
            • When is SQLFluff the wrong choice?
            • What do you have planned for the future of SQLFluff?
            • Keep In Touch
              • alanmcruickshank on GitHub
              • Website
              • LinkedIn
              • Picks
                • Tobias
                  • The Nevers
                  • Alan
                    • Lost Connections: Uncovering the Real Causes of Depression – and the Unexpected Solutions by Johann Hari (affiliate link)
                    • The Wim Hof Method by Wim Hof
                    • Closing Announcements
                      • 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 [email protected]) 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
                      • Links
                        • SQLFluff
                        • Tails.com
                        • Hypothesis
                          • Podcast Episode
                          • Project Euler
                          • Flake8
                            • Podcast Episode
                            • Black
                            • dbt
                              • Data Engineering Podcast Episode
                              • Snowflake
                                • Data Engineering Podcast Episode
                                • BigQuery
                                • SQL Window Functions
                                • ANSI SQL
                                • PostgreSQL
                                • MS SQL Server
                                • Oracle DB
                                • Airflow
                                • SQL Subquery
                                • Common Table Expression (CTE)
                                • The Rise Of The Data Engineer blog post
                                • The Downfall Of The Data Engineer blog post
                                • Object-Relational Mapper (ORM)
                                • Tableau
                                • Fishtown Analytics SQL Styleguide
                                • Mozilla SQL Styleguide
                                • The Zen of Python
                                • dbt Packages
                                • yapf
                                • Set Theory
                                • Flake8 SQL Plugin
                                • The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

                                  1 hr 14 min
                                • Exploring The Patterns And Practices For Deep Learning With Andrew Ferlitsch
                                  Summary

                                  Deep learning is gaining an immense amount of popularity due to the incredible results that it is able to offer with comparatively little effort. Because of this there are a number of engineers who are trying their hand at building machine learning models with the wealth of frameworks that are available. Andrew Ferlitsch wrote a book to capture the useful patterns and best practices for building models with deep learning to make it more approachable for newcomers ot the field. In this episode he shares his deep expertise and extensive experience in building and teaching machine learning across many companies and industries. This is an entertaining and educational conversation about how to build maintainable models across a variety of 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 $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!
                                  • We’ve all been asked to help with an ad-hoc request for data by the sales and marketing team. Then it becomes a critical report that they need updated every week or every day. Then what do you do? Send a CSV via email? Write some Python scripts to automate it? But what about incremental sync, API quotas, error handling, and all of the other details that eat up your time? Today, there is a better way. With Census, just write SQL or plug in your dbt models and start syncing your cloud warehouse to SaaS applications like Salesforce, Marketo, Hubspot, and many more. Go to pythonpodcast.com/census today to get a free 14-day trial.
                                  • Scaling your data infrastructure is hard. Maintaining data quality standards as you scale is harder. Databand solves this. Their Unified Data Observability platform gives data engineers visibility over their stack without changing existing pipeline code. Get end-to-end visibility on your pipelines, and identify the root cause of issues before bad data is delivered. Seamlessly integrate with over 20 tools like Apache Airflow, Spark, Snowflake, and more. Use customizable dashboards to see where pipelines are broken and how that impacts delivery downstream. Get alerts on leading indicators of pipeline failure. Open up your pipeline and see exactly which code strings are broken – so you can fix the issue immediately. Create more reliable data products. Go to pythonpodcast.com/databand today to start your free trial!
                                  • Your host as usual is Tobias Macey and today I’m interviewing Andrew Ferlitsch about the patterns and practices for deep learning applications
                                  • Interview
                                    • Introductions
                                    • How did you get introduced to Python?
                                    • Can you start by describing the major elements of a model architecture?
                                    • What is the relationship between the specific learning task being addressed and the architecture of the learning network?
                                    • In your experience, what is the level of awareness of a typical ML engineer or data scientist with respect to the most current design patterns in deep learning?
                                    • Your currently working on a book about deep learning patterns and practices. What was your motivation for starting that project?
                                      • What are your goals for the book?
                                      • How have advancements in the operability of machine learning influenced the ways that the models are designed and trained?
                                        • How do recent approaches such as transfer learning impact the needs of the supporting tools and infrastructure?
                                        • Can you describe the different design patterns that you cover in your book and the selection process for when and how to apply them?
                                        • What are the aspects of bringing deep learning to production that continue to be a challenge?
                                          • What are some of the emerging practices that you are optimistic about?
                                          • What are some of the industry trends or areas of current research that you are most excited about?
                                          • What are the most interesting, innovative, or unexpected patterns that you have encountered?
                                          • What are the most interesting, unexpected, or challenging lessons that you have learned while working on the book?
                                          • What are some of the other resources that you recommend for listeners to learn more about how to build production ready models?
                                          • Keep In Touch
                                            • LinkedIn
                                            • @AndrewFerlitsch on Twitter
                                            • andrewferlitsch on GitHub
                                            • Picks
                                              • Tobias
                                                • Designing Data Intensive Applications (affiliate link)
                                                • Closing Announcements
                                                  • 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 [email protected]) 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
                                                  • Links
                                                    • Google Cloud AI
                                                    • Sharp Corporation
                                                    • Deep Learning Patterns and Practices (affiliate link) use the code podinit21 at checkout for 35% off all books at Manning!
                                                    • CID Bioscience
                                                    • Latent Space
                                                    • AI Winter
                                                    • Numerical Stability
                                                    • Surrogate Model
                                                    • GAN == Generative Adversarial Network
                                                    • Gradient Descent
                                                    • The Gang of 4 – Design Patterns: Elements of Reusable Object-Oriented Software (affiliate link)
                                                    • The Lottery Hypothesis
                                                    • Manning Publications (affiliate link)
                                                    • The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

                                                      45 min
                                                    • Automatically Generate Your Unit Tests From Scratch With Pynguin
                                                      Summary

                                                      Unit tests are an important tool to ensure the proper functioning of your application, but writing them can be a chore. Stephan Lukasczyk wants to reduce the monotony of the process for Python developers. As part of his PhD research he created the Pynguin project to automate the creation of unit tests. In this episode he explains the complexity involved in generating useful tests for a dynamic language, how he has designed Pynguin to address the challenges, and how you can start using it today for your own work.

                                                      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!
                                                      • We’ve all been asked to help with an ad-hoc request for data by the sales and marketing team. Then it becomes a critical report that they need updated every week or every day. Then what do you do? Send a CSV via email? Write some Python scripts to automate it? But what about incremental sync, API quotas, error handling, and all of the other details that eat up your time? Today, there is a better way. With Census, just write SQL or plug in your dbt models and start syncing your cloud warehouse to SaaS applications like Salesforce, Marketo, Hubspot, and many more. Go to pythonpodcast.com/census today to get a free 14-day trial.
                                                      • Are you bored with writing scripts to move data into SaaS tools like Salesforce, Marketo, or Facebook Ads? Hightouch is the easiest way to sync data into the platforms that your business teams rely on. The data you’re looking for is already in your data warehouse and BI tools. Connect your warehouse to Hightouch, paste a SQL query, and use their visual mapper to specify how data should appear in your SaaS systems. No more scripts, just SQL. Supercharge your business teams with customer data using Hightouch for Reverse ETL today. Get started for free at pythonpodcast.com/hightouch.
                                                      • Your host as usual is Tobias Macey and today I’m interviewing Stephan Lukasczyk about Pynguin, the PYthoN General UnIt test geNerator
                                                      • Interview
                                                        • Introductions
                                                        • How did you get introduced to Python?
                                                        • Can you describe what Pynguin is and the story behind it?
                                                        • What are the problems that Pynguin is designed to solve?
                                                        • What other projects are you drawing inspiration from?
                                                        • What are some of the use cases for automatic test generation?
                                                        • How is Pynguin implemented?
                                                          • What are the challenges that the dynamic nature of Python introduces?
                                                          • What are some of the packages and libraries that have been most helpful while building Pynguin?
                                                          • Can you talk through the workflow of using Pynguin to generate tests for a project?
                                                            • What are some of the limitations on what kinds of projects Pynguin can be used for?
                                                            • What are some design or implementation strategies in the code that you are generating tests for that will help make Pynguin’s job easier?
                                                            • Once a test suite has been created, what are the next steps?
                                                            • What are some of the initial assumptions or goals of the project that have been revised or challenged once you began implementing it?
                                                            • What are the most interesting, innovative, or unexpected ways that you have seen Pynguin used?
                                                            • What are the most interesting, unexpected, or challenging lessons that you have learned while working on Pynguin?
                                                            • When is Pynguin the wrong choice?
                                                            • What do you have planned for the future of Pynguin?
                                                            • Keep In Touch
                                                              • Related to Pynguin: best via GitHub
                                                              • Find me on Twitter
                                                              • Picks
                                                                • Tobias
                                                                  • Concourse CI
                                                                  • Stephan
                                                                    • Cycling
                                                                    • Take care of your health
                                                                    • Closing Announcements
                                                                      • 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 [email protected]) 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
                                                                      • Links
                                                                        • Pynguin
                                                                        • University of Passau
                                                                        • Passau, Germany
                                                                        • Evosuite
                                                                        • Hypothesis
                                                                          • Podcast Episode
                                                                          • Astor
                                                                          • Walrus Operator
                                                                          • MyPy
                                                                            • Podcast Episode
                                                                            • Pytest
                                                                              • Podcast Episode
                                                                              • UnitTest
                                                                              • Bytecode library
                                                                              • Pytype
                                                                              • Monkeytype
                                                                                • Podcast Episode
                                                                                • Atheris from Google – coverage-guided fuzzing
                                                                                • Blog series about “Python behind the scenes”: Ten thousand meters by Victor Skvortsov
                                                                                • The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

                                                                                  58 min
                                                                                • Leveling Up Natural Language Processing with Transfer Learning
                                                                                  Summary

                                                                                  Natural language processing is a powerful tool for extracting insights from large volumes of text. With the growth of the internet and social platforms, and the increasing number of people and communities conducting their professional and personal activities online, the opportunities for NLP to create amazing insights and experiences are endless. In order to work with such a large and growing corpus it has become necessary to move beyond purely statistical methods and embrace the capabilities of deep learning, and transfer learning in particular. In this episode Paul Azunre shares his journey into the application and implementation of transfer learning for natural language processing. This is a fascinating look at the possibilities of emerging machine learning techniques for transforming the ways that we interact with technology.

                                                                                  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!
                                                                                  • We’ve all been asked to help with an ad-hoc request for data by the sales and marketing team. Then it becomes a critical report that they need updated every week or every day. Then what do you do? Send a CSV via email? Write some Python scripts to automate it? But what about incremental sync, API quotas, error handling, and all of the other details that eat up your time? Today, there is a better way. With Census, just write SQL or plug in your dbt models and start syncing your cloud warehouse to SaaS applications like Salesforce, Marketo, Hubspot, and many more. Go to pythonpodcast.com/census today to get a free 14-day trial.
                                                                                  • Are you bored with writing scripts to move data into SaaS tools like Salesforce, Marketo, or Facebook Ads? Hightouch is the easiest way to sync data into the platforms that your business teams rely on. The data you’re looking for is already in your data warehouse and BI tools. Connect your warehouse to Hightouch, paste a SQL query, and use their visual mapper to specify how data should appear in your SaaS systems. No more scripts, just SQL. Supercharge your business teams with customer data using Hightouch for Reverse ETL today. Get started for free at pythonpodcast.com/hightouch.
                                                                                  • Your host as usual is Tobias Macey and today I’m interviewing Paul Azunre about using transfer learning for natural language processing
                                                                                  • Interview
                                                                                    • Introductions
                                                                                    • How did you get introduced to Python?
                                                                                    • Can you start by explaining what transfer learning is?
                                                                                    • How is transfer learning being applied to natural language processing?
                                                                                    • What motivated you to write a book about the application of transfer learning to NLP?
                                                                                    • What are some of the applications of NLP that are impractical on intractable without transfer learning?
                                                                                    • At a high level, what are the steps for building a new language model via transfer learning?
                                                                                    • There have been a number of base models created recently, such as BERT and ERNIE, ELMo, GPT-3, etc. What are the factors that need to be considered when selecting which model to build from?
                                                                                      • If there are multiple models that contain the seeds for different aspects of the end goal that you are trying to obtain, what is the feasibility of extracting the relevant capabilities from each of them and combining them in the final model?
                                                                                      • What are some of the tools or frameworks that you have found most useful while working with NLP and transfer learning?
                                                                                      • How would you characterize the current state of the ecosystem for transfer learning and deep learning techniques applied to NLP problems?
                                                                                      • What are the most interesting, innovative, or unexpected applications of transfer learning with NLP that you have seen?
                                                                                      • What are the most interesting, unexpected, or challenging lessons that you have learned while working on the book?
                                                                                      • When is transfer learning the wrong choice for an NLP project?
                                                                                      • What are the trends or techniques that you are most excited for?
                                                                                      • Keep In Touch
                                                                                        • LinkedIn
                                                                                        • Website
                                                                                        • @pazunre on Twitter
                                                                                        • Picks
                                                                                          • Tobias
                                                                                            • Infected Mushroom
                                                                                            • Paul
                                                                                              • Tenet
                                                                                              • Closing Announcements
                                                                                                • 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 [email protected]) 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
                                                                                                • Links
                                                                                                  • Transfer Learning for Natural Language Processing by Paul Azunre (affiliate link)
                                                                                                  • Use the code podinit21 at checkout for 35% off all books at Manning!
                                                                                                  • Low Resource Languages
                                                                                                  • Fortran
                                                                                                  • C++
                                                                                                  • MatLab
                                                                                                  • MIT 6.003
                                                                                                  • Transfer Learning
                                                                                                  • Computer Vision
                                                                                                  • Deep Neural Network
                                                                                                  • Convolutional Neural Network (CNN)
                                                                                                  • Recurrent Neural Network (RNN)
                                                                                                  • GLUE == General Lanuage Understanding Evaluation
                                                                                                  • NLP SuperGLUE
                                                                                                  • NLP Encoder
                                                                                                  • Named Entity Recognition
                                                                                                  • ImageNet
                                                                                                  • Mathematical Optimization
                                                                                                  • Gradient Descent
                                                                                                  • Yonder AI
                                                                                                  • ELMo language model from Allen NLP
                                                                                                  • Ghana
                                                                                                  • ArXiv
                                                                                                  • BERT language model
                                                                                                  • TF-IDF == Term Frequency – Inverse Document Frequency
                                                                                                  • Word2Vec
                                                                                                  • GPT-3
                                                                                                  • Ghana NLP
                                                                                                  • Automatic Speech Recognition
                                                                                                  • ULM Fit
                                                                                                  • Keras
                                                                                                  • Tensorflow
                                                                                                  • Huggingface Transformers
                                                                                                  • Multi-Task Learning
                                                                                                  • Fast.ai
                                                                                                  • OpenAI
                                                                                                  • AWS SageMaker
                                                                                                  • Kaggle Kernels
                                                                                                  • Colab Notebooks
                                                                                                  • Azure ML Studio
                                                                                                  • BLEU Score
                                                                                                  • Khaya application
                                                                                                    • Android
                                                                                                    • iOS
                                                                                                    • The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

                                                                                                      47 min
                                                                                                    • Federated Learning For All With Flower
                                                                                                      Summary

                                                                                                      Machine learning is a tool that has typically been performed on large volumes of data in one place. As more computing happens at the edge on mobile and low power devices, the learning is being federated which brings a new set of challenges. Daniel Beutel co-created the Flower framework to make federated learning more manageable. In this episode he shares his motivations for starting the project, how you can use it for your own work, and the unique challenges and benefits that this emerging model offers. This is a great exploration of the federated learning space and a framework that makes it more approachable.

                                                                                                      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!
                                                                                                      • We’ve all been asked to help with an ad-hoc request for data by the sales and marketing team. Then it becomes a critical report that they need updated every week or every day. Then what do you do? Send a CSV via email? Write some Python scripts to automate it? But what about incremental sync, API quotas, error handling, and all of the other details that eat up your time? Today, there is a better way. With Census, just write SQL or plug in your dbt models and start syncing your cloud warehouse to SaaS applications like Salesforce, Marketo, Hubspot, and many more. Go to pythonpodcast.com/census today to get a free 14-day trial.
                                                                                                      • Are you bored with writing scripts to move data into SaaS tools like Salesforce, Marketo, or Facebook Ads? Hightouch is the easiest way to sync data into the platforms that your business teams rely on. The data you’re looking for is already in your data warehouse and BI tools. Connect your warehouse to Hightouch, paste a SQL query, and use their visual mapper to specify how data should appear in your SaaS systems. No more scripts, just SQL. Supercharge your business teams with customer data using Hightouch for Reverse ETL today. Get started for free at pythonpodcast.com/hightouch.
                                                                                                      • Your host as usual is Tobias Macey and today I’m interviewing Daniel Beutel about Flower, a framework for building federated learning systems
                                                                                                      • Interview
                                                                                                        • Introductions
                                                                                                        • How did you get introduced to Python?
                                                                                                        • Can you start by describing what federated learning is?
                                                                                                        • What is Flower and what’s the story behind it?
                                                                                                        • What are the trade-offs between federated and centralized models of machine learning?
                                                                                                        • What are some of the types of use cases or workloads that federated learning is used for?
                                                                                                        • Federated learning appears to be a growing area of interest. How would you characterize the current state of the ecosystem?
                                                                                                        • What are the most complex or challenging aspects of federating model training?
                                                                                                          • How does Flower simplify the process of distributing the model training process?
                                                                                                          • Can you describe how Flower is implemented?
                                                                                                            • How have the goals and/or design of Flower changed or evolved since you first began working on it?
                                                                                                            • One of the design principles that you list is "understandability". What are some of the ways that that manifests in the project?
                                                                                                            • It also mentions extensibility. What are the interfaces that Flower exposes for integration or extending its capabilities?
                                                                                                            • For someone who has an existing project that runs in a centralized manner, what are some indicators that a federated approach would be beneficial?
                                                                                                              • What is involved in translating the existing project to run in a federated fashion using Flower?
                                                                                                              • What is involved in building a production ready system with Flower?
                                                                                                              • How does your work at Adap inform the design and product direction for Flower?
                                                                                                              • What are some of the most interesting, innovative, or unexpected ways that you have seen Flower used?
                                                                                                              • What are the most interesting, unexpected, or challenging lessons that you have learned from your work on and with Flower?
                                                                                                              • When is Flower the wrong choice?
                                                                                                              • What do you have planned for the future of the project?
                                                                                                              • Keep In Touch
                                                                                                                • LinkedIn
                                                                                                                • danieljanes on GitHub
                                                                                                                • @daniel_janes on Twitter
                                                                                                                • Picks
                                                                                                                  • Tobias
                                                                                                                    • Rummy Card Game
                                                                                                                    • Daniel
                                                                                                                      • Stand Up Paddling
                                                                                                                      • Closing Announcements
                                                                                                                        • 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 [email protected]) 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
                                                                                                                        • Links
                                                                                                                          • Flower
                                                                                                                          • Adap
                                                                                                                          • Hyperparameter Optimization
                                                                                                                          • Federated Learning
                                                                                                                          • University of Oxford
                                                                                                                          • University of Cambridge
                                                                                                                          • Nvidia Jetson
                                                                                                                          • PyTorch
                                                                                                                            • Podcast Episode
                                                                                                                            • Tensorflow Lite
                                                                                                                            • Tensorflow Federated
                                                                                                                            • PySyft
                                                                                                                            • Flower Summit
                                                                                                                            • Jax
                                                                                                                            • CNN == Convolutional Neural Network
                                                                                                                            • Keras
                                                                                                                            • gRPC
                                                                                                                            • MQTT
                                                                                                                            • NumPy NDArray
                                                                                                                            • AWS Device Farm
                                                                                                                            • Ray Framework
                                                                                                                              • Podcast Episode
                                                                                                                              • The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

                                                                                                                                1 hr 2 min
                                                                                                                              • Data Exploration and Visualization Made Effortless with Lux
                                                                                                                                Summary

                                                                                                                                Data exploration is an important step in any analysis or machine learning project. Visualizing the data that you are working with makes that exploration faster and more effective, but having to remember and write all of the code to build a scatter plot or histogram is tedious and time consuming. In order to eliminate that friction Doris Lee helped create the Lux project, which wraps your Pandas data frame and automatically generates a set of visualizations without you having to lift a finger. In this episode she explains how Lux works under the hood, what inspired her to create it in the first place, and how it can help you create a better end result. The Lux project is a valuable addition to the toolbox of anyone who is doing data wrangling with Pandas.

                                                                                                                                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!
                                                                                                                                • We’ve all been asked to help with an ad-hoc request for data by the sales and marketing team. Then it becomes a critical report that they need updated every week or every day. Then what do you do? Send a CSV via email? Write some Python scripts to automate it? But what about incremental sync, API quotas, error handling, and all of the other details that eat up your time? Today, there is a better way. With Census, just write SQL or plug in your dbt models and start syncing your cloud warehouse to SaaS applications like Salesforce, Marketo, Hubspot, and many more. Go to pythonpodcast.com/census today to get a free 14-day trial.
                                                                                                                                • Are you bored with writing scripts to move data into SaaS tools like Salesforce, Marketo, or Facebook Ads? Hightouch is the easiest way to sync data into the platforms that your business teams rely on. The data you’re looking for is already in your data warehouse and BI tools. Connect your warehouse to Hightouch, paste a SQL query, and use their visual mapper to specify how data should appear in your SaaS systems. No more scripts, just SQL. Supercharge your business teams with customer data using Hightouch for Reverse ETL today. Get started for free at pythonpodcast.com/hightouch.
                                                                                                                                • Your host as usual is Tobias Macey and today I’m interviewing Doris Lee about Lux, a Python library that facilitates fast and easy data exploration by automating the visualization and data analysis process
                                                                                                                                • Interview
                                                                                                                                  • Introductions
                                                                                                                                  • How did you get introduced to Python?
                                                                                                                                  • Can you start by describing what Lux is and how the project got started?
                                                                                                                                  • What is the role of visualization in a data science workflow?
                                                                                                                                    • What are the challenges that data scientists face in the exploratory phase of their analysis?
                                                                                                                                    • There are a wide variety of data visualization tools in the Python ecosystem with differing areas of focus. What is the role of Lux in that ecosystem?
                                                                                                                                      • How does Lux compare to tools such as scikit-yb?
                                                                                                                                      • What is the workflow for someone using Lux in their analysis and what problems does it solve for them?
                                                                                                                                      • Can you talk through how Lux is architected?
                                                                                                                                        • How have the goals and design of Lux changed or evolved since you first began working on it?
                                                                                                                                        • Data visualization is a broad field. How do you determine which kinds of charts or plots are best suited to a particular data set or exploration?
                                                                                                                                        • What are some of the capabilities of Lux that are often overlooked or underutilized?
                                                                                                                                        • How has Lux impacted your own work in data analysis/data science?
                                                                                                                                        • What are some of the other gaps that you see in the available tooling for data science?
                                                                                                                                        • What are some of the most interesting, innovative, or unexpected ways that you have seen Lux used?
                                                                                                                                        • What are the most interesting, unexpected, or challenging lessons that you have learned while working on and with Lux?
                                                                                                                                        • When is Lux the wrong choice?
                                                                                                                                        • What do you have planned for the future of the project?
                                                                                                                                        • Keep In Touch
                                                                                                                                          • dorisjlee on GitHub
                                                                                                                                          • Website
                                                                                                                                          • LinkedIn
                                                                                                                                          • Picks
                                                                                                                                            • Tobias
                                                                                                                                              • Pirates of the Carribean movies
                                                                                                                                              • Doris
                                                                                                                                                • Snake Wrangling for Kids
                                                                                                                                                • Closing Announcements
                                                                                                                                                  • 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 [email protected]) 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
                                                                                                                                                  • Links
                                                                                                                                                    • Lux
                                                                                                                                                    • UC Berkeley
                                                                                                                                                    • RISE Lab
                                                                                                                                                    • School of Information
                                                                                                                                                    • Pandas
                                                                                                                                                      • Podcast Episode
                                                                                                                                                      • Bokeh
                                                                                                                                                        • Podcast Episode
                                                                                                                                                        • Seaborn
                                                                                                                                                        • Altair
                                                                                                                                                          • Podcast Episode
                                                                                                                                                          • Matplotlib
                                                                                                                                                          • Grammar of Graphics
                                                                                                                                                          • Plotly
                                                                                                                                                          • Scikit YellowBrick
                                                                                                                                                            • Podcast Episode
                                                                                                                                                            • D3.js
                                                                                                                                                            • Vega
                                                                                                                                                            • Numpy
                                                                                                                                                            • xarray
                                                                                                                                                            • Tensorflow
                                                                                                                                                            • Jupyter Widget
                                                                                                                                                            • Chloropleth Map
                                                                                                                                                            • G10 Countries
                                                                                                                                                            • Ray
                                                                                                                                                              • Podcast Episode
                                                                                                                                                              • Modin
                                                                                                                                                              • Dask
                                                                                                                                                                • Data Engineering Podcast Episode
                                                                                                                                                                • Podcast Interview About Coiled
                                                                                                                                                                • The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

                                                                                                                                                                  52 min
                                                                                                                                                                • Extensible Open Source Authorization For Your Applications With Oso
                                                                                                                                                                  Summary

                                                                                                                                                                  Any project that is used by more than one person will eventually need to handle permissions for each of those users. It is certainly possible to write that logic yourself, but you’ll almost certainly do it wrong at least once. Rather than waste your time fighting with bugs in your authorization code it makes sense to use a well-maintained library that has already made and fixed all of the mistakes so that you don’t have to. In this episode Sam Scott shares the Oso framework to give you a clean separation between your authorization policies and your application code. He explains how you can call a simple function to ask if something is allowed, and then manage the complex rules that match your particular needs as a separate concern. He describes the motivation for building a domain specific language based on logic programming for policy definitions, how it integrates with the host language (such as Python), and how you can start using it in your own applications today. This is a must listen even if you never use the project because it is a great exploration of all of the incidental complexity that is involved in permissions management.

                                                                                                                                                                  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!
                                                                                                                                                                  • We’ve all been asked to help with an ad-hoc request for data by the sales and marketing team. Then it becomes a critical report that they need updated every week or every day. Then what do you do? Send a CSV via email? Write some Python scripts to automate it? But what about incremental sync, API quotas, error handling, and all of the other details that eat up your time? Today, there is a better way. With Census, just write SQL or plug in your dbt models and start syncing your cloud warehouse to SaaS applications like Salesforce, Marketo, Hubspot, and many more. Go to pythonpodcast.com/census today to get a free 14-day trial.
                                                                                                                                                                  • Are you bored with writing scripts to move data into SaaS tools like Salesforce, Marketo, or Facebook Ads? Hightouch is the easiest way to sync data into the platforms that your business teams rely on. The data you’re looking for is already in your data warehouse and BI tools. Connect your warehouse to Hightouch, paste a SQL query, and use their visual mapper to specify how data should appear in your SaaS systems. No more scripts, just SQL. Supercharge your business teams with customer data using Hightouch for Reverse ETL today. Get started for free at pythonpodcast.com/hightouch.
                                                                                                                                                                  • Your host as usual is Tobias Macey and today I’m interviewing Sam Scott about Oso, an open source library for managing authorization in your applications
                                                                                                                                                                  • Interview
                                                                                                                                                                    • Introductions
                                                                                                                                                                    • How did you get introduced to Python?
                                                                                                                                                                    • Can you start by describing what Oso is and the story behind it?
                                                                                                                                                                    • What was missing from the ecosystem of authorization libraries/frameworks that motivated you to create a new one?
                                                                                                                                                                    • What are some of the most common mistakes that you see developers make when implementing authorization logic?
                                                                                                                                                                    • At a high level, what is the process of using Oso to add access control policies to a piece of software?
                                                                                                                                                                    • What is the motivation for using a DSL for defining policies as opposed to writing those definitions in pure Python?
                                                                                                                                                                      • How have you approached the design of the policy language, particularly deciding what constraints to impose?
                                                                                                                                                                      • What other policy frameworks or dialects have you drawn inspiration from?
                                                                                                                                                                      • How is the Oso framework implemented?
                                                                                                                                                                        • How have the goals and design of Oso changed or evolved since you first began working on it?
                                                                                                                                                                        • What are some useful design patterns for integrating Oso into an application?
                                                                                                                                                                          • How does the type of application (e.g. web app vs. system daemon, etc.) affect the ways that Oso is used?
                                                                                                                                                                          • Given that Oso supports multiple language runtimes, what is involved in defining and enforcing policies that span multiple processes? (e.g. Python backend and Javascript frontend, Python microservice communicating with Go microservice, etc.)
                                                                                                                                                                          • What are some of the common mistakes or areas of confusion for users who are getting started with Oso and Polar?
                                                                                                                                                                          • What are some of the capabilities of Oso that are often overlooked or misunderstood?
                                                                                                                                                                          • I noticed that you’re backed by some venture firms. What is your current product vision and how does that relate to your current open source goals?
                                                                                                                                                                          • What are some of the most interesting, innovative, or unexpected ways that you have seen Oso used?
                                                                                                                                                                          • What are some of the most interesting, unexpected, or challenging lessons that you have learned while working on and with oso?
                                                                                                                                                                          • When is Oso the wrong choice?
                                                                                                                                                                          • What do you have planned for the future of the project?
                                                                                                                                                                          • Keep In Touch
                                                                                                                                                                            • LinkedIn
                                                                                                                                                                            • samscott89 on GitHub
                                                                                                                                                                            • @samososos on Twitter
                                                                                                                                                                            • Picks
                                                                                                                                                                              • Tobias
                                                                                                                                                                                • Chaos Walking
                                                                                                                                                                                • Sam
                                                                                                                                                                                  • Hades video game
                                                                                                                                                                                  • Closing Announcements
                                                                                                                                                                                    • 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 [email protected]) 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
                                                                                                                                                                                    • Links
                                                                                                                                                                                      • Oso
                                                                                                                                                                                      • Oso Authorization Academy
                                                                                                                                                                                      • Number Theory
                                                                                                                                                                                      • Sage Math
                                                                                                                                                                                      • RBAC == Role-Based Access Control
                                                                                                                                                                                      • ABAC == Attribute-Based Access Control
                                                                                                                                                                                      • Polar Policy Language
                                                                                                                                                                                      • Prolog
                                                                                                                                                                                      • Logic Programming
                                                                                                                                                                                      • Open Policy Agent
                                                                                                                                                                                      • AWS IAM
                                                                                                                                                                                      • XACML
                                                                                                                                                                                      • Google Zanzibar
                                                                                                                                                                                      • Rust
                                                                                                                                                                                      • Web Assembly (Wasm)
                                                                                                                                                                                      • OAuth Scopes
                                                                                                                                                                                      • The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

                                                                                                                                                                                        52 min
                                                                                                                                                                                      • Teaching Geeks The Value And Skills Of Public Speaking
                                                                                                                                                                                        Summary

                                                                                                                                                                                        Being able to present your ideas is one of the most valuable and powerful skills to have as a professional, regardless of your industry. For software engineers it is especially important to be able to communicate clearly and effectively because of the detail-oriented nature of the work. Unfortunately, many people who work in software are more comfortable in front of the keyboard than a crowd. In this episode Neil Thompson shares his story of being an accidental public speaker and how he is helping other engineers start down the road of being effective presenters. He discusses the benefits for your career, how to build the skills, and how to find opportunities to practice them. Even if you never want to speak at a conference, it’s still worth your while to listen to Neil’s advice and find ways to level up your presentation and speaking skills.

                                                                                                                                                                                        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!
                                                                                                                                                                                        • We’ve all been asked to help with an ad-hoc request for data by the sales and marketing team. Then it becomes a critical report that they need updated every week or every day. Then what do you do? Send a CSV via email? Write some Python scripts to automate it? But what about incremental sync, API quotas, error handling, and all of the other details that eat up your time? Today, there is a better way. With Census, just write SQL or plug in your dbt models and start syncing your cloud warehouse to SaaS applications like Salesforce, Marketo, Hubspot, and many more. Go to pythonpodcast.com/census today to get a free 14-day trial.
                                                                                                                                                                                        • Are you bored with writing scripts to move data into SaaS tools like Salesforce, Marketo, or Facebook Ads? Hightouch is the easiest way to sync data into the platforms that your business teams rely on. The data you’re looking for is already in your data warehouse and BI tools. Connect your warehouse to Hightouch, paste a SQL query, and use their visual mapper to specify how data should appear in your SaaS systems. No more scripts, just SQL. Supercharge your business teams with customer data using Hightouch for Reverse ETL today. Get started for free at pythonpodcast.com/hightouch.
                                                                                                                                                                                        • Your host as usual is Tobias Macey and today I’m interviewing Neil Thompson about the value of public speaking skills as a developer and how to gain them
                                                                                                                                                                                        • Interview
                                                                                                                                                                                          • Introductions
                                                                                                                                                                                          • How did you get into engineering?
                                                                                                                                                                                          • Can you start by discussing the different types of public speaking that we are talking about and some of the different venues where it might take place?
                                                                                                                                                                                          • How did you get into public speaking?
                                                                                                                                                                                          • What are some of the ways that our speaking abilities can impact the value that we provide and the trajectory of our career as engineers?
                                                                                                                                                                                          • What were some of the methods and resources that you used to improve your own public speaking skills?
                                                                                                                                                                                          • What are the common mistakes that people make when speaking to a group?
                                                                                                                                                                                          • What are some of the non-obvious ways that speaking skills can be useful as an engineer?
                                                                                                                                                                                          • What was your approach to learning how to be an effective speaker?
                                                                                                                                                                                            • What are some of the mis-steps or dead ends that you encountered?
                                                                                                                                                                                            • What are the different skills or capabilities that are necessary for being an effective presenter?
                                                                                                                                                                                            • What are some ways that engineers can practice their presentation skills?
                                                                                                                                                                                            • How do different audiences/venues influence the approach that you take to how to prepare for a presentation?
                                                                                                                                                                                            • How has your experience in public speaking factored into the work you do for your podcast?
                                                                                                                                                                                            • What are some of the most interesting, innovative, or unexpected presentations or speaking techniques that you have seen or used/created?
                                                                                                                                                                                            • What are the most interesting, unexpected, or challenging lessons that you have learned from speaking and teaching others to speak in a professional context?
                                                                                                                                                                                            • What resources do you recommend for engineers who want to improve their speaking and presenting skills?
                                                                                                                                                                                            • Keep In Touch
                                                                                                                                                                                              • LinkedIn
                                                                                                                                                                                              • @neil_i_thompson on Twitter
                                                                                                                                                                                              • Picks
                                                                                                                                                                                                • Tobias
                                                                                                                                                                                                  • Falcon and the Winter Soldier
                                                                                                                                                                                                  • Neil
                                                                                                                                                                                                    • Teach The Geek To Speak
                                                                                                                                                                                                    • Closing Announcements
                                                                                                                                                                                                      • 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 [email protected]) 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
                                                                                                                                                                                                      • Links
                                                                                                                                                                                                        • Materials Science
                                                                                                                                                                                                        • Toastmasters
                                                                                                                                                                                                        • Teach The Geek To Speak
                                                                                                                                                                                                        • Teach The Geek Podcast
                                                                                                                                                                                                        • Developer Advocate
                                                                                                                                                                                                        • The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

                                                                                                                                                                                                          43 min
                                                                                                                                                                                                        • Let The Robots Do The Work Using Robotic Process Automation with Robocorp
                                                                                                                                                                                                          Summary

                                                                                                                                                                                                          One of the great promises of computers is that they will make our work faster and easier, so why do we all spend so much time manually copying data from websites, or entering information into web forms, or any of the other tedious tasks that take up our time? As developers our first inclination is to "just write a script" to automate things, but how do you share that with your non-technical co-workers? In this episode Antti Karjalainen, CEO and co-founder of Robocorp, explains how Robotic Process Automation (RPA) can help us all cut down on time-wasting tasks and let the computers do what they’re supposed to. He shares how he got involved in the RPA industry, his work with Robot Framework and RPA framework, how to build and distribute bots, and how to decide if a task is worth automating. If you’re sick of spending your time on mind-numbing copy and paste then give this episode a listen and then let the robots do the work for you.

                                                                                                                                                                                                          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!
                                                                                                                                                                                                          • We’ve all been asked to help with an ad-hoc request for data by the sales and marketing team. Then it becomes a critical report that they need updated every week or every day. Then what do you do? Send a CSV via email? Write some Python scripts to automate it? But what about incremental sync, API quotas, error handling, and all of the other details that eat up your time? Today, there is a better way. With Census, just write SQL or plug in your dbt models and start syncing your cloud warehouse to SaaS applications like Salesforce, Marketo, Hubspot, and many more. Go to pythonpodcast.com/census today to get a free 14-day trial.
                                                                                                                                                                                                          • Software is read more than it is written, so complex and poorly organized logic slows down everyone who has to work with it. Sourcery makes those problems a thing of the past, giving you automatic refactoring recommendations in your IDE or text editor while you write (I even have it working in Emacs). It isn’t just another linting tool that nags you about issues. It’s like pair programming with a senior engineer, finding and applying structural improvements to your functions so that you can write cleaner code faster. Best of all, listeners of Podcast.__init__ get 6 months of their Pro tier for free if you go to pythonpodcast.com/sourcery today and use the promo code INIT when you sign up.
                                                                                                                                                                                                          • Your host as usual is Tobias Macey and today I’m interviewing Antti Karjalainen about the RPA Framework for automating your daily tasks and his work at Robocorp to manage your robots in production
                                                                                                                                                                                                          • Interview
                                                                                                                                                                                                            • Introductions
                                                                                                                                                                                                            • How did you get introduced to Python?
                                                                                                                                                                                                            • Can you start by giving an overview of what Robotic Process Automation is?
                                                                                                                                                                                                            • What are some of the ways that RPA might be used?
                                                                                                                                                                                                              • What are the advantages over writing a custom library or script in Python to automate a given task?
                                                                                                                                                                                                              • How does the functionality of RPA compare to automation services like Zapier, IFTTT, etc.?
                                                                                                                                                                                                              • What are you building at Robocorp and what was your motivation for starting the business?
                                                                                                                                                                                                                • Who is your target customer and how does that inform the products that you are building?
                                                                                                                                                                                                                • Can you give an overview of the state of the ecosystem for RPA tools and products and how Robocorp and RPA framework fit within it?
                                                                                                                                                                                                                  • How does the RPA Framework relate to Robot Framework?
                                                                                                                                                                                                                  • What are some of the challenges that developers and end users often run into when trying to build, use, or implement an RPA system?
                                                                                                                                                                                                                  • How is the RPA framework itself implemented?
                                                                                                                                                                                                                    • How has the design of the project evolved since you first began working on it?
                                                                                                                                                                                                                    • Can you talk through an example workflow for building a robot?
                                                                                                                                                                                                                    • Once you have built a robot, what are some of the considerations for local execution or deploying it to a production environment?
                                                                                                                                                                                                                    • How can you chain together multiple robots?
                                                                                                                                                                                                                    • What is involved in extending the set of operations available in the framework?
                                                                                                                                                                                                                    • What are the available integration points for plugging a robot written with RPA Framework into another Python project?
                                                                                                                                                                                                                    • What are the dividing lines between RPA Framework and Robocorp?
                                                                                                                                                                                                                      • How are you handling the governance of the open source project?
                                                                                                                                                                                                                      • What are some of the most interesting, innovative, or unexpected ways that you have seen RPA Framework and the Robocorp platform used?
                                                                                                                                                                                                                      • What are the most interesting, unexpected, or challenging lessons that you have learned while building and growing RPA Framework and the Robocorp business?
                                                                                                                                                                                                                      • When is RPA and RPA Framework the wrong choice for automation?
                                                                                                                                                                                                                      • What do you have planned for the future of the framework and business?
                                                                                                                                                                                                                      • Keep In Touch
                                                                                                                                                                                                                        • aikarjal on GitHub
                                                                                                                                                                                                                        • @aikarjal on Twitter
                                                                                                                                                                                                                        • LinkedIn
                                                                                                                                                                                                                        • Picks
                                                                                                                                                                                                                          • Tobias
                                                                                                                                                                                                                            • WandaVision
                                                                                                                                                                                                                            • Antti
                                                                                                                                                                                                                              • Tenet
                                                                                                                                                                                                                              • Closing Announcements
                                                                                                                                                                                                                                • 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 [email protected]) 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
                                                                                                                                                                                                                                • Links
                                                                                                                                                                                                                                  • Robocorp
                                                                                                                                                                                                                                  • RPA Framework
                                                                                                                                                                                                                                  • RCC
                                                                                                                                                                                                                                  • Robotic Process Automation
                                                                                                                                                                                                                                  • Zapier
                                                                                                                                                                                                                                  • IFTTT (If This Then That)
                                                                                                                                                                                                                                  • Robot Framework
                                                                                                                                                                                                                                  • Selenium
                                                                                                                                                                                                                                  • Playwright
                                                                                                                                                                                                                                  • Conda
                                                                                                                                                                                                                                  • Micro Mamba
                                                                                                                                                                                                                                  • PyOxidizer
                                                                                                                                                                                                                                    • Podcast Episode
                                                                                                                                                                                                                                    • XKCD "Is It Worth The Time?"
                                                                                                                                                                                                                                    • XKCD Automation Curve
                                                                                                                                                                                                                                    • The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

                                                                                                                                                                                                                                      46 min
                                                                                                                                                                                                                                    • Keep Your Code Clean And Maintainable Using Static Analysis With Flake8
                                                                                                                                                                                                                                      Summary

                                                                                                                                                                                                                                      When you are writing code it is all to easy to introduce subtle bugs or leave behind unused code. Unused variables, unused imports, overly complex logic, etc. If you are careful and diligent you can find these problems yourself, but isn’t that what computers are supposed to help you with? Thankfully Python has a wealth of tools that will work with you to keep your code clean and maintainable. In this episode Anthony Sottile explores Flake8, one of the most popular options for identifying those problematic lines of code. He shares how he became involved in the project and took over as maintainer and explains the different categories of code quality tooling and how Flake8 compares to other static analyzers. He also discusses the ecosystem of plugins that have grown up around it, including some detailed examples of how you can write your own (and why you might want to).

                                                                                                                                                                                                                                      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!
                                                                                                                                                                                                                                      • We’ve all been asked to help with an ad-hoc request for data by the sales and marketing team. Then it becomes a critical report that they need updated every week or every day. Then what do you do? Send a CSV via email? Write some Python scripts to automate it? But what about incremental sync, API quotas, error handling, and all of the other details that eat up your time? Today, there is a better way. With Census, just write SQL or plug in your dbt models and start syncing your cloud warehouse to SaaS applications like Salesforce, Marketo, Hubspot, and many more. Go to pythonpodcast.com/census today to get a free 14-day trial.
                                                                                                                                                                                                                                      • Your host as usual is Tobias Macey and today I’m interviewing Anthony Sottile about Flake8
                                                                                                                                                                                                                                      • Interview
                                                                                                                                                                                                                                        • Introductions
                                                                                                                                                                                                                                        • How did you get introduced to Python?
                                                                                                                                                                                                                                        • Can you start by giving an overview of what Flake8 is and how you got involved with the project?
                                                                                                                                                                                                                                        • There are a variety of tools available for checking or enforcing code quality. How would you characterize Flake8 in comparison to the other options?
                                                                                                                                                                                                                                        • What do you see as the motivating factors for individuals or teams to integrate static analysis/linting in their toolchain and workflow?
                                                                                                                                                                                                                                          • What are some of the challenges that might prevent someone from adopting something like Flake8?
                                                                                                                                                                                                                                          • How can developers add Flake8 to an existing project without spending hours or days fixing all of the violations?
                                                                                                                                                                                                                                          • Can you describe the overall design and implementation of Flake8?
                                                                                                                                                                                                                                            • How has the design and goals of the project changed or evolved?
                                                                                                                                                                                                                                            • There are a wide array of plugins for Flake8. What is involved in adding new functionality or linting rules?
                                                                                                                                                                                                                                              • What capabilities does Flake8 provide that make it a viable platform for building plugins?
                                                                                                                                                                                                                                              • What are some of the limitations of Flake8 as a platform?
                                                                                                                                                                                                                                              • What do you see as the factors that have contributed to the widespread usage of Flake8 and the large number of available plugins?
                                                                                                                                                                                                                                                • What challenges does that pose as a maintainer of Flake8?
                                                                                                                                                                                                                                                • What are some of the other tools that you see developers use alongside Flake8 to help manage code quality and style enforcement?
                                                                                                                                                                                                                                                • What are some of the most interesting, innovative, or unexpected ways that you have seen Flake8 and its plugin ecosystem used?
                                                                                                                                                                                                                                                • What are the most interesting, unexpected, or challenging lessons that you have learned while working on Flake8?
                                                                                                                                                                                                                                                • When is Flake8 the wrong choice?
                                                                                                                                                                                                                                                • What do you have planned for the future of Flake8?
                                                                                                                                                                                                                                                • Keep In Touch
                                                                                                                                                                                                                                                  • @codewithanthony on Twitter
                                                                                                                                                                                                                                                  • asottile on GitHub
                                                                                                                                                                                                                                                  • LinkedIn
                                                                                                                                                                                                                                                  • Picks
                                                                                                                                                                                                                                                    • Tobias
                                                                                                                                                                                                                                                      • SEVENEVES by Neal Stephenson
                                                                                                                                                                                                                                                      • Anthony
                                                                                                                                                                                                                                                        • pre-commit CI
                                                                                                                                                                                                                                                        • Closing Announcements
                                                                                                                                                                                                                                                          • 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 [email protected]) 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
                                                                                                                                                                                                                                                          • Links
                                                                                                                                                                                                                                                            • Flake8
                                                                                                                                                                                                                                                            • PyFlakes
                                                                                                                                                                                                                                                            • PyCodestyle
                                                                                                                                                                                                                                                            • McCabe
                                                                                                                                                                                                                                                            • pre-commit
                                                                                                                                                                                                                                                              • Podcast Episode
                                                                                                                                                                                                                                                              • PEP 484
                                                                                                                                                                                                                                                              • MyPy
                                                                                                                                                                                                                                                              • Pylance
                                                                                                                                                                                                                                                              • Pyright
                                                                                                                                                                                                                                                              • Pylint
                                                                                                                                                                                                                                                              • Black
                                                                                                                                                                                                                                                              • yapf
                                                                                                                                                                                                                                                              • autopep8
                                                                                                                                                                                                                                                              • pyupgrade
                                                                                                                                                                                                                                                              • isort
                                                                                                                                                                                                                                                              • reorder-python-imports
                                                                                                                                                                                                                                                              • Static Analysis
                                                                                                                                                                                                                                                              • pydocstyle
                                                                                                                                                                                                                                                              • autoflake
                                                                                                                                                                                                                                                              • pyproject.toml
                                                                                                                                                                                                                                                              • Abstract Syntax Tree
                                                                                                                                                                                                                                                              • Concrete Syntax Tree
                                                                                                                                                                                                                                                              • Dagster
                                                                                                                                                                                                                                                              • The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

                                                                                                                                                                                                                                                                50 min

                                                                                                                                                                                                                                                              About The Python Podcast.__init__

                                                                                                                                                                                                                                                              From the publisher's feed

                                                                                                                                                                                                                                                              The podcast about Python and the people who make it great

                                                                                                                                                                                                                                                              More shows like The Python Podcast.__init__

                                                                                                                                                                                                                                                              Freakonomics Radio by Freakonomics Radio + Stitcher

                                                                                                                                                                                                                                                              Freakonomics Radio

                                                                                                                                                                                                                                                              32,053 Listeners

                                                                                                                                                                                                                                                              Odd Lots by Bloomberg

                                                                                                                                                                                                                                                              Odd Lots

                                                                                                                                                                                                                                                              1,977 Listeners

                                                                                                                                                                                                                                                              The Changelog: Software Development, Open Source by Changelog Media

                                                                                                                                                                                                                                                              The Changelog: Software Development, Open Source

                                                                                                                                                                                                                                                              286 Listeners

                                                                                                                                                                                                                                                              Data Skeptic by Kyle Polich

                                                                                                                                                                                                                                                              Data Skeptic

                                                                                                                                                                                                                                                              476 Listeners

                                                                                                                                                                                                                                                              Software Engineering Daily by Software Engineering Daily

                                                                                                                                                                                                                                                              Software Engineering Daily

                                                                                                                                                                                                                                                              623 Listeners

                                                                                                                                                                                                                                                              Talk Python To Me by Michael Kennedy

                                                                                                                                                                                                                                                              Talk Python To Me

                                                                                                                                                                                                                                                              582 Listeners

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

                                                                                                                                                                                                                                                              Super Data Science: ML & AI Podcast with Jon Krohn

                                                                                                                                                                                                                                                              305 Listeners

                                                                                                                                                                                                                                                              Python Bytes by Michael Kennedy and Calvin Hendryx-Parker

                                                                                                                                                                                                                                                              Python Bytes

                                                                                                                                                                                                                                                              213 Listeners

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

                                                                                                                                                                                                                                                              Syntax - Tasty Web Development Treats

                                                                                                                                                                                                                                                              985 Listeners

                                                                                                                                                                                                                                                              DataFramed by DataCamp

                                                                                                                                                                                                                                                              DataFramed

                                                                                                                                                                                                                                                              265 Listeners

                                                                                                                                                                                                                                                              Practical AI by Daniel Whitenack and Chris Benson

                                                                                                                                                                                                                                                              Practical AI

                                                                                                                                                                                                                                                              202 Listeners

                                                                                                                                                                                                                                                              The Intelligence from The Economist by The Economist

                                                                                                                                                                                                                                                              The Intelligence from The Economist

                                                                                                                                                                                                                                                              2,543 Listeners

                                                                                                                                                                                                                                                              The Real Python Podcast by Real Python

                                                                                                                                                                                                                                                              The Real Python Podcast

                                                                                                                                                                                                                                                              139 Listeners

                                                                                                                                                                                                                                                              声动早咖啡 by 声动活泼

                                                                                                                                                                                                                                                              声动早咖啡

                                                                                                                                                                                                                                                              305 Listeners

                                                                                                                                                                                                                                                              The Foreign Affairs Interview by Foreign Affairs Magazine

                                                                                                                                                                                                                                                              The Foreign Affairs Interview

                                                                                                                                                                                                                                                              474 Listeners