
The Python Podcast.__init__
389 episodes — Page 4 of 8

Ep 238From Simple Script To Beautiful Web Application With Streamlit
FullSummary Building well designed and easy to use web applications requires a significant amount of knowledge and experience across a range of domains. This can act as an impediment to engineers who primarily work in so-called back-end technologies such as machine learning and systems administration. In this episode Adrien Treuille describes how the Streamlit framework empowers anyone who is comfortable writing Python scripts to create beautiful applications to share their work and make it accessible to their colleagues and customers. If you have ever struggled with hacking together a simple web application to make a useful script self-service then give this episode a listen and then go experiment with how Streamlit can level up your 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! Having all of your logs and event data in one place makes your life easier when something breaks, unless that something is your Elastic Search cluster because it’s storing too much data. CHAOSSEARCH frees you from having to worry about data retention, unexpected failures, and expanding operating costs. They give you a fully managed service to search and analyze all of your logs in S3, entirely under your control, all for half the cost of running your own Elastic Search cluster or using a hosted platform. Try it out for yourself at pythonpodcast.com/chaossearch and don’t forget to thank them for supporting the show! You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, Corinium Global Intelligence, Alluxio, and Data Council. Upcoming events include the combined events of the Data Architecture Summit and Graphorum, the Data Orchestration Summit, and Data Council in NYC. Go to pythonpodcast.com/conferences to learn more about these and other events, and take advantage of our partner discounts to save money when you register today. Your host as usual is Tobias Macey and today I’m interviewing Adrien Treuille about Streamlit, an open source app framework built for machine learning and data science teams Interview Introductions How did you get introduced to Python? Can you start by explaining what Streamlit is and its origin story? What are some of the types of applications that are commonly built by data teams and who are the typical consumers of those projects? What are some of the challenges or complications that are unique to this problem space? What are some of the complications or challenges that you have faced to integrate Streamlit with so many different machine learning frameworks? Can you describe the technical implementation of Streamlit and how it has evolved since you began working on it? How did you approach the design of the API and development workflow to tailor it for the needs and capabilities of machine learning engineers? If you were to start the project from scratch today what would you do differently? What is a typical workflow for someone working on a machine learning application and how does Streamlit fit in? What are some of the types of tools or processes that it replaces? What are some of the most interesting or unexpected ways that you have seen Streamlit used? What have you found to be some of the most challenging or unexpected aspects of building and evolving Streamlit? How do you see Python evolving in light of Streamlit and other work in the machine learning space? What do you have in store for the future of Streamlit or any adjacent products and services? How are you approaching the governance and sustainability of the Streamlit open source project? Keep In Touch Website LinkedIn @myelbows on Twitter treuille on GitHub Picks Tobias The Book Of Why by Judea Pearl Adrien No Self, No Problem by Anam Thubten 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

Ep 237Automate Your Server Security With GrapheneX
FullSummary The internet is rife with bots and bad actors trying to compromise your servers. To counteract these threats it is necessary to diligently harden your systems to improve server security. Unfortunately, the hardening process can be complex or confusing. In this week’s episode 18 year old Orhun Parmaksiz shares the story of how he and his friends created the GrapheneX framework to simplify the process of securing and maintaining your servers using the power and flexibility of Python. If you run your own software then this is definitely worth a listen. Announcements Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great. When you’re ready to launch your next app or want to try a project you hear about on the show, you’ll need somewhere to deploy it, so take a look at our friends over at Linode. With 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! Having all of your logs and event data in one place makes your life easier when something breaks, unless that something is your Elastic Search cluster because it’s storing too much data. CHAOSSEARCH frees you from having to worry about data retention, unexpected failures, and expanding operating costs. They give you a fully managed service to search and analyze all of your logs in S3, entirely under your control, all for half the cost of running your own Elastic Search cluster or using a hosted platform. Try it out for yourself at pythonpodcast.com/chaossearch and don’t forget to thank them for supporting the show! You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, Corinium Global Intelligence, Alluxio, and Data Council. Upcoming events include the combined events of the Data Architecture Summit and Graphorum, the Data Orchestration Summit, and Data Council in NYC. Go to pythonpodcast.com/conferences to learn more about these and other events, and take advantage of our partner discounts to save money when you register today. Your host as usual is Tobias Macey and today I’m interviewing Orhun Parmaksiz about GrapheneX, a framework for simplifying the process of hardening your servers Interview Introductions How did you get introduced to Python? Can you start by explaining what we mean when we talk about hardening of servers? What are the common ways of hardening a system, which techniques can we use for this purpose? What are some of the high level categories of threats that operators should be considering? What is GrapheneX and what was your motivation for creating it? How does GrapheneX aid users in the process of increasing the security of their infrastructure? Is any extra operating system knowledge required for using GrapheneX? Can you talk through the workflow for someone using GrapheneX to harden their systems? What options does it support for managing deployment across a fleet of servers? Some security controls can actually prevent proper operation of the applications and services that are deployed on a server. How do you approach preventing those scenarios or educating the users in determining which controls are appropriate? Why did you choose Python for a project like GrapheneX? How is GrapheneX implemented? How has the design evolved since you first began working on it? If you were to start the project over today, what would you do differently? Do you accept contributions to the framework? If so, what kind of contributions are needed for improving GrapheneX? For someone who is interested in adding a new module to the framework, what is involved? What have you found to be the most interesting or challenging aspects of your work on GrapheneX? What, if any, aspects of server security have you consciously avoided implementing in GrapheneX? What are your future plans about the GrapheneX? Keep In Touch Orhun GitHub Twitter LinkedIn Picks Tobias Chess Orhun Creeping in My Soul by Cryoshell Gravity Hurts by Cryoshell 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 o

Ep 236Accelerating The Adoption Of Python At Wayfair
FullSummary Large companies often have a variety of programming languages and technologies being used across departments to keep the business running. Python has been gaining ground in these environments because of its flexibility, ease of use, and developer productivity. In order to accelerate the rate of adoption at Wayfair this week’s guest Jonathan Biddle started a team to work with other engineering groups on their projects and show them how best to take advantage of the benefits of Python. In this episode he explains their operating model, shares their success stories, and provides advice on the pitfalls to avoid if you want to follow in his footsteps. This is definitely worth a listen if you are using Python in your work or would like to aid in its adoption. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! Having all of your logs and event data in one place makes your life easier when something breaks, unless that something is your Elastic Search cluster because it’s storing too much data. CHAOSSEARCH frees you from having to worry about data retention, unexpected failures, and expanding operating costs. They give you a fully managed service to search and analyze all of your logs in S3, entirely under your control, all for half the cost of running your own Elastic Search cluster or using a hosted platform. Try it out for yourself at pythonpodcast.com/chaossearch and don’t forget to thank them for supporting the show! You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, Corinium Global Intelligence, Alluxio, and Data Council. Upcoming events include the combined events of the Data Architecture Summit and Graphorum, the Data Orchestration Summit, and Data Council in NYC. Go to pythonpodcast.com/conferences to learn more about these and other events, and take advantage of our partner discounts to save money when you register today. Your host as usual is Tobias Macey and today I’m interviewing Jonathan Biddle about his work to encourage and empower Wayfair engineers in their use of Python Interview Introductions How did you get introduced to Python? Can you start by describing the mission statement for you and your team at Wayfair? What is the origin story for how your group got started? How and where was Python being used within Wayfair at the time? What are the primary languages that are used throughout Wayfair? What is involved in the selection process for a language and technology stack for new projects within Wayfair? Can you describe how and why you work with different groups throughout Wayfair? What are some of the common misconceptions or barriers that you encounter when working with other engineering and product teams about how and where Python will be useful? How large is your team currently and what is the length of a typical engagement? How has the scale and scope of your work changed since your group was first formed? How many different product teams have you worked with at this point and what are some of the notable outcomes? What are some of the most challenging aspects, both technical and organizational, of educating other engineers on when and how to use Python? Can you share some examples of engagements that you would classify as a failure? What lessons have you learned from those situations? What advice do you have for other groups or organizations who may be considering or actively launching similar initiatives? Keep In Touch Website LinkedIn @jonbiddle on Twitter 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 leav

Ep 235Building Quantum Computing Algorithms In Python
FullSummary Quantum computers are the biggest jump forward in processing power that the industry has seen in decades. As part of this revolution it is necessary to change our approach to algorithm design. D-Wave is one of the companies who are pushing the boundaries in quantum processing and they have created a Python SDK for experimenting with quantum algorithms. In this episode Alexander Condello explains what is involved in designing and implementing these algorithms, how the Ocean SDK helps you in that endeavor, and what types of problems are well suited to this approach. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, Corinium Global Intelligence, Alluxio, and Data Council. Upcoming events include the combined events of the Data Architecture Summit and Graphorum, the Data Orchestration Summit, and Data Council in NYC. Go to pythonpodcast.com/conferences to learn more about these and other events, and take advantage of our partner discounts to save money when you register today. Your host as usual is Tobias Macey and today I’m interviewing Alex Condello about the Ocean SDK from D-Wave for building quantum algorithms in Python Interview Introductions How did you get introduced to Python? Can you start by giving a high-level overview of quantum computing? What is the Ocean SDK and how does it fit into the business model for D-Wave? What are some of the problem types that a quantum processor is uniquely well suited for? How does the overall system design for a quantum computer compare to that of the Von Neumann architecture that is common for the machines that we are all familiar with? What are some of the differences in algorithm design when programming for a quantum processor? Is there any specialized background knowledge that is necessary for making effective use of the QPU’s capabilities? What are some of the common difficulties that you have seen users struggle with? How does the Ocean SDK assist the developer in implementing and understanding the patterns necessary for Quantum algorithms? What was the motivation for choosing Python as the target language for an SDK to attract developers to experiment with quantum algorithms? Can you describe how the SDK is implemented and some of the integrations that are necessary for being able to operate on a quantum processor? What have you found to be some of the most interesting, challenging, or unexpected aspects of your work on the Ocean software stack? How do you handle the abstraction of the execution context to allow for replicating the program behavior on CPU/GPU vs QPU Is there any potential for quantum computing to impact research in previously intractable computer science research, such as the P vs NP problem? What are your current scaling limits in terms of providing compute to customers for their problems? What are some of the most interesting, innovative, or unexpected ways that you have seen developers use the Ocean SDK and quantum processors? What are you most excited for as you look to the future capabilities of quantum systems? What are some of the upcoming challenges that you anticipate for the quantum computing industry? Keep In Touch arcondello on GitHub Picks Tobias QuTip Podcast Interview Alex Cython Podcast Interview Links Ocean SDK D-Wave Quantum Computing Quantum Annealing Quantum Superposition Qubit D-Wave Leap Von Neumann Architecture Cuda Linear Programming D-Wave ML Papers D-Wave NetworkX Maximum Cut Problem Ising Problem Los Alamos National Laboratory Vertex Cover Problem D-Wave Hybrid The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Ep 234Illustrating The Landscape And Applications Of Deep Learning
FullSummary Deep learning is a phrase that is used more often as it continues to transform the standard approach to artificial intelligence and machine learning projects. Despite its ubiquity, it is often difficult to get a firm understanding of how it works and how it can be applied to a particular problem. In this episode Jon Krohn, author of Deep Learning Illustrated, shares the general concepts and useful applications of this technique, as well as sharing some of his practical experience in using it for his work. This is definitely a helpful episode for getting a better comprehension of the field of deep learning and when to reach for it in your own projects. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, Corinium Global Intelligence, Alluxio, and Data Council. Upcoming events include the combined events of the Data Architecture Summit and Graphorum, the Data Orchestration Summit, and Data Council in NYC. Go to pythonpodcast.com/conferences to learn more about these and other events, and take advantage of our partner discounts to save money when you register today. Your host as usual is Tobias Macey and today I’m interviewing Jon Krohn about his recent book, deep learning illustrated Interview Introductions How did you get introduced to Python? Can you start by giving a brief description of what we’re talking about when we say deep learning and how you got involved with the field? How does your background in neuroscience factor into your work on designing and building deep learning models? What are some of the ways that you leverage deep learning techniques in your work? What was your motivation for writing a book on the subject? How did the idea of including illustrations come about and what benefit do they provide as compared to other books on this topic? While planning the contents of the book what was your thought process for determining the appropriate level of depth to cover? How would you characterize the target audience and what level of familiarity and proficiency in employing deep learning do you wish them to have at the end of the book? How did you determine what to include and what to leave out of the book? The sequencing of the book follows a useful progression from general background to specific uses and problem domains. What were some of the biggest challenges in determining which domains to highlight and how deep in each subtopic to go? Because of the continually evolving nature of the field of deep learning and the associated tools, how have you guarded against obsolescence in the content and structure of the book? Which libraries did you focus on for your examples and what was your selection process? Now that it is published, is there anything that you would have done differently? One of the critiques of deep learning is that the models are generally single purpose. How much flexibility and code reuse is possible when trying to repurpose one model pipeline for a slightly different dataset or use case? I understand that deployment and maintenance of models in production environments is also difficult. What has been your experience in that regard, and what recommendations do you have for practitioners to reduce their complexity? What is involved in actually creating and using a deep learning model? Can you go over the different types of neurons and the decision making that is required when selecting the network topology? In terms of the actual development process, what are some useful practices for organizing the code and data that goes into a model, given the need for iterative experimentation to achieve desired levels of accuracy? What is your personal workflow when building and testing a new model for a new use case? What are some of the limitations of deep learning and cases where you would recommend against using it? What are you most excited for in the field

Ep 233Andrew's Adventures In Coderland
FullSummary Software development is a unique profession in many ways, and it has given rise to its own subculture due to the unique sets of challenges that face developers. Andrew Smith is an author who is working on a book to share his experiences learning to program, and understand the impact that software is having on our world. In this episode he shares his thoughts on programmer culture, his experiences with Python and other language communities, and how learning to code has changed his views on the world. It was interesting getting an anthropological perspective from a relative newcomer to the world of software. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, Corinium Global Intelligence, and Data Council. Upcoming events include the combined events of the Data Architecture Summit and Graphorum, Data Council in Barcelona, and the Data Orchestration Summit. Go to pythonpodcast.com/conferences to learn more about these and other events, and take advantage of our partner discounts to save money when you register today. Your host as usual is Tobias Macey and today I’m interviewing Andrew Smith about his anthropological study of software engineering culture in his upcoming book Adventures In Coderland. Interview Introductions How did you get introduced to Python? Can you start by describing the scope and intent of your work on Adventures In Coderland? What was your motivation for embarking on this particular project? Prior to the start of your research for this book, what was your level of familiarity with software development as a discipline and a cultural phenomenon? How are you approaching the research for this book and to what level of detail are you trying to address the problem space? What are some of the most striking contrasts that you have identified between software engineers and coding culture as it compares to that of a layperson? We met at the most recent PyCon US, which I understand you attended as a means of conducting research for your book. What are some of the notable aspects of the Python community that you discovered while you were attending? What are some of the other programming communities that you have engaged with? What are some of the differentiating factors that you have noticed between the communities that you have interacted with? What are some of the most surprising discoveries that you have made in the process of writing this book? What is your metric for determining when you have gathered enough raw material to complete the book? Now that you have delved into the peculiarities of "coderland", how has it changed your own outlook on both the software industry, and society at large? What advice do you have for the engineers who are listening as it pertains to your experiences in writing your book? Keep In Touch Website @wiresmith on Twitter Picks Tobias Throughline Podcast Andrew 20 Thousand Hertz Podcast 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 Linksj Adventures In Coderland https://us.pycon.org?utm_source=rss&utm_medium=rss Nicholas Tollervey 1843 Magazine The Economist Free Code Camp Code Golf Moon Dust book about the astronauts who first landed on the moon The Face magazine The Observer The Guardian Charlie Duke Totally Wired Code For America Supercollider programming environment SonicPi George Boole FMRI (Functional

Ep 232Network Automation At Enterprise Scale With Python
FullSummary Designing and maintaining enterprise networks and the associated hardware is a complex and time consuming task. Network automation tools allow network engineers to codify their workflows and make them repeatable. In this episode Antoine Fourmy describes his work on eNMS and how it can be used to automate enterprise grade networks. He explains how his background in telecom networking led him to build an open source platform for network engineers, how it is architected, and how you can use it for creating your own workflows. This is definitely worth listening to as a way to gain some appreciation for all of the work that goes on behind the scenes to make the internet possible. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, Corinium Global Intelligence, Alluxio, and Data Council. Upcoming events include the combined events of the Data Architecture Summit and Graphorum, the Data Orchestration Summit, and Data Council in NYC. Go to pythonpodcast.com/conferences to learn more about these and other events, and take advantage of our partner discounts to save money when you register today. Your host as usual is Tobias Macey and today I’m interviewing Antoine Fourmy about eNMS, an enterprise-grade vendor-agnostic network automation platform. Interview Introductions How did you get introduced to Python? Can you start by explaining what eNMS is What was your motivation for creating it? Who are the target users of eNMS and how much background knowledge of network management is required to be effective with it? What are some of the alternative tools that exist in this space and why might a network operator choose to use eNMS in their place? What are some of the most challenging aspects of network creation and maintenance and how does eNMS assist with them? What are some of the mundane and/or error-prone tasks that can be replaced or automated with eNMS? What are some of the additional features that come into play for more complex networking tasks? Can you describe the system architecture of eNMS and how it has evolved since you first began working on it? eNMS is an impressive project that looks to have a substantial amount of polish. How large is the overall community of users and contributors? For someone who wants to get involved in contributing to eNMS what are some of the types of skills and background that would be helpful? What are some of the most innovative/unexpected ways that you have seen eNMS used? When is eNMS the wrong choice? What do you have planned for the future of the project? Keep In Touch Website LinkedIn afourmy on GitHub Picks Tobias Tedeschi Trucks Band Antoine CheckIO Podcast Episode 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 eNMS Orange Netmiko NAPALM Podcast Episode Paramiko Ansible Requests OpenNMS LibreNMS Ansible Tower Rundeck SaltStack Podcast Episode StackStorm Podcast Episode SaltStack Proxy Minions Hashicorp Vault VirtualBox Flask Django SQLAlchemy APScheduler Docker Podcast Episode Redis Celery The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Ep 231Building A Modern Discussion Forum In Python To Support Healthy Communities
FullSummary Building and sustaining a healthy community requires a substantial amount of effort, especially online. The design and user experience of the digital space can impact the overall interactions of the participants and guide them toward respectful conversation. In this episode Rafał Pitoń shares his experience building the Misago platform for creating community forums. He explains his motivation for creating the project, the lessons he has learned in the process, and how it is being used by himself and others. This was a great conversation about how technology is just a means, and not the end in itself. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, Corinium Global Intelligence, and Data Council. Upcoming events include the combined events of the Data Architecture Summit and Graphorum, Data Council in Barcelona, and the Data Orchestration Summit. Go to pythonpodcast.com/conferences to learn more about these and other events, and take advantage of our partner discounts to save money when you register today. Your host as usual is Tobias Macey and today I’m interviewing Rafał Pitoń about Misago, a fully featured modern forum application that is fast, scalable, and responsive Interview Introductions How did you get introduced to Python? Can you start by explaining what Misago is and your motivation for creating it? How does it compare to other modern forum options such as Discourse and Flarum? How did you generate and prioritize the set of features that you have implemented and what are the main capabilities that are still on your roadmap? Is Misago intended to be run in isolation, or does it allow for integrating into a larger Django project? Is there any support for multi-tenancy? How is Misago itself implemented and how has the architecture evolved since you first began working on it? If you were to start it today, what are some of the choices that you would make differently? What are the extension points that developers can hook into for adding custom functionality? In addition to the technical challenges, managing a forum involves a fair amount of social challenges. How does Misago help with management of a healthy community? How do different design elements factor into promoting healthy conversation and sustainable engagement? What are some of the aspects of community management and the accompanying platform features that enable them which aren’t initially obvious? For someone who wants to use Misago, what is involved in deploying and configuring it? What are some of the routine maintenance tasks that they should be aware of? What are some of the most interesting or unexpected ways that you have seen Misago used? What have you found to be the most interesting, unexpected, and challenging aspects of building and maintaining a forum platform? What do you have planned for the future of Misago? Keep In Touch rafalp on GitHub @RafalPiton on Twitter 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 Picks Tobias Fear Innoculum by Tool Rafał github.com/encode Ariadne GraphQL Library Links Misago Poland Mirumee Saleor Episode PHP Discourse Flarum MySQL PostgreSQL Data Engineering Podcast Interview jQuery DJango Rest Framework EmberJS MithrilJS AngularJS ReactJS PHPBB Celery GDPR == General Data Privacy Regulation Docker misago_docker VPS == Virtual Private Ser

Ep 230Exploratory Data Analysis Made Easy At The Command Line
FullSummary There are countless tools and libraries in Python for data scientists to perform powerful analyses, but they often have a setup cost that acts as a barrier to ad-hoc exploration of data. Visidata is a command line application that eliminates the friction involved with starting the discovery process. In this episode Saul Pwanson explains his motivation for creating it, why a terminal environment is a useful place for this work, and how you can use Visidata for your own work. If you have ever avoided looking at a data set because you couldn’t be bothered with the boilerplate for a Jupyter notebook, then Visidata is the perfect addition to your toolbox. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, Corinium Global Intelligence, and Data Council. Upcoming events include the Strata Data conference, the combined events of the Data Architecture Summit and Graphorum, and Data Council in Barcelona. Go to pythonpodcast.com/conferences to learn more about these and other events, and take advantage of our partner discounts to save money when you register today. Your host as usual is Tobias Macey and today I’m interviewing Saul Pwanson about Visidata, a terminal oriented interactive multitool for tabular data Interview Introductions How did you get introduced to Python? Can you start by describing what Visidata is and how the project got started? What are the main use cases for Visidata? What are some tools that it has replaced in your workflow? Can you talk through a typical workflow for data exploration and analysis with Visidata? One of the capabilities that you mention on the website is quickly opening large files. What are some strategies that you have used to enable performant access for files that might crash a typical editor (e.g. Vim, Emacs)? Can you describe how Visidata is implemented and how it has evolved since you started working on it (including the upcoming 2.0 release)? What libraries or language features have proven most useful? Why did you choose to implement Visidata as a terminal only tool and what constraints does that bring with it? What are some of the most challenging aspects of building a terminal UI for data exploration and analysis? Because of its manifestation as a terminal/CLI application it relies heavily on keyboard bindings. How do you approach key assignments to ensure a consistent and intuitive user experience? What are some of the types of analysis that Visidata can be used for out of the box? What are some of the most interesting/unexpected/innovative ways that you have seen Visidata used? How much community adoption have you seen and how do you approach project governance as a solo developer? What do you have planned for the future of Visidata? Keep In Touch Website saulpw on GitHub @saulfp on Twitter LinkedIn Picks Tobias Data Is Plural newsletter Saul TMate Mosh – The Mobile Shell 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 Visidata F5 Networks HDF5 PyTables Podcast Interview vgit vping Jeremy Singer-Vine data.boston.gov Recurse Center Curses dateutil decorators Electron OpenRefine Tmux Visicalc Windows Subsystem For Linux Saul’s Lightning Talk The Book of Visidata Where In The World Is Carmen San Diego Oh My Zsh The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC

Ep 229Cultivating The Python Community In Argentina
FullSummary The Python community in Argentina is large and active, thanks largely to the motivated individuals who manage and organize it. In this episode Facundo Batista explains how he helped to found the Python user group for Argentina and the work that he does to make it accessible and welcoming. He discusses the challenges of encompassing such a large and distributed group, the types of events, resources, and projects that they build, and his own efforts to make information free and available. He is an impressive individual with a substantial list of accomplishments, as well as exhibiting the best of what the global Python community has to offer. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, Corinium Global Intelligence, and Data Council. Upcoming events include the O’Reilly AI conference, the Strata Data conference, the combined events of the Data Architecture Summit and Graphorum, and Data Council in Barcelona. Go to pythonpodcast.com/conferences to learn more about these and other events, and take advantage of our partner discounts to save money when you register today. Your host as usual is Tobias Macey and today I’m interviewing Facundo Batista about his experiences founding and fostering the Argentinian Python community, working as a core developer, and his career in Python Interview Introductions How did you get introduced to Python? What was your motivation for organizing a Python user group in Argentina? How does the geography and culture of Argentina influence the focus of the community? Argentina is a fairly large country. What is the reasoning for having the user group encompass the whole nation and how is it organized to provide access to everyone? What are some notable projects that have been built by or for members of PyAr? What are some of the challenges that you faced while building CDPedia and what aspects of it are you most proud of? How did you get started as a core developer? What areas of the language and runtime have you been most involved with? As a core developer, what are some of the most interesting/unexpected/challenging lessons that you have learned? What other languages do you currently use and what is it about Python that has motivated you to spend so much of your attention on it? What are some of the shortcomings in Python that you would like to see addressed in the future? Outside of CPython, what are some of the projects that you are most proud of? How has your involvement with core development and PyAr influenced your life and career? Keep In Touch @facundobatista on Twitter Blog Picks Tobias Dictionary of Difficult Words Facundo Fades 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 PyAr Argentina PyAr Mailing List PyAr Telegram PyCon Argentina Buenos Aires Cordoba Rosario Mendoza CDPedia PyCamp PSF == Python Software Foundation Wikipedia Internet Archive Decimal Module PEP 327 Tim Peters Canonical Tennis Fades The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Ep 228Python Powered Journalistic Freedom With SecureDrop
FullSummary The internet has made it easier than ever to share information, but at the same time it has increased our ability to track that information. In order to ensure that news agencies are able to accept truly anonymous material submissions from whistelblowers, the Freedom of the Press foundation has supported the ongoing development and maintenance of the SecureDrop platform. In this episode core developers of the project explain what it is, how it protects the privacy and identity of journalistic sources, and some of the challenges associated with ensuring its security. This was an interesting look at the amount of effort that is required to avoid tracking in the modern era. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, Corinium Global Intelligence, and Data Council. Upcoming events include the O’Reilly AI conference, the Strata Data conference, the combined events of the Data Architecture Summit and Graphorum, and Data Council in Barcelona. Go to pythonpodcast.com/conferences to learn more about these and other events, and take advantage of our partner discounts to save money when you register today. Your host as usual is Tobias Macey and today I’m interviewing Jen Helsby and Kushal Das about SecureDrop, a secure platform for submitting and receiving documents anonymously Interview Introductions How did you get introduced to Python? Can you start by describing what SecureDrop is and how it got started? How did you get involved in the project? Can you give some background on where and why it is useful? For someone using a running instance, what does their workflow look like? What are some of the ways that you minimize user experience hurdles to prevent them from circumventing the security through laziness or apathy? I was a bit surprised to see the references to the messaging system that is included. Why is that an important feature? What form do the submissions generally take and what are the limits on formats that you can accept? How is the system itself architected and how has the design evolved since the first implementation? In terms of the security protocols and technologies that are implemented, what factors are you considering as you develop the project? What are the weak points or edge cases that could lead to compromise and how do you guard against them? In terms of the deployment and maintenance of a SecureDrop instance, how much technological sophistication is necessary for the organization running it, and how much effort do you put into simplifying it? What are some of the notable uses of a SecureDrop deployment and what motivates you to continue working on it? What are the most interesting/innovative/unexpected uses of SecureDrop that you have seen? How do you approach the sustainability of the platform? What have you found most challenging/interested/unexpected in your work on SecureDrop? What is in store for the future of the project? Keep In Touch Jen @redshiftzero on Twitter redshiftzero on GitHub Blog Kushal Website @kushaldas on Twitter kushaldas on GitHub Picks Tobias Laser Tag Kushal Permanent Record by Edward Snowden Jen Permanent Record by Edward Snowden 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 SecureDrop Aaron Swartz Freedom Of The Press Foundation SecureDrop Directory TOR Browser TOR == The Onion Router Tails OS

Ep 227Combining Python And SQL To Build A PyData Warehouse
FullSummary The ecosystem of tools and libraries in Python for data manipulation and analytics is truly impressive, and continues to grow. There are, however, gaps in their utility that can be filled by the capabilities of a data warehouse. In this episode Robert Hodges discusses how the PyData suite of tools can be paired with a data warehouse for an analytics pipeline that is more robust than either can provide on their own. This is a great introduction to what differentiates a data warehouse from a relational database and ways that you can think differently about running your analytical workloads for larger volumes of data. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! Taking a look at recent trends in the data science and analytics landscape, it’s becoming increasingly advantageous to have a deep understanding of both SQL and Python. A hybrid model of analytics can achieve a more harmonious relationship between the two languages. Read more about the Python and SQL Intersection in Analytics at mode.com/init. Specifically, we’re going to be focusing on their similarities, rather than their differences. You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, Corinium Global Intelligence, and Data Council. Upcoming events include the O’Reilly AI conference, the Strata Data conference, the combined events of the Data Architecture Summit and Graphorum, and Data Council in Barcelona. Go to pythonpodcast.com/conferences to learn more about these and other events, and take advantage of our partner discounts to save money when you register today. Your host as usual is Tobias Macey and today I’m interviewing Robert Hodges about how the PyData ecosystem can play nicely with data warehouses Interview Introductions How did you get introduced to Python? To start with, can you give a quick overview of what a data warehouse is and how it differs from a "regular" database for anyone who isn’t familiar with them? What are the cases where a data warehouse would be preferable and when are they the wrong choice? What capabilities does a data warehouse add to the PyData ecosystem? For someone who doesn’t yet have a warehouse, what are some of the differentiating factors among the systems that are available? Once you have a data warehouse deployed, how does it get populated and how does Python fit into that workflow? For an analyst or data scientist, how might they interact with the data warehouse and what tools would they use to do so? What are some potential bottlenecks when dealing with the volumes of data that can be contained in a warehouse within Python? What are some ways that you have found to scale beyond those bottlenecks? How does the data warehouse fit into the workflow for a machine learning or artificial intelligence project? What are some of the limitations of data warehouses in the context of the Python ecosystem? What are some of the trends that you see going forward for the integration of the PyData stack with data warehouses? What are some challenges that you anticipate the industry running into in the process? What are some useful references that you would recommend for anyone who wants to dig deeper into this topic? Keep In Touch LinkedIn hodgesrm on GitHub Picks Tobias Foundations Of Architecting Data Solutions: Managing Successful Data Projects by Ted Malaska & Jonathan Seidman Robert Reading old academic papers such as CStore Python Machine Learning by Sebastian Raschka 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 plea

Ep 226AI Driven Automated Code Review With DeepCode
FullSummary Software engineers are frequently faced with problems that have been fixed by other developers in different projects. The challenge is how and when to surface that information in a way that increases their efficiency and avoids wasted effort. DeepCode is an automated code review platform that was built to solve this problem by training a model on a massive array of open sourced code and the history of their bug and security fixes. In this episode their CEO Boris Paskalev explains how the company got started, how they build and maintain the models that provide suggestions for improving your code changes, and how it integrates into your workflow. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, Corinium Global Intelligence, and Data Council. Upcoming events include the O’Reilly AI conference, the Strata Data conference, the combined events of the Data Architecture Summit and Graphorum, and Data Council in Barcelona. Go to pythonpodcast.com/conferences to learn more about these and other events, and take advantage of our partner discounts to save money when you register today. Your host as usual is Tobias Macey and today I’m interviewing Boris Paskalev about DeepCode, an automated code review platform for detecting security vulnerabilities in your projects Interview Introductions Can you start by explaining what DeepCode is and the story of how it got started? How is the DeepCode platform implemented? What are the current languages that you support and what was your guiding principle in selecting them? What languages are you targeting next? What is involved in maintaining support for languages as they release new versions with new features? How do you ensure that the recommendations that you are making are not using languages features that are not available in the runtimes that a given project is using? For someone who is using DeepCode, how does it fit into their workflow? Can you explain the process that you use for training your models? How do you curate and prepare the project sources that you use to power your models? How much domain expertise is necessary to identify the faults that you are trying to detect? What types of labelling do you perform to ensure that the resulting models are focusing on the proper aspects of the source repositories? How do you guard against false positives and false negatives in your analysis and recommendations? Does the code that you are analyzing and the resulting fixes act as a feedback mechanism for a reinforcement learning system to update your models? How do you guard against leaking intellectual property of your scanned code when surfacing recommendations? What have been some of the most interesting/unexpected/challenging aspects of building the DeepCode product? What do you have planned for the future of the platform and business? Keep In Touch LinkedIn Picks Tobias Redwall Series by Brian Jacques Boris Artifical Intelligence Get outside 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 DeepCode Zurich, Switzerland BigCode ETH Zurich Datalog F Strings Data Classes DeepCode Research The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Ep 225Security, UX, and Sustainability For The Python Package Index
FullSummary PyPI is a core component of the Python ecosystem that most developer’s have interacted with as either a producer or a consumer. But have you ever thought deeply about how it is implemented, who designs those interactions, and how it is secured? In this episode Nicole Harris and William Woodruff discuss their recent work to add new security capabilities and improve the overall accessibility and user experience. It is a worthwhile exercise to consider how much effort goes into making sure that we don’t have to think much about this piece of infrastructure that we all rely on. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, Corinium Global Intelligence, and Data Counsil. Upcoming events include the O’Reilly AI conference, the Strata Data conference, the combined events of the Data Architecture Summit and Graphorum, and Data Council in Barcelona. Go to pythonpodcast.com/conferences to learn more about these and other events, and take advantage of our partner discounts to save money when you register today. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) 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 Your host as usual is Tobias Macey and today I’m interviewing Nicole Harris and William Woodruff about the work they are doing on the PyPI service to improve the security and utility of the package repository that we all rely on Interview Introductions How did you get introduced to Python? Can you start by sharing how you each got involved in working on PyPI? What was the state of the system at the time that you first began working on it? Once you committed to working on PyPI how did you each approach the process of identifying and prioritizing the work that needed to be done? What were the most significant issues that you were faced with at the outset? How often have the issues that you each focused on overlapped at the cross section of UX and security? How do you balance the tradeoffs that exist at that boundary? What is the surface area of the domains that you are each working in? (e.g. web UI, system API, data integrity, platform support, etc.) What are some of the pain points or areas of confusion from a user perspective that you have dealt with in the process of improving the platform? What have been the most notable features or improvements that you have each introduced to PyPI? What were the biggest challenges with implementing or integrating those changes? How do you approach introducing changes to PyPI given the volume of traffic that it needs to support and the level of importance that it serves in the community? What are some examples of attack vectors that exist as a result of the nature of the PyPI platform and what are you most concerned by? How does poor accessibility or user experience impact the utility of PyPI and the community members who interact with it? What have you found to be the most interesting/challenging/unexpected aspects of working on Warehouse? What are some of the most useful lessons that you have learned in the process? What do you have planned for future improvements to the platform? How can the listeners get involved and help out? How was this work funded? Keep In Touch Nicole @nlhkabu on Twitter Website If you’re using CI to upload to PyPI and would like to speak with Nicole please book a time here If you’re using assistive technology and would like to speak with Nicole please book a time here William @8x5clPW2 Website Email Please get in touch if you’d like to work with Trail of

Ep 224Learning To Program In Python With CodeGrades
FullSummary With the increasing role of software in our world there has been an accompanying focus on teaching people to program. There are numerous approaches that have been attempted to achieve this goal with varying levels of success. Nicholas Tollervey has begun a new effort that blends the approach adopted by musicians and martial artists that uses a series of grades to provide recognition for the achievements of students. In this episode he explains how he has structured the study groups, syllabus, and evaluations to help learners build projects based on their interests and guide their own education while incorporating useful skills that are necessary for a career in software. If you are interested in learning to program, teach others, or act as a mentor then give this a listen and then get in touch with Nicholas to help make this endeavor a success. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, Corinium Global Intelligence. Coming up this fall is the combined events of Graphorum and the Data Architecture Summit. The agendas have been announced and super early bird registration for up to $300 off is available until July 26th, with early bird pricing for up to $200 off through August 30th. Use the code BNLLC to get an additional 10% off any pass when you register. Go to pythonpodcast.com/conferences to learn more and take advantage of our partner discounts when you register. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) 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 Your host as usual is Tobias Macey and today Nicholas Tollervey is back to talk about his work on CodeGrades, a new effort that he is building to blend his backgrounds in music, education, and software to help teach kids of all ages how to program. Interview Introductions How did you get introduced to Python? Can you start by describing what CodeGrades is and what motivated you to start this project? How does it differ from other approaches to teaching software development that you have encountered? Is there a particular age or level of background knowledge that you are targeting with the curriculum that you are developing? What are the criteria that you are measuring against and how does that criteria change as you progress in grade levels? For someone who completes the full set of levels, what level of capability would you expect them to have as a developer? Given your affiliation with the Python community it is understandable that you would target that language initially. What would be involved in adapting the curriculum, mentorship, and assessments to other languages? In what other ways can this idea and platform be adapted to accomodate other engineering skills? (e.g. system administration, statistics, graphic design, etc.) What interesting/exciting/unexpected outcomes and lessons have you found while iterating on this idea? For engineers who would like to be involved in the CodeGrades platform, how can they contribute? What challenges do you anticipate as you continue to develop the curriculum and mentor networks? How do you envision the future of CodeGrades taking ship in the medium to long term? Keep In Touch ntoll on GitHub Website @ntoll on Twitter Picks Tobias Parsy Nevermoor: The Trials of Morrigan Crow Nicholas Kivy Wittgenstein: The Duty Of Genious The Hitchhiker’s Guide To The Galaxy by Douglas Adams Links CodeGrades Blog Post C# .NET London IronPython Musical Grades Autodidact Lambda School How To Draw An Owl Dunder (double underscore) methods Duck Typing Impostor Synd

Ep 223Build Your Own Knowledge Graph With Zincbase
FullSummary Computers are excellent at following detailed instructions, but they have no capacity for understanding the information that they work with. Knowledge graphs are a way to approximate that capability by building connections between elements of data that allow us to discover new connections among disparate information sources that were previously uknown. In our day-to-day work we encounter many instances of knowledge graphs, but building them has long been a difficult endeavor. In order to make this technology more accessible Tom Grek built Zincbase. In this episode he explains his motivations for starting the project, how he uses it in his daily work, and how you can use it to create your own knowledge engine and begin discovering new insights of your own. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! And to keep track of how your team is progressing on building new features and squashing bugs, you need a project management system designed by software engineers, for software engineers. Clubhouse lets you craft a workflow that fits your style, including per-team tasks, cross-project epics, a large suite of pre-built integrations, and a simple API for crafting your own. With such an intuitive tool it’s easy to make sure that everyone in the business is on the same page. Podcast.init listeners get 2 months free on any plan by going to pythonpodcast.com/clubhouse today and signing up for a trial. You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, and the Open Data Science Conference. Coming up this fall is the combined events of Graphorum and the Data Architecture Summit. The agendas have been announced and super early bird registration for up to $300 off is available until July 26th, with early bird pricing for up to $200 off through August 30th. Use the code BNLLC to get an additional 10% off any pass when you register. Go to pythonpodcast.com/conferences to learn more and take advantage of our partner discounts when you register. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) 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 Your host as usual is Tobias Macey and today I’m interviewing Tom Grek about knowledge graphs, when they’re useful, and his project Zincbase that makes them easier to build Interview Introductions How did you get introduced to Python? Can you start by explaining what a knowledge graph is and some of the ways that they are used? How did you first get involved in the space of knowledge graphs? You have built the Zincbase project for building and querying knowledge graphs. What was your motivation for creating this project and what are some of the other tools that are available to perform similar tasks? Can you describe how Zincbase is implemented and some of the ways that it has evolved since you first began working on it? What are some of the assumptions that you had at the outset of the project which have been challenged or updated in the process of working on and with it? What are some of the common challenges when building or using knowledge graphs? How has the domain of knowledge graphs changed in recent years as new approaches to entity resolution and data processing have been introduced? Can you talk through a use case and workflow for using Zincbase to design and populate a knowledge graph? What are some of the ways that you are using Zincbase in your own projects? What have you found to be the most challenging/interesting/unexpected lessons that you have learned in the process of building and maintaining Zincbase? What do you have planned for the future of

Ep 222Docker Best Practices For Python In Production
FullSummary Docker is a useful technology for packaging and deploying software to production environments, but it also introduces a different set of complexities that need to be understood. In this episode Itamar Turner-Trauring shares best practices for running Python workloads in production using Docker. He also explains some of the security implications to be aware of and digs into ways that you can optimize your build process to cut down on wasted developer time. If you are using Docker, thinking about using it, or just heard of it recently then it is worth your time to listen and learn about some of the cases you might not have considered. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! To connect with the startups that are shaping the future and take advantage of the opportunities that they provide, check out Angel List where you can invest in innovative business, find a job, or post a position of your own. Sign up today at pythonpodcast.com/angel and help support this show. You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, and the Open Data Science Conference. Coming up this fall is the combined events of Graphorum and the Data Architecture Summit. The agendas have been announced and super early bird registration for up to $300 off is available until July 26th, with early bird pricing for up to $200 off through August 30th. Use the code BNLLC to get an additional 10% off any pass when you register. Go to pythonpodcast.com/conferences to learn more and take advantage of our partner discounts when you register. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) 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 Your host as usual is Tobias Macey and today I’m interviewing Itamar Turner-Trauring about what you need to know about running Python workloads in Docker Interview Introductions How did you get introduced to Python? For anyone who is unfamiliar with it, can you describe what Docker is and the benefits that it can provide? What was your motivation for dedicating so much time and energy to the specific area of using Docker for Python production usage? What are some of the common issues that developers and operations engineers run into when dealing with Docker and its build system? What are some of the issues that are specific to Python that you have run into when using Docker? How does the ecosystem for Python in containers compare to other languages that you are familiar with? What are some of the security issues that engineers are likely to run into when using some of the advice and pre-existing containers that are publicly available? One of the issues that you call out is the speed of container builds. What are some of the contributing factors that lead to such slow packaging times? Can you talk through some of the aspects of multi-layer packages and useful ways to take proper advantage of them? There have been some recent projects that attempt to work around the shortcomings of the Dockerfile itself. What are your thoughts on that overall effort and any specific tools that you have experimented with? When is Docker the wrong choice for a production environment? What are some useful alternatives to Docker, for Python specifically and for software distribution in general that you have had good luck with? Keep In Touch Website @itamarst on Twitter itamarst on GitHub Picks Tobias Shazam Movie Itamar Veronica Mars Links Itamar’s Best Practices Guide Docker Zope GitLab CI Heresy In The Church Of Docker Poetry Pipenv Dockerfile 40 Years of DSL Disasters (Slides) Ubuntu Debian Docker Layers Bitnami

Ep 221Protecting The Future Of Python By Hunting Black Swans
FullSummary The Python language has seen exponential growth in popularity and usage over the past decade. This has been driven by industry trends such as the rise of data science and the continued growth of complex web applications. It is easy to think that there is no threat to the continued health of Python, its ecosystem, and its community, but there are always outside factors that may pose a threat in the long term. In this episode Russell Keith-Magee reprises his keynote from PyCon US in 2019 and shares his thoughts on potential black swan events and what we can do as engineers and as a community to guard against them. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! And to grow your professional network and find opportunities with the startups that are changing the world then Angel List is the place to go. Go to pythonpodcast.com/angel to sign up today. You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, and the Open Data Science Conference. Upcoming events include the O’Reilly AI Conference, the Strata Data Conference, and the combined events of the Data Architecture Summit and Graphorum. Go to pythonpodcast.com/conferences to learn more and take advantage of our partner discounts when you register. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) 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 Your host as usual is Tobias Macey and today I’m interviewing Russell Keith-Magee about potential black swans for the Python language, ecosystem, and community and what we can do about them Interview Introductions How did you get introduced to Python? Can you start by explaining what a Black Swan is in the context of our conversation? You were the opening keynote for PyCon this year, where you talked about some of the potential challenges facing Python. What motivated you to choose this topic for your presentation? What effect did your talk have on the overall tone and focus of the conversations that you experienced during the rest of the conference? What were some of the most notable or memorable reactions or pieces of feedback that you heard? What are the biggest potential risks for the Python ecosystem that you have identified or discussed with others? What is your overall sentiment about the potential for the future of Python? As developers and technologists, does it really matter if Python continues to be a viable language? What is your personal wish list of new capabilities or new directions for the future of the Python language and ecosystem? For listeners to this podcast and members of the Python community, what are some of the ways that we can contribute to the long-term success of the language? Keep In Touch BeeWare freakboy3742 on GitHub @freakboy3742 on Twitter Website Picks Tobias Jethro Tull Russell pytest-tldr pdbpp Links PyCon 2019 Keynote Presentation Perth Western Australia Django BeeWare RedHat Emacs Vim Lisp Glyph Twisted Cal Henderson Flickr Slack Black Swan Animal Book Metaphor Nassim Nicholas Taleb PyCon US Ewa Jodlowska Python Software Foundation Podcast Interview Swift JavaScript Django Girls Briefcase packaging tool PyPy Web Assembly (WASM) COBOL Tidelift Cricket unit test runner The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Ep 220A Modern Open Source Project Management Platform
FullSummary Project management is a discipline that has been through many incarnations, spawning an entire industry of businesses and tools. The challenge is to build a platform that is sufficiently powerful and adaptable to fit the workflow of your teams, while remaining opinionated enough to be useful. It also helps to have an open and extensible platform that can be customized as needed. In this episode Pablo Ruiz Múzquiz explains the motivation for creating the open source tool Taiga, how it compares to the other options in the market, and how you can use it for your own projects. He also discusses the challenges inherent to project management tools, his philosophies on what makes a project successful, and how to manage your team workflows to be most effective. It was helpful learning from Pablo’s long experience in the software industry and managing teams of various sizes. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, and the Open Data Science Conference. Coming up this fall is the combined events of Graphorum and the Data Architecture Summit. The agendas have been announced and super early bird registration for up to $300 off is available until July 26th, with early bird pricing for up to $200 off through August 30th. Use the code BNLLC to get an additional 10% off any pass when you register. Go to pythonpodcast.com/conferences to learn more and take advantage of our partner discounts when you register. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) 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 Your host as usual is Tobias Macey and today I’m interviewing Pablo Ruiz Múzquiz about Taiga, a project management platform for agile developers & designers and project managers who want a beautiful tool that makes work truly enjoyable Interview Introductions How did you get introduced to Python? Can you start by explaining what Taiga is and the reason for building it? Project management platforms have been available for a long time. Can you describe how Taiga fits into that market and what makes it stand out? Can you describe how you view project management and some of the unique challenges that it poses when building a tool for it? How do the requirements differ between project management for software teams vs other disciplines? How is Taiga implemented and how has the system design evolved since it was first started? For someone who is using Taiga can you talk through the features of the platform and how it fits into a typical workflow? How do you maintain a balance between usability and structure in managing project workflows against flexibility and customization? Within an engineering team how do you view the responsibility for driving and maintaining the lifecycle of a project? What are the most common points of friction within a project management workflow and how are you working to address them in Taiga? Onboarding and discovery for a new contributor in a given project is often painful. What are some steps that a project manager or product team can take to make that process more palatable? How has the landscape of project management practices and tools changed since you first began working on Taiga and how has that influenced your roadmap? What have been the most challenging or difficult aspects of building and growing the Taiga project and community? What lessons have you learned in the process that have been particularly valuable or unexpected? What are some of the most interesting/unexpected/innovative ways that you have seen Taiga us

Ep 219Domain Driven Design For Python
FullSummary When your software projects start to scale it becomes a greater challenge to understand and maintain all of the pieces. In this episode Henry Percival shares his experiences working with domain driven design in large Python projects. He explains how it is helpful, and how you can start using it for your own applications. This was an informative conversation about software architecture patterns for large organizations and how they can be used by Python developers. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! And to keep track of how your team is progressing on building new features and squashing bugs, you need a project management system designed by software engineers, for software engineers. Clubhouse lets you craft a workflow that fits your style, including per-team tasks, cross-project epics, a large suite of pre-built integrations, and a simple API for crafting your own. With such an intuitive tool it’s easy to make sure that everyone in the business is on the same page. Podcast.init listeners get 2 months free on any plan by going to pythonpodcast.com/clubhouse today and signing up for a trial. You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, and the Open Data Science Conference. Coming up this fall is the combined events of Graphorum and the Data Architecture Summit. The agendas have been announced and super early bird registration for up to $300 off is available until July 26th, with early bird pricing for up to $200 off through August 30th. Use the code BNLLC to get an additional 10% off any pass when you register. Go to pythonpodcast.com/conferences to learn more and take advantage of our partner discounts when you register. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) 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 Your host as usual is Tobias Macey and today I’m interviewing Harry Percival about domain driven design and enterprise application architecture in Python Interview Introductions How did you get introduced to Python? Can you start by explaining what "application architecture" is and how it compares to the types of application designs that Python developers and teams typically rely on? how does it contrast with "enterprise architecture"? What are the influences that tend to lead engineers into sub-optimal architectures and how can they guard against them? One of the core concepts in this problem space is that of "domain driven design". Can you unpack that term and explain the benefits that it provides to software architecture? What are some of the other concepts that are common among application architecture patterns? What are some of the common points of confusion among engineers who are first working with DDD? Is there any particular size or scope of project and organization that merits the approach of domain driven design or is it applicable even at small scales of complexity and team size? Now that we’ve convinced everyone that they should be using DDD can you talk through the steps involved in identifying and encapsulating the various implementation details that they will need to work through? How does that process change when dealing with an existing application as opposed to a "greenfield" project? How do Python language constructs and libraries impact the approach to implementation of application architecture patterns as compared to more traditional "enterprise" languages such as Java and C#? What are some of the architectural anti-patterns to watch out for when implementing DDD? On any given team, w

Ep 218Open Source Automated Machine Learning With MindsDB
FullSummary Machine learning is growing in popularity and capability, but for a majority of people it is still a black box that we don’t fully understand. The team at MindsDB is working to change this state of affairs by creating an open source tool that is easy to use without a background in data science. By simplifying the training and use of neural networks, and making their logic explainable, they hope to bring AI capabilities to more people and organizations. In this interview George Hosu and Jorge Torres explain how MindsDB is built, how to use it for your own purposes, and how they view the current landscape of AI technologies. This is a great episode for anyone who is interested in experimenting with machine learning and artificial intelligence. Give it a listen and then try MindsDB for yourself. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! And to keep track of how your team is progressing on building new features and squashing bugs, you need a project management system designed by software engineers, for software engineers. Clubhouse lets you craft a workflow that fits your style, including per-team tasks, cross-project epics, a large suite of pre-built integrations, and a simple API for crafting your own. With such an intuitive tool it’s easy to make sure that everyone in the business is on the same page. Podcast.init listeners get 2 months free on any plan by going to pythonpodcast.com/clubhouse today and signing up for a trial. You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, and the Open Data Science Conference. Coming up this fall is the combined events of Graphorum and the Data Architecture Summit. The agendas have been announced and super early bird registration for up to $300 off is available until July 26th, with early bird pricing for up to $200 off through August 30th. Use the code BNLLC to get an additional 10% off any pass when you register. Go to pythonpodcast.com/conferences to learn more and take advantage of our partner discounts when you register. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) 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 Your host as usual is Tobias Macey and today I’m interviewing George Hosu and Jorge Torres about MindsDB, a framework for streamlining the use of neural networks Interview Introductions How did you get introduced to Python? Can you start by explaining what MindsDB is and the problem that it is trying to solve? What was the motivation for creating the project? Who is the target audience for MindsDB? Before we go deep into MindsDB can you explain what a neural network is for anyone who isn’t familiar with the term? For someone who is using MindsDB can you talk through their workflow? What are the types of data that are supported for building predictions using MindsDB? How much cleaning and preparation of the data is necessary before using it to generate a model? What are the lower and upper bounds for volume and variety of data that can be used to build an effective model in MindsDB? One of the interesting and useful features of MindsDB is the built in support for explaining the decisions reached by a model. How do you approach that challenge and what are the most difficult aspects? Once a model is generated, what is the output format and can it be used separately from MindsDB for embedding the prediction capabilities into other scripts or services? How is MindsDB implemented and how has the design changed since you first began working on it? What are some of the assumptions that you made going into this project which hav

Ep 217Behind The Scenes At The Python Software Foundation
FullSummary One of the secrets of the success of Python the language is the tireless efforts of the people who work with and for the Python Software Foundation. They have made it their mission to ensure the continued growth and success of the language and its community. In this episode Ewa Jodlowska, the executive director of the PSF, discusses the history of the foundation, the services and support that they provide to the community and language, and how you can help them succeed in their mission. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! And to keep track of how your team is progressing on building new features and squashing bugs, you need a project management system designed by software engineers, for software engineers. Clubhouse lets you craft a workflow that fits your style, including per-team tasks, cross-project epics, a large suite of pre-built integrations, and a simple API for crafting your own. With such an intuitive tool it’s easy to make sure that everyone in the business is on the same page. Podcast.init listeners get 2 months free on any plan by going to pythonpodcast.com/clubhouse today and signing up for a trial. Bots and automation are taking over whole categories of online interaction. Discover.bot is an online community designed to serve as a platform-agnostic digital space for bot developers and enthusiasts of all skill levels to learn from one another, share their stories, and move the conversation forward together. They regularly publish guides and resources to help you learn about topics such as bot development, using them for business, and the latest in chatbot news. For newcomers to the space they have the Beginners Guide To Bots that will teach you the basics of how bots work, what they can do, and where they are developed and published. To help you choose the right framework and avoid the confusion about which NLU features and platform APIs you will need they have compiled a list of the major options and how they compare. Go to pythonpodcast.com/discoverbot today to get started and thank them for their support of the show. You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, and the Open Data Science Conference. Coming up this fall is the combined events of Graphorum and the Data Architecture Summit. The agendas have been announced and super early bird registration for up to $300 off is available until July 26th, with early bird pricing for up to $200 off through August 30th. Use the code BNLLC to get an additional 10% off any pass when you register. Go to pythonpodcast.com/conferences to learn more and take advantage of our partner discounts when you register. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) 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 Your host as usual is Tobias Macey and today I’m interviewing Ewa Jodlowska about the Python Software Foundation and the role that it serves in the language and community Interview Introductions How did you get introduced to Python? Can you start by explaining what the PSF is for anyone who isn’t familiar with it? How did you get involved with the PSF and what is your current role? What was the motivation for creating the PSF? What are the primary responsibilities of the PSF? How has the scope and scale of the responsibilities for the PSF shifted in the years since its foundation? What is the relationship between the PSF and the language core developers? What are some reasons that someone would want to become a member of the PSF and what is involved in gaining membership? What are the challenges confronted by y

Ep 216Algorithmic Trading In Python Using Open Tools And Open Data
FullSummary Algorithmic trading is a field that has grown in recent years due to the availability of cheap computing and platforms that grant access to historical financial data. QuantConnect is a business that has focused on community engagement and open data access to grant opportunities for learning and growth to their users. In this episode CEO Jared Broad and senior engineer Alex Catarino explain how they have built an open source engine for testing and running algorithmic trading strategies in multiple languages, the challenges of collecting and serving currrent and historical financial data, and how they provide training and opportunity to their community members. If you are curious about the financial industry and want to try it out for yourself then be sure to listen to this episode and experiment with the QuantConnect platform for free. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! And to keep track of how your team is progressing on building new features and squashing bugs, you need a project management system designed by software engineers, for software engineers. Clubhouse lets you craft a workflow that fits your style, including per-team tasks, cross-project epics, a large suite of pre-built integrations, and a simple API for crafting your own. With such an intuitive tool it’s easy to make sure that everyone in the business is on the same page. Podcast.init listeners get 2 months free on any plan by going to pythonpodcast.com/clubhouse today and signing up for a trial. You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, and the Open Data Science Conference. Coming up this fall is the combined events of Graphorum and the Data Architecture Summit. The agendas have been announced and super early bird registration for up to $300 off is available until July 26th, with early bird pricing for up to $200 off through August 30th. Use the code BNLLC to get an additional 10% off any pass when you register. Go to pythonpodcast.com/conferences to learn more and take advantage of our partner discounts when you register. The Python Software Foundation is the lifeblood of the community, supporting all of us who want to run workshops and conferences, run development sprints or meetups, and ensuring that PyCon is a success every year. They have extended the deadline for their 2019 fundraiser until June 30th and they need help to make sure they reach their goal. Go to pythonpodcast.com/psf today to make a donation. If you’re listening to this after June 30th of 2019 then consider making a donation anyway! Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) 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 Your host as usual is Tobias Macey and today I’m interviewing Jared Broad and Alex Catarino about QuantConnect, a platform for building and testing algorithmic trading strategies on open data and cloud resources Interview Introductions How did you get introduced to Python? Can you start by explaining what QuantConnect is and how the business got started? What is your mission for the company? I know that there are a few other entrants in this market. Can you briefly outline how you compare to the other platforms and maybe characterize the state of the industry? What are the main ways that you and your customers use Python? For someone who is new to the space can you talk through what is involved in writing and testing a trading algorithm? Can you talk through how QuantConnect itself is architected and some of the products and components that comprise your overall platform? I noticed that your trading eng

Ep 215Web Application Development Entirely In Python With Anvil
FullSummary The knowledge and effort required for building a fully functional web application has grown at an accelerated rate over the past several years. This introduces a barrier to entry that excludes large numbers of people who could otherwise be producing valuable and interesting services. To make the onramp easier Meredydd Luff and Ian Davies created Anvil, a platform for full stack web development in pure Python. In this episode Meredydd explains how the Anvil platform is built and how you can use it to build and deploy your own projects. He also shares some examples of people who were able to create profitable businesses themselves because of the reduced complexity. It was interesting to get Meredydd’s perspective on the state of the industry for web development and hear his vision of how Anvil is working to make it available for everyone. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! And to keep track of how your team is progressing on building new features and squashing bugs, you need a project management system designed by software engineers, for software engineers. Clubhouse lets you craft a workflow that fits your style, including per-team tasks, cross-project epics, a large suite of pre-built integrations, and a simple API for crafting your own. With such an intuitive tool it’s easy to make sure that everyone in the business is on the same page. Podcast.init listeners get 2 months free on any plan by going to pythonpodcast.com/clubhouse today and signing up for a trial. Bots and automation are taking over whole categories of online interaction. Discover.bot is an online community designed to serve as a platform-agnostic digital space for bot developers and enthusiasts of all skill levels to learn from one another, share their stories, and move the conversation forward together. They regularly publish guides and resources to help you learn about topics such as bot development, using them for business, and the latest in chatbot news. For newcomers to the space they have the Beginners Guide To Bots that will teach you the basics of how bots work, what they can do, and where they are developed and published. To help you choose the right framework and avoid the confusion about which NLU features and platform APIs you will need they have compiled a list of the major options and how they compare. Go to pythonpodcast.com/discoverbot today to get started and thank them for their support of the show. You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, and the Open Data Science Conference. Coming up this fall is the combined events of Graphorum and the Data Architecture Summit. The agendas have been announced and super early bird registration for up to $300 off is available until July 26th, with early bird pricing for up to $200 off through August 30th. Use the code BNLLC to get an additional 10% off any pass when you register. Go to pythonpodcast.com/conferences to learn more and take advantage of our partner discounts when you register. The Python Software Foundation is the lifeblood of the community, supporting all of us who want to run workshops and conferences, run development sprints or meetups, and ensuring that PyCon is a success every year. They have extended the deadline for their 2019 fundraiser until June 30th and they need help to make sure they reach their goal. Go to pythonpodcast.com/psf today to make a donation. If you’re listening to this after June 30th of 2019 then consider making a donation anyway! Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) 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 a

Ep 214Building A Business On Serverless Technology
FullSummary Serverless computing is a recent category of cloud service that provides new options for how we build and deploy applications. In this episode Raghu Murthy, founder of DataCoral, explains how he has built his entire business on these platforms. He explains how he approaches system architecture in a serverless world, the challenges that it introduces for local development and continuous integration, and how the landscape has grown and matured in recent years. If you are wondering how to incorporate serverless platforms in your projects then this is definitely worth your time to listen 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! And to keep track of how your team is progressing on building new features and squashing bugs, you need a project management system designed by software engineers, for software engineers. Clubhouse lets you craft a workflow that fits your style, including per-team tasks, cross-project epics, a large suite of pre-built integrations, and a simple API for crafting your own. With such an intuitive tool it’s easy to make sure that everyone in the business is on the same page. Podcast.init listeners get 2 months free on any plan by going to pythonpodcast.com/clubhouse today and signing up for a trial. Bots and automation are taking over whole categories of online interaction. Discover.bot is an online community designed to serve as a platform-agnostic digital space for bot developers and enthusiasts of all skill levels to learn from one another, share their stories, and move the conversation forward together. They regularly publish guides and resources to help you learn about topics such as bot development, using them for business, and the latest in chatbot news. For newcomers to the space they have the Beginners Guide To Bots that will teach you the basics of how bots work, what they can do, and where they are developed and published. To help you choose the right framework and avoid the confusion about which NLU features and platform APIs you will need they have compiled a list of the major options and how they compare. Go to pythonpodcast.com/discoverbot today to get started and thank them for their support of the show. You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, and the Open Data Science Conference. Coming up this fall is the combined events of Graphorum and the Data Architecture Summit. The agendas have been announced and super early bird registration for up to $300 off is available until July 26th, with early bird pricing for up to $200 off through August 30th. Use the code BNLLC to get an additional 10% off any pass when you register. Go to pythonpodcast.com/conferences to learn more and take advantage of our partner discounts when you register. The Python Software Foundation is the lifeblood of the community, supporting all of us who want to run workshops and conferences, run development sprints or meetups, and ensuring that PyCon is a success every year. They have extended the deadline for their 2019 fundraiser until June 30th and they need help to make sure they reach their goal. Go to pythonpodcast.com/psf2019 today to make a donation. If you’re listening to this after June 30th of 2019 then consider making a donation anyway! Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) 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 Your host as usual is Tobias Macey and today I’m interviewing Raghu Murthy from DataCoral about his experience building and deploying a personalized SaaS platform on top of serverless technologies Interview Introductions How

Ep 213A Data Catalog For Your PyData Projects
FullSummary One of the biggest pain points when working with data is getting is dealing with the boilerplate code to load it into a usable format. Intake encapsulates all of that and puts it behind a single API. In this episode Martin Durant explains how to use the Intake data catalogs for encapsulating source information, how it simplifies data science workflows, and how to incorporate it into your projects. It is a lightweight way to enable collaboration between data engineers and data scientists in the PyData ecosystem. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, and the Open Data Science Conference. Go to pythonpodcast.com/conferences to learn more and take advantage of our partner discounts when you register. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) 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 Your host as usual is Tobias Macey and today I’m interviewing Martin Durant about Intake, a lightweight package for finding, investigating, loading and disseminating data Interview Introductions How did you get introduced to Python? Can you start by explaining what Intake is and the story behind its creation? Can you outline some of the other projects and products that intersect with the functionality of Intake and describe where it fits in terms of use case and capabilities? (e.g. Quilt Data, Arrow, Data Retriever) Can you describe the workflows for using Intake, both from the data scientist and the data engineer perspective? One of the persistent challenges in working with data is that of cataloging and discovery of what already exists. In what ways does Intake address that problem? Does it have any facilities for capturing and exposing data lineage? For someone who needs to customize their usage of Intake, what are the extension points and what is involved in building a plugin? Can you describe how Intake is implemented and how it has evolved since it first started? What are some of the most challenging, complex, or novel aspects of the Intake implementation? Intake focuses primarily on integrating with the PyData ecosystem (e.g. NumPy, Pandas, SciPy, etc.). What are some other communities that are, or could be, benefiting from the work being done on Intake? What are some of the assumptions that are baked into Intake that would need to be modified to make it more broadly applicable? What are some of the assumptions that were made going into this project that have needed to be reconsidered after digging deeper into the problem space? What are some of the most interesting/unexpected/innovative ways that you have seen Intake leveraged? What are your plans for the future of Intake? Keep In Touch martindurant on GitHub Website @martin_durant_ on Twitter Picks Tobias Ubersuggest SEO tool Links Intake Anaconda Dask Data Engineering Podcast Interview Fast Parquet IDL Space Telescope Institute Blaze Quilt Data Podcast Interview Arrow Data Retriever Podcast Interview Parquet Data Engineering Podcast Interview DataFrame Apache Spark Dremio Data Engineering Podcast Interview Dat Project – distributed peer-to-peer data sharing Data Engineering Podcast Interview GeoPandas XArray Solr Streamz PyViz S3FS The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Ep 212Hardware Hacking Made Easy With CircuitPython
FullSummary Learning to program can be a frustrating process, because even the simplest code relies on a complex stack of other moving pieces to function. When working with a microcontroller you are in full control of everything so there are fewer concepts that need to be understood in order to build a functioning project. CircuitPython is a platform for beginner developers that provides easy to use abstractions for working with hardware devices. In this episode Scott Shawcroft explains how the project got started, how it relates to MicroPython, some of the cool ways that it is being used, and how you can get started with it today. If you are interested in playing with low cost devices without having to learn and use C then give this a listen and start tinkering! 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, and the Open Data Science Conference. Go to pythonpodcast.com/conferences to learn more and take advantage of our partner discounts when you register. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) 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 Your host as usual is Tobias Macey and today I’m interviewing Scott Shawcroft about CircuitPython, the easiest way to program microcontrollers Interview Introductions How did you get introduced to Python? Can you start by explaining what CircuitPython is and how the project got started? I understand that you work at Adafruit and I know that a number of their products support CircuitPython. What other runtimes do you support? Microcontrollers have typically been the domain of C because of the resource and performance constraints. What are the benefits of using Python to program hardware devices? With the wide availability of powerful computing platforms, what are the benefits of experimenting with microcontrollers and their peripherals? I understand that CircuitPython is a friendly fork of MicroPython. What have you changed in your version? How do you structure your development to avoid conflicts with the upstream project? What are some changes that you have contributed back to MicroPython? What are some of the features of CircuitPython that make it easier for users to interact with sensors, motors, etc.? CircuitPython provides an easy on-ramp for experimenting with hardware projects. Is there a point where a user will outgrow it and need to move to a different language or framework? What are some of the most interesting/innovative/unexpected projects that you have seen people build using CircuitPython? Are there any cases of someone building and shipping a production grade project in CircuitPython? What have been some of the most interesting/challenging/unexpected aspects of building and maintaining CircuitPython? What is in store for the future of the project? Keep In Touch @tannewt on Twitter Website tannewt on GitHub Picks Tobias Wings Of Fire book series Scott Brandon Sanderson The Wheel Of Time Series Mist Born Links Adafruit CircuitPython MicroPython Podcast Interview Microcontroller Arduino Microsoft MakeCode NodeBots Espruino I2C Hackspace Magazine Adafruit Blinka learn.adafruit.com Scott Hanselman Blog Post Reflow Oven Adafruit Crickit – Creative Robotics Platform Adabox Moore’s Law SparkFun DigiKey The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Ep 211Building A Privacy Preserving Voice Assistant
FullSummary Being able to control a computer with your voice has rapidly moved from science fiction to science fact. Unfortunately, the majority of platforms that have been made available to consumers are controlled by large organizations with little incentive to respect users’ privacy. The team at Snips are building a platform that runs entirely off-line and on-device so that your information is always in your control. In this episode Adrien Ball explains how the Snips architecture works, the challenges of building a speech recognition and natural language understanding toolchain that works on limited resources, and how they are tackling issues around usability for casual consumers. If you have been interested in taking advantage of personal voice assistants, but wary of using commercially available options, this is definitely worth a listen. Announcements Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great. When you’re ready to launch your next app or want to try a project you hear about on the show, you’ll need somewhere to deploy it, so take a look at our friends over at Linode. With 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, and the Open Data Science Conference. Go to pythonpodcast.com/conferences to learn more and take advantage of our partner discounts when you register. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) 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 Your host as usual is Tobias Macey and today I’m interviewing Adrien Ball about SNIPS, a set of technologies to make voice controlled systems that respect user’s privacy Interview Introductions How did you get introduced to Python? Can you start by explaining what the Snips is and how it got started? For someone who wants to use Snips can you talk through the onboarding proces? One of the interesting features of your platform is the option for automated training data generation. Can you explain how that works? Can you describe the overall architecture of the Snips platform and how it has evolved since you first began working on it? Two of the main components that can be used independently are the ASR (Automated Speech Recognition) and NLU (Natural Language Understanding) engines. Each of those have a number of competitors in the market, both open source and commercial. How would you describe your overall position in the market for each of those projects? I know that one of the biggest challenges in conversational interfaces is maintaining context for multi-step interactions. How is that handled in Snips? For the NLU engine, you recently ported it from Python to Rust. What was your motivation for doing so and how would you characterize your experience between the two languages? Are you continuing to maintain both implementations and if so how are you maintaining feature parity? How do you approach the overall usability and user experience, particularly for non-technical end users? How is discoverability handled (e.g. finding out what capabilities/skills are available) One of the compelling aspects of Snips is the ability to deploy to a wide variety of devices, including offline support. Can you talk through that deployment process, both from a user perspective and how it is implemented under the covers? What is involved in updating deployed models and keeping track of which versions are deployed to which devices? What is involved in adding new capabilities or integrations to the Snips platform? What are the limitations of running everything offline and on-device? When is Snips the wrong choice? In the process of building and maintaining the various components of Snips, what have been some of the most useful/interesting/unexpected lessons that you have learned? What have been the most challenging aspects? What are som

Ep 210Hacking The Government With The USDS
FullSummary The U.S. government has a vast quantity of software projects across the various agencies, and many of them would benefit from a modern approach to development and deployment. The U.S. Digital Services Agency has been tasked with making that happen. In this episode the current director of engineering for the USDS, David Holmes, explains how the agency operates, how they are using Python in their efforts to provide the greatest good to the largest number of people, and why you might want to get involved. Even if you don’t live in the U.S.A. this conversation is worth listening to so you can see an interesting model of how to improve government services for everyone. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! Bots and automation are taking over whole categories of online interaction. Discover.bot is an online community designed to serve as a platform-agnostic digital space for bot developers and enthusiasts of all skill levels to learn from one another, share their stories, and move the conversation forward together. They regularly publish guides and resources to help you learn about topics such as bot development, using them for business, and the latest in chatbot news. For newcomers to the space they have the Beginners Guide To Bots that will teach you the basics of how bots work, what they can do, and where they are developed and published. To help you choose the right framework and avoid the confusion about which NLU features and platform APIs you will need they have compiled a list of the major options and how they compare. Go to pythonpodcast.com/discoverbot today to get started and thank them for their support of the show. You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, and the Open Data Science Conference. Go to pythonpodcast.com/conferences to learn more and take advantage of our partner discounts when you register. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) 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 Your host as usual is Tobias Macey and today I’m interviewing David Holmes about his work at the US Digital Services organization Interview Introductions How did you get introduced to Python? Can you start by explaining what the USDS is and how you got involved with it? The terminology that is used around "Tours of Service" is interesting. Can you explain what that entails? relocation what if you have a house and career? Can you explain the model of how the USDS works? What is involved in staffing a new project? What is your typical toolkit, and how does that vary with the specific departments that you are working with? What are some of the most interesting projects that you and the team at USDS have worked on? What are some of the most challenging projects that you have been involved with? What are some projects that you hope to be asked to work on? Keep In Touch davideholmes on GitHub Picks Tobias Captain Marvel movie David Avengers: Endgame Game Of Thrones television series Links US Digital Services US Digital Services Job Application US Digital Services Projects 18F The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Ep 209Probabilistic Modeling In Python (And What That Even Means)
FullSummary Most programming is deterministic, relying on concrete logic to determine the way that it operates. However, there are problems that require a way to work with uncertainty. PyMC3 is a library designed for building models to predict the likelihood of certain outcomes. In this episode Thomas Wiecki explains the use cases where Bayesian statistics are necessary, how PyMC3 is designed and implemented, and some great examples of how it is being used in real projects. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, and the Open Data Science Conference. Go to pythonpodcast.com/conferences to learn more and take advantage of our partner discounts when you register. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) 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 Your host as usual is Tobias Macey and today I’m interviewing Thomas Wiecki about PyMC3, a project for probabilistic programming in Python Interview Introductions How did you get introduced to Python? Can you start by explaining what probabilistic programming is? What is the PyMC3 project and how did you get involved with it? The opening line for the project README is packed with a slew of terms that are rather opaque to the lay-person. Can you unpack that a bit and discuss some of the ways that PyMC3 is used in real-world projects? How much knowledge of statistical modeling and Bayesian statistics is necessary to make effective use of PyMC3? Can you talk through an example use case for PyMC3 to illustrate how you would use it in a project? How does it compare to the way that you would approach the same problem in a deterministic or frequentist modeling framework? Can you describe how PyMC3 is implemented? There are a number of other projects that build on top of PyMC3, what are some that you find particularly interesting or noteworthy? What do you find to be the most useful features of PyMC3 and what are some areas that you would like to see it improved? What have been the most interesting/unexpected/challenging lessons that you have learned in the process of building and maintaining PyMC3? What is in store for the future of PyMC3? Keep In Touch PyMC GitHub Discourse Forum Thomas twiecki on GitHub @twiecki on Twitter Website Picks Tobias Fantastic Beasts And Where To Find Them Fantastic Beasts: The Crimes Of Grindelwald Thomas Hyperion by Dan Simmons The Mind Illuminated Links PyMC3 Quantopian University of Tubingen MatLab Probabilistic Modeling Probability Distribution A/B Testing Bayesian Statistics Beta Distribution Bernoulli Distribution P-Value Hamiltonian Monte Carlo sampling algorithm Metropolis Hastings Inference Algorithm Theano Bayesian Methods For Hackers by Cameron Davidson-Pilon Bayesian Analysis With Python by Osvaldo Martin Tensorflow MXNet deep learning framework PyTorch Tensorflow Probability BAMBI package to build generalized linear models PMProphet PyMC3 implementation of Facebook’s Prophet for timeseries prediction Exoplanet BEAT (Bayesian Earthquake Analysis Tool) PyMC3 in Google Summer of Code The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Ep 208Exploring Indico: A Full Featured Event Management Platform
FullSummary Managing an event is rife with inherent complexity that scales as you move from scheduling a meeting to organizing a conference. Indico is a platform built at CERN to handle their efforts to organize events such as the Computing in High Energy Physics (CHEP) conference, and now it has grown to manage booking of meeting rooms. In this episode Adrian Mönnich, core developer on the Indico project, explains how it is architected to facilitate this use case, how it has evolved since its first incarnation two decades ago, and what he has learned while working on it. The Indico platform is definitely a feature rich and mature platform that is worth considering if you are responsible for organizing a conference or need a room booking system for your office. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! Bots and automation are taking over whole categories of online interaction. Discover.bot is an online community designed to serve as a platform-agnostic digital space for bot developers and enthusiasts of all skill levels to learn from one another, share their stories, and move the conversation forward together. They regularly publish guides and resources to help you learn about topics such as bot development, using them for business, and the latest in chatbot news. For newcomers to the space they have the Beginners Guide To Bots that will teach you the basics of how bots work, what they can do, and where they are developed and published. To help you choose the right framework and avoid the confusion about which NLU features and platform APIs you will need they have compiled a list of the major options and how they compare. Go to pythonpodcast.com/discoverbot today to get started and thank them for their support of the show. You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, and the Open Data Science Conference. Go to pythonpodcast.com/conferences to learn more and take advantage of our partner discounts when you register. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) 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 Your host as usual is Tobias Macey and today I’m interviewing Adrian Mönnich about Indico, the effortless open-source tool for event organisation, archival and collaboration Interview Introductions How did you get introduced to Python? Can you start by describing what Indico is and how the project got started? What are some other projects which target a similar use case and what were they lacking that led to Indico being necessary? Can you talk through an example workflow for setting up and managing an event in Indico? How does the lifecycle change when working with larger events, such as PyCon? Can you describe how Indico is architected and how its design has evolved since it was first built? What are some of the most complex or challenging portions of Indico to implement and maintain? There are a lot of areas for exercising constraint resolution algorithms. Can you talk through some of the business logic of how that operates? Most of Indico is highly configurable and flexible. How do you approach managing sane defaults to prevent users getting overwhelmed when onboarding? What is your approach to testing given how complex the project is? What are some of the most interesting or unexpected ways that you have seen Indico used? What are some of the most interesting/unexpected lessons that you have learned in the process of building Indico? What do you have planned for the future of the project? Keep In Touch Indico Website GitHub IRC Adrian ThiefMaster on GitHub Picks Tobias Mortal Engines

Ep 207Exploring Python's Internals By Rewriting Them In Rust
FullSummary The CPython interpreter has been the primary implementation of the Python runtime for over 20 years. In that time other options have been made available for different use cases. The most recent entry to that list is RustPython, written in the memory safe language Rust. One of the added benefits is the option to compile to WebAssembly, offering a browser-native Python runtime. In this episode core maintainers Windel Bouwman and Adam Kelly explain how the project got started, their experience working on it, and the plans for the future. Definitely worth a listen if you are curious about the inner workings of Python and how you can get involved in a relatively new project that is contributing to new options for running your code. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, and the Open Data Science Conference. Go to pythonpodcast.com/conferences to learn more and take advantage of our partner discounts when you register. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) 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 Your host is Tobias Macey and today I’m interviewing Adam Kelly and Windel Bouwman about RusPython, a project to implement a new Python interpreter in Rust Interview Introduction How did you get introduced to Python? Can you start by explaining what Rust is for anyone who isn’t familiar with it? How did RustPython got started and what are your goals for the project? Can you discuss what is involved in implementing a fully compliant Python interpreter? What are some of the challenges that you face in replicating the capabilities of the CPython interpreter? Are you attempting to maintain bug parity? How much of the stdlib needs to be reimplemented? Can you compare and contrast the benefits of Rust vs C? Will the end result be compatible with libraries that rely on C extensions such as NumPy? What is the current state of the project? What are some of the notable missing features? Can you talk through your vision of how the WebAssembly support will manifest and the types of applications that it will enable? How much effort have you put into size optimization for the webassembly target to reduce client-side load time? Are there any existing options for minification of Python code so that it can be delivered to users with less bandwidth? What have been some of the most interesting/challenging/unexpected aspects of implementing a Python runtime? What do you have planned for the future of the project? What are the risks that you anticipate which could derail the project before it becomes production ready? Contact Info Windel windelbouwman on GitHub Website @windelbouwman on Twitter @[email protected] on Mastodon Adam cthulahoops on GitHub @cthulahoops on Twitter Picks Tobias Oysterhead Adam FZF fuzzy finder Windel TQDM Python progress bar Links RustPython Windel Presentation EuroPython Rust C++ Rust Memory Safety MicroPython Podcast Episode PyPy Ouroboros – Pure Python standard library WebAssembly lalrpop – Rust parser generator Rust Crates PickItUp in-browser Python game engine QuickSilver Game Engine PEP 441 JIT (Just-In-Time) Compilation The intro and outro music is from The Hug by The Freak Fandango Orchestra / CC BY-SA

Ep 206Version Control For Your Machine Learning Projects
FullSummary Version control has become table stakes for any software team, but for machine learning projects there has been no good answer for tracking all of the data that goes into building and training models, and the output of the models themselves. To address that need Dmitry Petrov built the Data Version Control project known as DVC. In this episode he explains how it simplifies communication between data scientists, reduces duplicated effort, and simplifies concerns around reproducing and rebuilding models at different stages of the projects lifecycle. If you work as part of a team that is building machine learning models or other data intensive analysis then make sure to give this a listen and then start using DVC today. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! Bots and automation are taking over whole categories of online interaction. Discover.bot is an online community designed to serve as a platform-agnostic digital space for bot developers and enthusiasts of all skill levels to learn from one another, share their stories, and move the conversation forward together. They regularly publish guides and resources to help you learn about topics such as bot development, using them for business, and the latest in chatbot news. For newcomers to the space they have the Beginners Guide To Bots that will teach you the basics of how bots work, what they can do, and where they are developed and published. To help you choose the right framework and avoid the confusion about which NLU features and platform APIs you will need they have compiled a list of the major options and how they compare. Go to pythonpodcast.com/discoverbot today to get started and thank them for their support of the show. You listen to this show to learn and stay up to date with what’s happening in databases, streaming platforms, big data, and everything else you need to know about modern data management. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, and the Open Data Science Conference. Go to pythonpodcast.com/conferences to learn more and take advantage of our partner discounts when you register. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) 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 Your host as usual is Tobias Macey and today I’m interviewing Dmitry Petrov about DVC, an open source version control system for machine learning projects Interview Introductions How did you get introduced to Python? Can you start by explaining what DVC is and how it got started? How do the needs of machine learning projects differ from other software applications in terms of version control? Can you walk through the workflow of a project that uses DVC? What are some of the main ways that it differs from your experience building machine learning projects without DVC? In addition to the data that is used for training, the code that generates the model, and the end result there are other aspects such as the feature definitions and hyperparameters that are used. Can you discuss how those factor into the final model and any facilities in DVC to track the values used? In addition to version control for software applications, there are a number of other pieces of tooling that are useful for building and maintaining healthy projects such as linting and unit tests. What are some of the adjacent concerns that should be considered when building machine learning projects? What types of metrics do you track in DVC and how are they collected? Are there specific problem domains or model types that require tracking different metric formats? In the documentation it mentions that the data files live outside of git and can be managed in external storage systems. I’m wondering if there are any p

Ep 205Building Scalable Ecommerce Sites On Saleor
FullSummary Ecommerce is an industry that has largely faded into the background due to its ubiquity in recent years. Despite that, there are new trends emerging and room for innovation, which is what the team at Mirumee focuses on. To support their efforts, they build and maintain the open source Saleor framework for Django as a way to make the core concerns of online sales easy and painless. In this episode Mirek Mencel and Patryk Zawadzki discuss the projects that they work on, the current state of the ecommerce industry, how Saleor fits with their technical and business strategy, and their predictions for the near future of digital sales. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) 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 Check out the Practical AI podcast from our friends at Changelog Media to learn and stay up to date with what’s happening in AI You listen to this show to learn and stay up to date with what’s happening in databases, streaming platforms, big data, and everything else you need to know about modern data management. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, and the Open Data Science Conference. Go to pythonpodcast.com/conferences to learn more and take advantage of our partner discounts when you register. Your host as usual is Tobias Macey and today I’m interviewing Mirek Mencel and Patryk Zawadzki about their work at Mirumee, building ecommerce applications in Python, based on their open source framework Saleor Interview Introductions How did you get introduced to Python? Can you start by describing the types of projects that you work on at Mirumee and how the company got started? There are a number of libraries and frameworks that you build and maintain. What is your motivation for providing these components freely and how does that play into your overall business strategy? The most substantial project that you maintain is Saleor. Can you describe what it is and the story behind its creation? How does it compare to other ecommerce implementations in the Python space? If someone is agnostic to language and web framework, what would make them choose Saleor over other options that would be available to them? What are some of the most challenging aspects of building a successful ecommerce platform? How do the technical needs of an ecommerce site differ as it grows from small to medium and large scale? Which components of an online store are often overlooked? One of the common features of ecommerce sites that can drive substantial revenue is a well-built recommender system. What are some best practice strategies that you have discovered during your client work? What are some projects that you have seen built with Saleor that were particular interesting, innovative, or unexpected? What are your predictions for the future of the ecommerce industry? What do you have planned for the future of the Saleor framework and the Mirumee business? Keep In Touch Mirumee Website Github @mirumeelabs on Twitter Mirek @mirekmencel on Twitter mirekm on GitHub Patryk patrys on GitHub @patrys on Twitter Website Picks Tobias Wreck It Ralph: Ralph Breaks The Internet Mirek A Guide To The Good Life: The Ancient Art Of Stoic Joy by William B. Irvine Patryk Release It: Design And Deploy Production Ready Software by Michael Nygard Links Mirumee Saleor Django PHP Pyramid web framework Pylons Magento eCommerce platform Ecommerce Satchmo Satchless Prices library for handling price data French National Assembly Django Oscar Podcast Interview David Winterbottom Ebay Amazon Etsy Shopify Ariadne GraphQL framework for Python Graphene GraphQL framework for Python Podcast Interview Apollo JavaScript GraphQ

Ep 204A Quick Python Check-in With Naomi Ceder
FullSummary Naomi Ceder was fortunate enough to learn Python from Guido himself. Since then she has contributed books, code, and mentorship to the community. Currently she serves as the chair of the board to the Python Software Foundation, leads an engineering team, and has recently completed a new draft of the Quick Python Book. In this episode she shares her story, including a discussion of her experience as a technical author and a detailed account of the role that the PSF plays in supporting and growing the community. Announcements Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great. When you’re ready to launch your next app or want to try a project you hear about on the show, you’ll need somewhere to deploy it, so take a look at our friends over at Linode. With 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) 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 Check out the Practical AI podcast from our friends at Changelog Media to learn and stay up to date with what’s happening in AI You listen to this show to learn and stay up to date with what’s happening in databases, streaming platforms, big data, and everything else you need to know about modern data management. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, and the Open Data Science Conference. Go to pythonpodcast.com/conferences to learn more and take advantage of our partner discounts when you register. Your host as usual is Tobias Macey and today I’m interviewing Naomi Ceder about her career and contributions in the Python community Interview Introductions How did you get introduced to Python? How are you using Python in your current day-to-day? You have been working with Python for a long time at this point, and you have become very involved in supporting and growing the community. What is your motivation for dedicating so much of your time and energy into work that isn’t directly related to paying the bills? You have been the chair of the PSF for a few years now. What are your responsibilities in that position? What do you find to be the most under-rated, misunderstood, or overlooked activities of the PSF? How much of the success of the Python language and its community can be attributed to the presence and support of the PSF? In addition to the work you do with the PSF, other community activities, and your day job, you have also written the 2nd and 3rd editions of the Quick Python Book. Can you give a synopsis of what the book covers and the audience that it is intended for? In the process of writing the book and updating it between revisions, what are some of the features of the language or standard library that you discovered or learned more about which you have been able to use in your work? What are some of the other language communities that you have been involved with and what lessons have you learned from them that you would like to see reflected in Python? What are some of the other projects that you have been involved with that you are most proud of, whether technical or otherwise? What are you most excited about in the near to medium future? Keep In Touch @NaomiCeder on Twitter Web Quick Python Book Get 40% off everything at Manning with code podinit19 at checkout Enter to win a free copy Picks Tobias Inkscape vector graphics editor Naomi La Casa de las Flores (House of Flowers) (Netflix) Links The Quick Python Book Dick Blick Art Materials The PSF @ThePSF on Twitter Manning Publishers PEP8 ETL Collections Module Turtle Library PyCon Hatchery PyCon Charlas Podcast Episode The GIL The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Ep 203Wes McKinney's Career In Python For Data Analysis
FullSummary Python has become one of the dominant languages for data science and data analysis. Wes McKinney has been working for a decade to make tools that are easy and powerful, starting with the creation of Pandas, and eventually leading to his current work on Apache Arrow. In this episode he discusses his motivation for this work, what he sees as the current challenges to be overcome, and his hopes for the future of the industry. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) 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 Check out the Practical AI podcast from our friends at Changelog Media to learn and stay up to date with what’s happening in AI You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with O’Reilly Media for the Strata conference in San Francisco on March 25th and the Artificial Intelligence conference in NYC on April 15th. Here in Boston, starting on May 17th, you still have time to grab a ticket to the Enterprise Data World, and from April 30th to May 3rd is the Open Data Science Conference. Go to pythonpodcast.com/conferences to learn more and take advantage of our partner discounts when you register. Your host as usual is Tobias Macey and today I’m interviewing Wes McKinney about his contributions to the Python community and his current projects to make data analytics easier for everyone Interview Introductions How did you get introduced to Python? You have spent a large portion of your career on building tools for data science and analytics in the Python ecosystem. What is your motivation for focusing on this problem domain? Having been an open source author and contributor for many years now, what are your current thoughts on paths to sustainability? What are some of the common challenges pertaining to data analysis that you have experienced in the various work environments and software projects that you have been involved in? What area(s) of data science and analytics do you find are not receiving the attention that they deserve? Recently there has been a lot of focus and excitement around the capabilities of neural networks and deep learning. In your experience, what are some of the shortcomings or blind spots to that class of approach that would be better served by other classes of solution? Your most recent work is focused on the Arrow project for improving interoperability across languages. What are some of the cases where a Python developer would want to incorporate capabilities from other runtimes? Do you think that we should be working to replicate some of those capabilities into the Python language and ecosystem, or is that wasted effort that would be better spent elsewhere? Now that Pandas has been in active use for over a decade and you have had the opportunity to get some space from it, what are your thoughts on its success? With the perspective that you have gained in that time, what would you do differently if you were starting over today? You are best known for being the creator of Pandas, but can you list some of the other achievements that you are most proud of? What projects are you most excited to be working on in the near to medium future? What are your grand ambitions for the future of the data science community, both in and outside of the Python ecosystem? Do you have any parting advice for active or aspiring data scientists, or resources that you would like to recommend? Keep In Touch wesm on GitHub Website @wesmckinn on Twitter Picks Tobias Roald Dahl Wes The Soul Of A New Machine by Tracy Kidder Links Ursa Labs Pandas Podcast Interview with Jeff Reback Pandas Exte

Ep 202The Past, Present, and Future of Deep Learning In PyTorch
FullSummary The current buzz in data science and big data is around the promise of deep learning, especially when working with unstructured data. One of the most popular frameworks for building deep learning applications is PyTorch, in large part because of their focus on ease of use. In this episode Adam Paszke explains how he started the project, how it compares to other frameworks in the space such as Tensorflow and CNTK, and how it has evolved to support deploying models into production and on mobile devices. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) 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 Check out the Practical AI podcast from our friends at Changelog Media to learn and stay up to date with what’s happening in AI You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with O’Reilly Media for the Strata conference in San Francisco on March 25th and the Artificial Intelligence conference in NYC on April 15th. Here in Boston, starting on May 17th, you still have time to grab a ticket to the Enterprise Data World, and from April 30th to May 3rd is the Open Data Science Conference. Go to pythonpodcast.com/conferences to learn more and take advantage of our partner discounts when you register. Your host as usual is Tobias Macey and today I’m interviewing Adam Paszke about PyTorch, an open source deep learning platform that provides a seamless path from research prototyping to production deployment Interview Introductions How did you get introduced to Python? Can you start by explaining what deep learning is and how it relates to machine learning and artificial intelligence? Can you explain what PyTorch is and your motivation for creating it? Why was it important for PyTorch to be open source? There is currently a large and growing ecosystem of deep learning tools built for Python. Can you describe the current landscape and how PyTorch fits in relation to projects such as Tensorflow and CNTK? What are some of the ways that PyTorch is different from Tensorflow and CNTK, and what are the areas where these frameworks are converging? How much knowledge of machine learning, artificial intelligence, or neural network topologies are necessary to make use of PyTorch? What are some of the foundational topics that are most useful to know when getting started with PyTorch? Can you describe how PyTorch is architected/implemented and how it has evolved since you first began working on it? You recently reached the 1.0 milestone. Can you talk about the journey to that point and the goals that you set for the release? What are some of the other components of the Python ecosystem that are most commonly incorporated into projects based on PyTorch? What are some of the most novel, interesting, or unexpected uses of PyTorch that you have seen? What are some cases where PyTorch is the wrong choice for a problem? What is the process for incorporating these new techniques and discoveries into the PyTorch framework? What are the areas of active research that you are most excited about? What are some of the most interesting/useful/unexpected/challenging lessons that you have learned in the process of building and maintaining PyTorch? What do you have planned for the future of PyTorch? Keep In Touch apaszke on GitHub @apaszke on Twitter LinkedIn Picks Tobias Un Lun Dun by China Miéville Adam In Praise Of Copying by Marcus Boon Links PyTorch University of Warsaw Poland Polish Olympiad In Informatics Deep Learning Automatic Differentiation Torch 7 Lua Tensorflow CNTK Tensorflow 2 Caffe2 EPFL (Ecole polytechnique fédérale de Lau

Ep 201How To Include Redis In Your Application Architecture
FullSummary The Redis database recently celebrated its 10th birthday. In that time it has earned a well-earned reputation for speed, reliability, and ease of use. Python developers are fortunate to have a well-built client in the form of redis-py to leverage it in their projects. In this episode Andy McCurdy and Dr. Christoph Zimmerman explain the ways that Redis can be used in your application architecture, how the Python client is built and maintained, and how to use it in your projects. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! And to keep track of how your team is progressing on building new features and squashing bugs, you need a project management system designed by software engineers, for software engineers. Clubhouse lets you craft a workflow that fits your style, including per-team tasks, cross-project epics, a large suite of pre-built integrations, and a simple API for crafting your own. Podcast.__init__ listeners get 2 months free on any plan by going to pythonpodcast.com/clubhouse today and signing up for a trial. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) 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 You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with O’Reilly Media for the Strata conference in San Francisco on March 25th and the Artificial Intelligence conference in NYC on April 15th. Here in Boston, starting on May 17th, you still have time to grab a ticket to the Enterprise Data World, and from April 30th to May 3rd is the Open Data Science Conference. Go to pythonpodcast.com/conferences to learn more and take advantage of our partner discounts when you register. Your host as usual is Tobias Macey and today I’m interviewing Andy McCurdy and Christoph Zimmerman about the Redis database, and some of the various ways that it is used by Python developers Interview Introductions How did you get introduced to Python? Can you start by explaining what Redis is and how you got involved in the project? How does the redis-py project relate to the Redis database and what motivated you to create the Python client? What are some of the main use cases that Redis enables? Can you describe how Redis-py is implemented and some of the primitives that it provides for building applications on top of? How do the release cycles of redis-py and the Redis database relate to each other? How closely does redis-py match the features of the Redis database? What are some of the convenience methods or features that you have added to make the client more Pythonic? Redis is often used as a key/value cache for web applications, in some cases replacing Memcached. What are the characteristics of Redis that lend themselves well to this purpose? What are some edge cases or gotchas that users should be aware of? What are some of the common points of confusion or difficulties when storing and retrieving values in Redis? What have been some of the most challenging aspects of building and maintaining the Redis Python client? What are some of the anti-patterns that you have seen around how developers build on top of Redis? What are some of the most interesting or unexpected ways that you have seen Redis used? What are some of the least used or most misunderstood features of Redis that you think developers should know about? What are some of the recent and near-future improvements or features in Redis that you are most excited by? Keep In Touch Andy @andymccurdy on Twitter andymccurdy on GitHub Christoph chrisAtRedis on GitHub LinkedIn Picks Tobias Rowan Atkinson Andy The Food Lab: Better Home Cooking Through Science by J. Kenji Lopez-Alt Dota 2 Auto Chess (Community Mod) Christoph IPA Infused With Grapefruit Juice redis-py Selenium Python client Daniel Suarez Influx Links redis-py Redis DB Redis Labs

Ep 200Marshmallow Data Validation Library
FullSummary Any time that your program needs to interact with other systems it will have to deal with serializing and deserializing data. To prevent duplicate code and provide validation of the data structures that your application is consuming Steven Loria created the Marshmallow library. In this episode he explains how it is built, how to use it for rendering data objects to various serialization formats, and some of the interesting and unique ways that it is incorporated into other projects. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! And to keep track of how your team is progressing on building new features and squashing bugs, you need a project management system designed by software engineers, for software engineers. Clubhouse lets you craft a workflow that fits your style, including per-team tasks, cross-project epics, a large suite of pre-built integrations, and a simple API for crafting your own. Podcast.__init__ listeners get 2 months free on any plan by going to pythonpodcast.com/clubhouse today and signing up for a trial. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) 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 You listen to this show to learn and stay up to date with the ways that Python is being used, including the latest in machine learning and data analysis. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss the Strata conference in San Francisco on March 25th and the Artificial Intelligence conference in NYC on April 15th, both run by our friends at O’Reilly Media. Go to pythonpodcast.com/stratacon and pythonpodcast.com/aicon to register today and get 20% off Your host as usual is Tobias Macey and today I’m interviewing Steven Loria about Marshmallow, a Python serialization library that is agnostic to your framework and object mapper of choice Interview Introductions How did you get introduced to Python? Can you start by describing what Marshmallow is and the history of the project? What are some of the capabilities that make it unique from other similar projects in the Python ecosystem? What are some of the main use cases for schematized serialization and deserialization? Can you walk through how a user would get started with Marshmallow, particularly for complex or nested schemas? Can you describe how Marshmallow is implemented? How has that design evolved since you first began working on it? How have the changes in the Python language and ecosystem impacted the requirements and use cases for Marshmallow? What are some of the most interesting or unexpected ways that you have seen Marshmallow used? What have been some of the most interesting, complex, or challenging aspects of building the Marshmallow project and community? What are lessons you’ve learned from maintaining marshmallow? What have been some of the benefits and drawbacks of keeping Marshmallow agnostic to any frameworks or object mappers? What are some of the edge cases that users of Marshmallow should be aware of? What are some of the little-known features of Marshmallow that you find most useful? What do you have planned for the future of Marshmallow? Keep In Touch Email Website @sloria1 on Twitter Picks Tobias Sherlock BBC tv series Steven Greater Than Code podcast Links Marshmallow Butterfly Network Biology ORM (Object Relational Mapper) ODM (Object Document Mapper) Webargs Avro Swagger/OpenAPI REST (REpresentational State Transfer) JSON-Schema Environs Django Rest Framework WTForms DynamoDB MongoDB Etsy’s boundary-layer for building Airflow DAGs from config files Airflow Podcast Episode Toasted Marshmallow Lyft Blog Post The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Ep 199Unpacking The Python Toolkit For Chaos Engineering
FullSummary Chaos engineering is the practice of injecting failures into your production systems in a controlled manner to identify weaknesses in your applications. In order to build, run, and report on chaos experiments Sylvain Hellegouarch created the Chaos Toolkit. In this episode he explains his motivation for creating the toolkit, how to use it for improving the resiliency of your systems, and his plans for the future. He also discusses best practices for building, running, and learning from your own experiments. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! And to keep track of how your team is progressing on building new features and squashing bugs, you need a project management system designed by software engineers, for software engineers. Clubhouse lets you craft a workflow that fits your style, including per-team tasks, cross-project epics, a large suite of pre-built integrations, and a simple API for crafting your own. Podcast.__init__ listeners get 2 months free on any plan by going to pythonpodcast.com/clubhouse today and signing up for a trial. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) To help other people find the show please leave a review on iTunes, or Google Play Music, tell your friends and co-workers, and share it on social media. Join the community in the new Zulip chat workspace at pythonpodcast.com/chat Your host as usual is Tobias Macey and today I’m interviewing Sylvain Hellegouarch about Chaos Toolkit, a framework for building and automating chaos engineering experiments Interview Introductions How did you get introduced to Python? Can you start by explaining what Chaos Engineering is? What is the Chaos Toolkit and what motivated you to create it? How does it compare to the Gremlin platform? What is the workflow for using Chos Toolkit to build and run an experiment? What are the best practices for building a useful experiment? Once you have an experiment created, how often should it be executed? When running an experiment, what are some strategies for identifying points of failure, particularly if they are unexpected? What kinds of reporting and statistics are captured during a test run? Can you describe how Chaos Toolkit is implemented and how it has evolved since you began working on it? What are some of the most challenging aspects of ensuring that the experiments run via the Chaos Toolkit are safe and have a reliable rollback available? What have been some of the most interesting/useful/unexpected lessons that you have learned in the process of building and maintaining the Chaos Toolkit project and community? What do you have planned for the future of the project? Keep In Touch lawouach on GitHub Blog @lawouach on Twitter LinkedIn Picks Tobias Time Trap Sylvain Playing Guitar Step away from the computer Links Chaos Toolkit Chaos IQ Gremlin chaos engineering service Russ Miles Chaos IQ co-founder Zope CherryPy minimalist Python web framework Cherrypy Essentials book Chaos Engineering Chaos Engineering Book DevOps SRE (Site Reliability Engineering) Dark Debt Netflix Simian Army Chaos Monkey Terraform Kubecon Istio service mesh Chaos Platform PyInstaller Composition vs Inheritance Open Chaos Initiative CNCF The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Ep 198Computational Musicology For Python Programmers
FullSummary Music is a part of every culture around the world and throughout history. Musicology is the study of that music from a structural and sociological perspective. Traditionally this research has been done in a manual and painstaking manner, but the advent of the computer age has enabled an increase of many orders of magnitude in the scope and scale of analysis that we can perform. The music21 project is a Python library for computer aided musicology that is written and used by MIT professor Michael Scott Cuthbert. In this episode he explains how the project was started, how he is using it personally, professionally, and in his lectures, as well as how you can use it for your own exploration of musical analysis. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! And to keep track of how your team is progressing on building new features and squashing bugs, you need a project management system designed by software engineers, for software engineers. Clubhouse lets you craft a workflow that fits your style, including per-team tasks, cross-project epics, a large suite of pre-built integrations, and a simple API for crafting your own. Podcast.__init__ listeners get 2 months free on any plan by going to pythonpodcast.com/clubhouse today and signing up for a trial. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) To help other people find the show please leave a review on iTunes, or Google Play Music, tell your friends and co-workers, and share it on social media. Join the community in the new Zulip chat workspace at pythonpodcast.com/chat Your host as usual is Tobias Macey and today I’m interviewing Michael Cuthbert about music21, a toolkit for computer aided musicology Interview Introductions How did you get introduced to Python? Can you start by explaining what computational musicology is? What is music21 and what motivated you to create it? What are some of the use cases that music21 supports, and what are some common requests that you purposefully don’t support? How much knowledge of musical notation, structure, and theory is necessary to be able to work with music21? Can you talk through a typical workflow for doing analysis of one or more pieces of existing music? What are some of the common challenges that users encounter when working with it (either on the side of Python or musicology/musical theory)? What about for doing exploration of new musical works? As a professor at MIT, what are some of the ways that music21 has been incorporated into your classroom? What have they enjoyed most about it? How is music21 implemented, and how has its structure evolved since you first started it? What have been the most challenging aspects of building and maintaining the music21 project and community? What are some of the most interesting, unusual, or unexpected ways that you have seen music21 used? What are some analyses that you have performed which yielded unexpected results? What do you have planned for the future of music21? Beyond computational analysis of musical theory, what are some of the other ways that you are using Python in your academic and professional pursuits? Keep In Touch mscuthbert on GitHub @mscuthbert on Twitter Picks Tobias Mozart’s Requiem performed by Berlin Philharmonik and conducted by Claudio Abbado Michael von Karajan Institute – Karajan was a major conductor of the 60s — his Institute now sponsors research into new projects in music technology and are big advocates of using Python for their data analysis. Ruth Crawford Seeger, String Quartet (1931) performed by The Playground Ensemble Links music21 Studies in Western Music History: Quantitative and Computational Approaches to Music History on MIT Open Courseware MIT Perl National Bureau of Economic Research Zen of Python Musicology Matplotlib Orange Podcast Episode scikit-learn Abjad Python Package SciPy numpy Pandas Podcast Episode PyLevenshtein Levenshtein Distance PyGame AVL Tree Subversion (SVN) Bach Chorales Artusi.xyz Interactive Music Theory VexFlow MIT Digital Humanities NLTK Flask Fortran Django Humdrum The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestr

Ep 197Classic Computer Science For Pythonistas
FullSummary Software development is a career that attracts people from all backgrounds, and Python in particular helps to make it an approachable occupation. Because of the variety of paths that can be taken it is becoming increasingly common for practitioners to bypass the traditional computer science education. In this episode David Kopec discusses some of the classic problems that he has found most useful to understand in his work as a professor and practitioner of software engineering. He shares his motivation for writing the book "Classic Computer Science Problems In Python", the practical approach that he took, and an overview of how the contents can be used in your day-to-day 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! And to keep track of how your team is progressing on building new features and squashing bugs, you need a project management system designed by software engineers, for software engineers. Clubhouse lets you craft a workflow that fits your style, including per-team tasks, cross-project epics, a large suite of pre-built integrations, and a simple API for crafting your own. Podcast.__init__ listeners get 2 months free on any plan by going to pythonpodcast.com/clubhouse today and signing up for a trial. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) To help other people find the show please leave a review on iTunes, or Google Play Music, tell your friends and co-workers, and share it on social media. Join the community in the new Zulip chat workspace at pythonpodcast.com/chat Your host as usual is Tobias Macey and today I’m interviewing David Kopec about his recent book "Classic Computer Science Problems In Python" Interview Introductions How did you get introduced to Python? Can you start by discussing your motivation for creating this book and the subject matter that it covers? How do you define a "classic" computer science problem and what was your criteria for selecting the specific cases that you included in the book? What are your favorite features of the Python language, and which of them did you learn as part of the process of writing the examples for this book? Which classes of problems have you found to be most difficult for your readers and students to master? Which do you consider to be most relevant/useful to professional software engineers? I was pleasantly surprised to see introductory aspects of artificial intelligence included in the subject matter that you covered. How did you approach the challenge of making the underlying principles accessible to readers who don’t necessarily have a background in the related fields of mathematics? What are some of the most interesting or unexpected changes that you had to make in the process of adapting your examples from Swift to Python in order to make them appropriately idiomatic? By aiming for an intermediate audience you free yourself of the need to incorporate fundamental aspects of programming, but there can be a wide variety of experiences at that level of experience. How did you approach the challenge of making the text accessible while still being accurate and engaging? What are some of the resources that you would recommend to readers who would like to continue learning about computer science after completing your book? Keep In Touch @davekopec on Twitter Website Book Discount And Giveaway Use code podinit19 to get 40% off all Manning products Picks Tobias Elementor David nesdev The Curse of Oak Island Links Classic Computer Science Problems in Python Classic Computer Science Problems in Swift Dart For Absolute Beginners Dart Swift Manning Publications Apress Python Data Classes Python Type Hints Recursion A* Search Algorithm Neural Network Champlain College Burlington, VT, USA HyperLoop Data Structures And Algorithms In Python by Michael T. Goodrich, Roberto Tamassia, Michael H. Goldwasser MyPy Podcast Interview PyTorch Minimax Dartmouth College Big O Notation The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Ep 196What You Need To Know About Open Source Licenses And Intellectual Property
FullSummary As a developer and user of open source code, you interact with software and digital media every day. What is often overlooked are the rights and responsibilities conveyed by the intellectual property that is implicit in all creative works. Software licenses are a complicated legal domain in their own right, and they can often conflict with each other when you factor in the web of dependencies that your project relies on. In this episode Luis Villa, Co-Founder of Tidelift, explains the catagories of software licenses, how to select the right one for your project, and what to be aware of when you contribute to someone else’s code. 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! And to keep track of how your team is progressing on building new features and squashing bugs, you need a project management system designed by software engineers, for software engineers. Clubhouse lets you craft a workflow that fits your style, including per-team tasks, cross-project epics, a large suite of pre-built integrations, and a simple API for crafting your own. Podcast.__init__ listeners get 2 months free on any plan by going to pythonpodcast.com/clubhouse today and signing up for a trial. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) To help other people find the show please leave a review on iTunes, or Google Play Music, tell your friends and co-workers, and share it on social media. Join the community in the new Zulip chat workspace at pythonpodcast.com/chat Your host as usual is Tobias Macey and today I’m interviewing Luis Villa about software licensing and intellectual property rules that developers need to know Interview Introductions How did you get started as a programmer? Intellectual property law and licensing of software, data, and media are complicated topics that are often poorly understood by developers. Can you start off by giving an overview of categories of intellectual property that we should be thinking of? Most of us who have created or used software, whether it is open or closed source, have at some point come across various licenses. What may not be immediately obvious is that there are degrees of compatibility between these licenses. What are some guiding principles for determining which licenses are in conflict? In an organization, who is responsible for ensuring compliance with software and content licensing within a given project? When introducing new dependencies into a project or system what steps should be taken to evaluate license compatibility and compliance? When creating a new project, one of the steps in the process is to select a license. What are some useful guidelines or questions to determine which license to use? Another aspect of software licensing that developers might run into is when contributing to an open source project where a contributor license agreement might be necessary. What should we be thinking about when deciding whether to sign such an agreement? In addition to software libraries, developers might need to use content such as images, audio, or video in their projects which have their own copyright and licensing considerations. What are some of the things that we should be looking for in those situations? Another component of our systems that has grown in its importance with the rise of advanced analytics is data. We may need to use open data sources, pay for access to data repositories, or provide access to data that is under our control. What are some common approaches to licensing or terms of use for these contexts? What should we be wary of when using or providing data in our applications? How much of the work that you do at Tidelift is spent on educating developers and customers on the finer points of intellectual property management? What are some of the most common difficulties or points of confusion that you encounter? What are some useful resources that you would recommend to anyone who is interested in learning more about intellectual property and software licensing? Keep In Touch Website @luis_in_140 on Twitter LinkedIn Picks Tobias Spider Man: Into The Spiderverse Luis The Good Place Twitter and Teargas by Zeynep Tufecki

Ep 195Counteracting Code Complexity With Wily
FullSummary As we build software projects, complexity and technical debt are bound to creep into our code. To counteract these tendencies it is necessary to calculate and track metrics that highlight areas of improvement so that they can be acted on. To aid in identifying areas of your application that are breeding grounds for incidental complexity Anthony Shaw created Wily. In this episode he explains how Wily traverses the history of your repository and computes code complexity metrics over time and how you can use that information to guide your refactoring efforts. Preface 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! And to keep track of how your team is progressing on building new features and squashing bugs, you need a project management system designed by software engineers, for software engineers. Clubhouse lets you craft a workflow that fits your style, including per-team tasks, cross-project epics, a large suite of pre-built integrations, and a simple API for crafting your own. Podcast.__init__ listeners get 2 months free on any plan by going to pythonpodcast.com/clubhouse today and signing up for a trial. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) To help other people find the show please leave a review on iTunes, or Google Play Music, tell your friends and co-workers, and share it on social media. Join the community in the new Zulip chat workspace at pythonpodcast.com/chat Your host as usual is Tobias Macey and today I’m interviewing Anthony Shaw about Wily, a command-line application for tracking and reporting on complexity of Python tests and applications Interview Introductions How did you get introduced to Python? Can you start by describing what Wily is and what motivated you to create it? What is software complexity and why should developers care about it? What are some methods for measuring complexity? I know that Python has the McCabe tool, but what other methods are there for determining complexity, both in Python and for other languages? What kinds of useful signals can you derive from evaluating historical trends of complexity in a codebase? What are some other useful metrics for tracking and maintaining the health of a software project? Once you have established the points of complexity in your software, what are some strategies for remediating it? What are your favorite tools for refactoring? What are some of the aspects of developer-oriented tools that you have found to be most important in your own projects? What are your plans for the future of Wily, or any other tools that you have in mind to aid in producing healthy software? Keep In Touch anthonywritescode on GitHub @anthonypjshaw on Twitter Website Medium Picks Tobias Baobab Impractical Jokers Anthony Line Of Duty Fierce Girls Links Wily Dimension Data Pluralsight Real Python Seattle C# Cyclomatic Complexity McCabe Git C Assembly Halstead Radon The Zen Of Python Vocabulary Metric Java Anti Patterns God Object Pre-Commit Codeclimate Glom ASQ PyCharm PyDocStyle PyLint Black Sunburst Chart Visual Studio Code The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Ep 194Teaching Digital Archaeology With Jupyter Notebooks
FullSummary Computers have found their way into virtually every area of human endeavor, and archaeology is no exception. To aid his students in their exploration of digital archaeology Shawn Graham helped to create an online, digital textbook with accompanying interactive notebooks. In this episode he explains how computational practices are being applied to archaeological research, how the Online Digital Archaeology Textbook was created, and how you can use it to get involved in this fascinating area of research. Introduction 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 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show! And to keep track of how your team is progressing on building new features and squashing bugs, you need a project management system designed by software engineers, for software engineers. Clubhouse lets you craft a workflow that fits your style, including per-team tasks, cross-project epics, a large suite of pre-built integrations, and a simple API for crafting your own. Podcast.__init__ listeners get 2 months free on any plan by going to pythonpodcast.com/clubhouse today and signing up for a trial. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) To help other people find the show please leave a review on iTunes, or Google Play Music, tell your friends and co-workers, and share it on social media. Join the community in the new Zulip chat workspace at pythonpodcast.com/chat Your host as usual is Tobias Macey and today I’m interviewing Shawn Graham about his work on the Online Digital Archaeology Textbook Interview Introductions How did you get introduced to Python? Can you start by explaining what digital archaeology is? To facilitate your teaching you have collaborated on the O-DATE textbook and associated Jupyter notebooks. Can you describe what that resource covers and how the project got started? What have you found to be the most critical lessons for your students to help them be effective archaeologists? What are the most useful aspects of leveraging computational techniques in an archaeological context? Can you describe some of the sources and formats of data that would commonly be encountered by digital archaeologists? The notebooks that accompany the text have a mixture of R and Python code. What are your personal guidelines for when to use each language? How have the skills and tools of software engineering influenced your views and approach to research and education in the realm of archaeology? What are some of the most novel or engaging ways that you have seen computers applied to the field of archaeology? What are your goals and aspirations for the O-DATE project? Keep In Touch Blog @electricarchaeo on Twitter Picks Tobias TaoTronics Noise Cancelling Earbuds Shawn Ian Rankin In A House Of Lies Links O-DATE Textbook Carleton University Ottawa Canada Simulation Modeling Agent Based Modeling NetLogo Complexity Theory Archaeology Digital Archaeology The Programming Historian University of Western Ontario Historical GIS ArcGIS QGIS Digital Humanities Project Jupyter Podcast Episode Binder – Service for hosting Jupyter notebooks E-Campus Ontario Graph Databases SparQL OpenContext.org TDAR (The Digital Archaeology Record) R Language R OpenSci Arrow Pandas Podcast Episode Neural Networks Generative Adversarial Networks Computer Vision Archaeogaming Alamagordo Atari Excavation Leiden University Interactive Pasts Conference Photogrammetry LIDAR Palmyran Arch Ben Marwick Matt Harris Jolene Smith Sara Perry Rachel Opitz Colleen Morgan Patrick Burns Ethan Watrall Andrew Reinhard Neha Gupta Katherine Cook Value Foundation The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Ep 193Analyzing Satellite Image Data Using PyTroll
FullSummary Every day there are satellites collecting sensor readings and imagery of our Earth. To help make sense of that information, developers at the meteorological institutes of Sweden and Denmark worked together to build a collection of Python packages that simplify the work of downloading and processing satellite image data. In this episode one of the core developers of PyTroll explains how the project got started, how that data is being used by the scientific community, and how citizen scientists like you are getting involved. Preface 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 check out Linode. With 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And to keep track of how your team is progressing on building new features and squashing bugs, you need a project management system designed by software engineers, for software engineers. Clubhouse lets you craft a workflow that fits your style, including per-team tasks, cross-project epics, a large suite of pre-built integrations, and a simple API for crafting your own. Podcast.__init__ listeners get 2 months free on any plan by going to pythonpodcast.com/clubhouse today and signing up for a trial. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) To help other people find the show please leave a review on iTunes, or Google Play Music, tell your friends and co-workers, and share it on social media. Join the community in the new Zulip chat workspace at pythonpodcast.com/chat Your host as usual is Tobias Macey and today I’m interviewing Martin Raspaud about PyTroll, a suite of projects for processing earth observing satellite data Interview Introductions How did you get introduced to Python? Can you start by explaining what PyTroll is and how the overall project got started? What is the story behind the name? What are the main use cases for PyTroll? (e.g. types of analysis, research domains, etc.) What are the primary types of data that would be processed and analayzed with PyTroll? (e.g. images, sensor readings, etc.) When retrieving the data, are you communicating directly with the satellites, or are there facilities that fetch the information periodically which you can then interface with? How do you locate and select which satellites you wish to retrieve data from? What are the main components of PyTroll and how do they fit together? For someone processing satellite data with PyTroll, can you describe the workflow? What are some of the main data formats that are used by satellites? What tradeoffs are made between data density/expressiveness and bandwidth optimization? What are some of the common issues with data cleanliness or data integration challenges? Once the data has been retrieved, what are some of the types of analysis that would be performed with PyTroll? Are there other tools that would commonly be used in conjunction with PyTroll? What are some of the unique challenges posed by working with satellite observation data? How has the design and capability of the various PyTroll packages evolved since you first began working on it? What are some of the most interesting or unusual ways that you have seen PyTroll used? What are some of the lessons that you have learned while building PyTroll that you have found to be most useful or unexpected? What do you have planned for the future of PyTroll? Keep In Touch Martin mraspaud on GitHub @MartinRaspaud on Twitter Pytroll Website Slack Mailing List @PyTroll on Twitter Picks Tobias Tool A Perfect Circle Martin Vulfpeck Links PyTroll Swedish Meteorological and Hydrological Institute Common Lisp Danish Meteorological Institute Trolls in Scandinavian Lore NumPy KISS (Keep It Simple Stupid) Spectroscopy Radiance Polar Orbiting Satellite Geostationary Satellite EUMETSAT SatPy PyResample Cartographic Projection Proj4 GOES16 [GOES17](https://en.wikipedia.org/wiki/GOES-17?utm_source=rss&utm_medium=rss Dask Data Engineering Podcast Episode NetCDF HDF5 PySpectral PyCoast SupervisorD TrollCast European Space Agency The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Ep 192Building GraphQL APIs in Python Using Graphene with Syrus Akbary
FullSummary The web has spawned numerous methods for communicating between applications, including protocols such as SOAP, XML-RPC, and REST. One of the newest entrants is GraphQL which promises a simplified approach to client development and reduced network requests. To make implementing these APIs in Python easier, Syrus Akbary created the Graphene project. In this episode he explains the origin story of Graphene, how GraphQL compares to REST, how you can start using it in your applications, and how he is working to make his efforts sustainable. Preface 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 check out Linode. With 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And to keep track of how your team is progressing on building new features and squashing bugs, you need a project management system designed by software engineers, for software engineers. Clubhouse lets you craft a workflow that fits your style, including per-team tasks, cross-project epics, a large suite of pre-built integrations, and a simple API for crafting your own. Podcast.__init__ listeners get 2 months free on any plan by going to pythonpodcast.com/clubhouse today and signing up for a trial. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) To help other people find the show please leave a review on iTunes, or Google Play Music, tell your friends and co-workers, and share it on social media. Join the community in the new Zulip chat workspace at pythonpodcast.com/chat Your host as usual is Tobias Macey and today I’m interviewing Syrus Akbary about Graphene, a python library for building your APIs with GraphQL Interview Introductions How did you get introduced to Python? What is GraphQL and what is the benefit vs a REST-based API? How does it compare to specifications such as OpenAPI (formerly Swagger) or RAML? Can you explain what Graphene is and your motivation for building it? In addition to the Python implementation there is also a JavaScript library. Is that primarily for use as a client or can it also be used in Node for serving APIs? What is involved in building a GraphQL API? What does Graphene do to simplify this process? How is Graphene implemented and how has that evolved since you first started working on it? Is there a set of tests for verifying the compliance of Graphene or a specific API with the GraphQL specification? What are some of the most complex or confusing aspects of building a GraphQL API? What are some of the unique capabilities that are offered by building an application with GraphQL as the communication interface? While reading through documentation in preparation for our conversation I noticed the Quiver project. Can you explain what that is and how it fits with the other Graphene projects? What is it doing under the hood to optimize serving of the API? For someone who is interested in adding a GraphQL interface to an existing application, what would be involved? The documentation mentions creation of a schema, as well as defining queries. Is it possible for a client to craft queries that don’t match directly with those defined in the server layer? What are some of the most interesting or surprising uses of Graphene and GraphQL that you have seeen? What are some cases where it would be more practical to implement an API using REST instead of GraphQL? What are some references that you would recommend for anyone who wants to learn more about GraphQL and its ecosystem? What are your plans for the future of Graphene? Keep In Touch syrusakbary on GitHub Website @syrusakbary on Twitter Picks Tobias Audible Syrus Web Assembly Links Graphene GraphQL REST (REpresentational State Transfer OpenAPI RAML PHP Facebook Engineering Graphene-SQLAlchemy Graphene-Django GraphiQL PyJade Django Rest Framework How To GraphQL Python 3.7 Dataclasses Graphene GitHub Issue The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Ep 191AIORTC: An Asynchronous WebRTC Framework with Jeremy Lainé
FullSummary Real-time communication over the internet is an amazing feat of modern engineering. The protocol that powers a majority of video calling platforms is WebRTC. In this episode Jeremy Lainé explains why he wrote a Python implementation of this protocol in the form of AIORTC. He also discusses how it works, how you can use it in your own projects, and what he has planned for the future. Preface 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 check out Linode. With 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And to keep track of how your team is progressing on building new features and squashing bugs, you need a project management system designed by software engineers, for software engineers. Clubhouse lets you craft a workflow that fits your style, including per-team tasks, cross-project epics, a large suite of pre-built integrations, and a simple API for crafting your own. Podcast.__init__ listeners get 2 months free on any plan by going to pythonpodcast.com/clubhouse today and signing up for a trial. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) To help other people find the show please leave a review on iTunes, or Google Play Music, tell your friends and co-workers, and share it on social media. Join the community in the new Zulip chat workspace at pythonpodcast.com/chat Your host as usual is Tobias Macey and today I’m interviewing Jeremy Lainé about AIORTC, an asynchronous implementation of the WebRTC and ObjectRTC protocols in Python Interview Introductions How did you get introduced to Python? Can you start by explaining what the WebRTC and ObjectRTC protocols are? What are some of the main use cases for these protocols? What is AIORTC and what was your motivation for creating it? How does it compare to other implementations of the RTC protocols? Why do you think there haven’t been any other Python implementations? What are some of the benefits of having a Python implementation of the RTC protocol? How is AIORTC implemented? What have been some of the most difficult or challenging aspects of implementing a WebRTC compliant library? What are some of the most interesting or useful lessons that you have learned in the process? What is involved in building an application on top of AIORTC? What would be required to integrate AIORTC into an existing application built with something such as Flask or Django? What are some of the most interesting uses of AIORTC that you have seen? What are some of the projects that you would like to build with AIORTC? What are some cases where it would make more sense to use a different library or framework for your WebRTC projects? What are your plans for the future of AIORTC? Keep In Touch jlaine on GitHub Website @JeremyLaine on Twitter Picks Tobias Tengger Cavalry Jeremy PyAV Mike Boers Links AIORTC WebRTC Electrical Engineering [C](https://en.wikipedia.org/wiki/C_(programming_language)?utm_source=rss&utm_medium=rss C++ PHP Ruby STUN (Session Traversal Utilities for NAT) TURN (Traversal Using Relays around NAT) ICE (Internet Connectivity Establishment) TLS (Transport Layer Security) RTP (Real-time Transport Protocol) Zencastr Jitsi RawRTC AsyncIO AIOICE Cryptography Podcast.init Episode OpenCV PyAV FFMPEG Edge Detection Asterisk Raspberry Pi Datagram Transport Security Mozilla Augmented Reality The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Ep 190Polyglot: Multi-Lingual Natural Language Processing with Rami Al-Rfou
FullSummary Using computers to analyze text can produce useful and inspirational insights. However, when working with multiple languages the capabilities of existing models are severely limited. In order to help overcome this limitation Rami Al-Rfou built Polyglot. In this episode he explains his motivation for creating a natural language processing library with support for a vast array of languages, how it works, and how you can start using it for your own projects. He also discusses current research on multi-lingual text analytics, how he plans to improve Polyglot in the future, and how it fits in the Python ecosystem. Preface 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 check out Linode. With 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And to keep track of how your team is progressing on building new features and squashing bugs, you need a project management system designed by software engineers, for software engineers. Clubhouse lets you craft a workflow that fits your style, including per-team tasks, cross-project epics, a large suite of pre-built integrations, and a simple API for crafting your own. Podcast.__init__ listeners get 2 months free on any plan by going to pythonpodcast.com/clubhouse today and signing up for a trial. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) To help other people find the show please leave a review on iTunes, or Google Play Music, tell your friends and co-workers, and share it on social media. Join the community in the new Zulip chat workspace at pythonpodcast.com/chat Your host as usual is Tobias Macey and today I’m interviewing Rami Al-Rfou about Polyglot, a natural language pipeline with support for an impressive amount of languages Interview Introductions How did you get introduced to Python? Can you start by describing what Polyglot is and your reasons for starting the project? What are the types of use cases that Polyglot enables which would be impractical with something such as NLTK or SpaCy? A majority of NLP libraries have a limited set of languages that they support. What is involved in adding support for a given language to a natural language tool? What is involved in adding a new language to Polyglot? Which families of languages are the most challenging to support? What types of operations are supported and how consistently are they supported across languages? How is Polyglot implemented? Is there any capacity for integrating Polyglot with other tools such as SpaCy or Gensim? How much domain knowledge is required to be able to effectively use Polyglot within an application? What are some of the most interesting or unique uses of Polyglot that you have seen? What have been some of the most complex or challenging aspects of building Polyglot? What do you have planned for the future of Polyglot? What are some areas of NLP research that you are excited for? Keep In Touch Picks Tobias Duolingo Rami The Wizard and the Prophet: Two Remarkable Scientists and Their Dueling Visions to Shape Tomorrow’s World by Charles C. Mann Links Polyglot Polyglot-NER Jordan NLP (Natural Language Processing) Stony Brook University Arabic Sentiment Analysis Assembly Language C .NET Stack Overflow Deep Learning Word Embedding Wikipedia Word2Vec NLTK (Python Natural Language Toolkit) SpaCy Podcast Episode Gensim Podcast Episode Morphology Morpheme Transfer Learning Read The Docs BERT (Bidirectional Encoder Representations from Transformers) FastText data.world Data Engineering Podcast Episode Quilt package management for data Data Engineering Podcast Episode The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA

Ep 189Gnocchi: A Scalable Time Series Database For Your Metrics with Julien Danjou
FullSummary Do you know what your servers are doing? If you have a metrics system in place then the answer should be “yes”. One critical aspect of that platform is the timeseries database that allows you to store, aggregate, analyze, and query the various signals generated by your software and hardware. As the size and complexity of your systems scale, so does the volume of data that you need to manage which can put a strain on your metrics stack. Julien Danjou built Gnocchi during his time on the OpenStack project to provide a time oriented data store that would scale horizontally and still provide fast queries. In this episode he explains how the project got started, how it works, how it compares to the other options on the market, and how you can start using it today to get better visibility into your operations. Preface 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 check out Linode. With 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And to keep track of how your team is progressing on building new features and squashing bugs, you need a project management system designed by software engineers, for software engineers. Clubhouse lets you craft a workflow that fits your style, including per-team tasks, cross-project epics, a large suite of pre-built integrations, and a simple API for crafting your own. Podcast.__init__ listeners get 2 months free on any plan by going to pythonpodcast.com/clubhouse today and signing up for a trial. Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email [email protected]) To help other people find the show please leave a review on iTunes, or Google Play Music, tell your friends and co-workers, and share it on social media. Join the community in the new Zulip chat workspace at pythonpodcast.com/chat Your host as usual is Tobias Macey and today I’m interviewing Julien Danjou about Gnocchi, an open source time series database built to handle large volumes of system metrics Interview Introductions How did you get introduced to Python? Can you start by describing what Gnocchi is and how the project got started? What was the motivation for moving Gnocchi out of the Openstack organization and into its own top level project? The space of time series databases and metrics as a service platforms are both fairly crowded. What are the unique features of Gnocchi that would lead someone to deploy it in place of other options? What are some of the tools and platforms that are popular today which hadn’t yet gained visibility when you first began working on Gnocchi? How is Gnocchi architected? How has the design changed since you first started working on it? What was the motivation for implementing it in Python and would you make the same choice today? One of the interesting features of Gnocchi is its support of resource history. Can you describe how that operates and the types of use cases that it enables? Does that factor into the multi-tenant architecture? What are some of the drawbacks of pre-aggregating metrics as they are being written into the storage layer (e.g. loss of fidelity)? Is it possible to maintain the raw measures after they are processed into aggregates? One of the challenging aspects of building a scalable metrics platform is support for high-cardinality data. What sort of labelling and tagging of metrics and measures is available in Gnocchi? For someone who wants to implement Gnocchi for their system metrics, what is involved in deploying, maintaining, and upgrading it? What are the available integration points for extending and customizing Gnocchi? Once metrics have been stored, aggregated, and indexed, what are the options for querying and analyzing the collected data? When is Gnocchi the wrong choice? What do you have planned for the future of Gnocchi? Keep In Touch jd on GitHub Website @juldanjou on Twitter Picks Tobias Marketplace Podcast Julien Mergify Links Gnocchi RedHat OpenStack Object Oriented Programming O’Reilly Debian Ceilometer Prometheus Time Series MySQL Gerrit Zuul Podcast Episode GitHub GitLab Graphite Podcast Episode DataDog RabbitMQ InfluxDB Ceph Podcast Episode S3 OpenStack Swift Cassandra Honeycomb Observability Service Podcast Episode AMQP Redis DSL (Domain Specific Language) Golang RBAC (Role-Based Access Control) CollectD StatsD Gnocchi Client Telegraf Grafana T