The Real Python Podcast

Real Python
undefined
Jun 9, 2023 • 1h 1min

Volunteering, Organizing, and Finding a Python Community

Have you thought about getting more involved in the Python community? Are you interested in volunteering for an event or becoming an organizer? This week on the show, we speak with organizers from this year’s PyCascades conference about making connections, learning new skills, and rationing your time. We have three guests to discuss working on PyCascades 2023 and how they got involved in volunteering. Conference Chair Ben Berry, a site reliability engineer based in Seattle, is currently working on a private platform-as-a-service. Diversity Chair Madison Swain-Bowden is a senior data engineer out of Seattle, currently working at Automattic on the Openverse team. Sponsorship Chair Michael van der Kamp is a back-end engineer at Coffee Meets Bagel. We discuss finding other volunteers, maintaining motivation, and connecting with sponsors. Our guests also share their stories of overcoming challenges, connecting with community, and finding fulfillment through volunteering. This week’s episode is brought to you by Proxify. Course Spotlight: Using pandas to Make a Gradebook in Python With this course and Python project, you’ll build a script to calculate grades for a class using pandas. The script will quickly and accurately calculate grades from a variety of data sources. You’ll see examples of loading, merging, and saving data with pandas, as well as plotting some summary statistics. Topics: 00:00:00 – Introduction 00:02:34 – Conference Chair Ben Berry 00:03:58 – Diversity Chair Madison Swain-Bowden 00:06:04 – Sponsorship Chair Michael van der Kamp 00:08:28 – Scheduling of conferences around one another 00:10:41 – How did you get involved in the community? 00:20:01 – Sponsor: Proxify 00:20:57 – Workplace groups and guilds 00:27:41 – How community helps with job referrals 00:32:19 – New position and added responsibilities 00:41:24 – How would you pitch volunteering? 00:44:32 – Video Course Spotlight 00:45:45 – How do you avoid overdoing it? 00:52:46 – What are you excited about in the world of Python? 00:55:16 – What do you want to learn next? 00:59:22 – Thanks and goodbye Show Links: The Team - PyCascades 2023 PyCascades 2023 - YouTube PyLadies – Women Who Love Coding in Python Puget Sound Programming Python (PuPPy) (Seattle, WA) - Meetup PySprings (Colorado Springs, CO) - Meetup What is Lean Coffee? - an introduction to agenda-less meetings Async IO in Python: A Complete Walkthrough – Real Python Structural Pattern Matching – Real Python Using FastAPI to Build Python Web APIs – Real Python Rust Programming Language Rust for Rustaceans - No Starch Press CircuitPython Michael van der Kamp - LinkedIn Madison on Tumblr Ben Berry (@benb@fosstodon.org) Level up your Python skills with our expert-led courses: Using pandas to Make a Gradebook in Python The pandas DataFrame: Working With Data Efficiently Building Python Project Documentation With MkDocs Support the podcast & join our community of Pythonistas
undefined
8 snips
Jun 2, 2023 • 53min

Building Python CI With Docker & Applying for a Hacker Initiative Grant

Do you need a refresher on using Docker with Python? Would you like to learn how to configure a continuous integration pipeline with modern tools and Docker? This week on the show, Christopher Trudeau is here, bringing another batch of PyCoder’s Weekly articles and projects. We share a Real Python tutorial from Bartosz Zaczyński about building continuous integration with Docker. Docker provides consistent environments for configuring, testing, and delivering Python applications. In this tutorial, you’ll get up to speed with current Docker and CI techniques. We also speak with Bill Pollock from No Starch Press about Hacker Initiative. The public nonprofit gives back to and strengthens the hacking community. The 2023 grant cycle is currently open until August 15. We discuss the application process and projects from previous grant recipients. We cover several other articles and projects from the Python community, including a news update and some resources on implementing metaclasses in Python, creating time machine-style backups, and scanning your project for vulnerabilities. Course Spotlight: Metaclasses in Python Metaclasses are an important but mysterious behind-the-scenes mechanism for instantiating classes in Python. In this video course, you’ll learn how Python’s metaclasses work in object-oriented programming. Topics: 00:00:00 – Introduction 00:02:26 – PyPI Temporarily Suspended New Registrations 00:03:38 – PyPI was subpoenaed 00:04:54 – Python 3.12.0 beta 1 released 00:05:19 – Build Robust Continuous Integration With Docker and Friends 00:13:02 – Metaclasses in Python 00:20:03 – Pronouncing SQL - Is there life after SQL? 00:22:52 – Video Course Spotlight 00:24:25 – pyscan: Python dependency vulnerability scanner, written in Rust 00:26:28 – rsync-time-machine.py: Time Machine-Style Backups 00:29:20 – Bill Pollock and Hacker Initiative 00:34:18 – Previous grant recipients 00:36:58 – First Tech Challenge 00:43:18 – Large vs small nonprofits 00:45:48 – Applying for the 2023 grant cycle 00:49:01 – Underserved areas 00:51:45 – Thanks and goodbye News: PyPI Temporarily Suspended New Registrations – Due to a large volume of traffic from malicious users, PyPI temporarily suspended new account and project registrations on May 20. The suspension was lifted thirty hours later on May 21. PyPI was subpoenaed - The Python Package Index – The PSF received three subpoenas from the US Department of Justice for PyPI user data in March and April of 2023. Python Insider: Python 3.12.0 beta 1 released Show Links: Build Robust Continuous Integration With Docker and Friends – In this tutorial, you’ll use Docker and GitHub Actions to build a robust continuous integration pipeline for a multi-container web application consisting of Flask and Redis. Along the way, you’ll learn how to dockerize a Python web application. Metaclasses in Python - Real Python Video Course – Metaclasses are an important but mysterious behind-the-scenes mechanism for instantiating classes in Python. In this video course, you’ll learn how Python’s metaclasses work in object-oriented programming. Is there life after SQL? - YouTube Projects: pyscan: Python dependency vulnerability scanner, written in Rust - GitHub rsync-time-machine.py: Time Machine-Style Backups Hacker Initiative Links: Hacker Initiative – By hackers. For hackers. Apply for the 2023 Grant Cycle – Hacker Initiative 2022 Grant Recipients – Hacker Initiative Additional Links: Release CPython 3.12.0b1 w/ WASI SDK 20 - brettcannon/cpython-wasi-build Episode #149: Coding With namedtuple & Python’s Dynamic Superpowers What is FIRST Tech Challenge? - FIRST No Starch Press - “The finest in geek entertainment” Level up your Python skills with our expert-led courses: Continuous Integration With Python Metaclasses in Python Writing Clean, Pythonic Code With namedtuple Support the podcast & join our community of Pythonistas
undefined
May 26, 2023 • 55min

Discussing Mojo & Improving Python Object-Oriented Programming

Would you like to speed up your Python machine-learning code dramatically? What if you only had to change a few keywords and add a couple of type hints on portions of your code? This week on the show, Christopher Trudeau is here, bringing another batch of PyCoder’s Weekly articles and projects. We discuss a new programming language named Mojo, which is a superset of Python. It aims to fix Python’s performance and deployment problems. The project has many interesting ideas and a leader who has helped to shape modern compiler technology. We also share a pair of Real Python tutorials from Leodanis Pozo Ramos about object-oriented programming in Python. The first one is a deep dive into the creation of classes. It’s an excellent refresher for anyone looking to hone their OOP skills in Python. The second tutorial covers the SOLID principles, which are five well-established standards for improving your object-oriented design. These principles guide you to create object-oriented code that is more maintainable, extensible, scalable, and testable. We cover several other articles and projects from the Python community, including a news update, showing warnings when running Django, tracking the progress of your Python program, and a Markdown browser for your terminal. This week’s episode is brought to you by Koyeb. Course Spotlight: Using k-Nearest Neighbors (kNN) in Python In this video course, you’ll learn all about the k-nearest neighbors (kNN) algorithm in Python, including how to implement kNN from scratch. Once you understand how kNN works, you’ll use scikit-learn to facilitate your coding process. Topics: 00:00:00 – Introduction 00:02:39 – PEP 713: Callable Modules 00:04:22 – PEP 712: “Converter” Parameter for dataclasses.field 00:06:49 – Python Classes: The Power of Object-Oriented Programming 00:16:44 – Sponsor: Koyeb 00:17:33 – SOLID Principles: Improve Object-Oriented Design in Python 00:22:00 – Mojo, a Superset of Python 00:34:31 – Mojo might be the biggest thing to happen in programming for decades 00:41:48 – Mojo – a new programming language for AI developers 00:44:03 – Video Course Spotlight 00:45:23 – Have Python Show Warnings When Running Django 00:47:52 – TQDM: Tracking the Progress of Your Python Program 00:50:34 – frogmouth: A Markdown Browser for Your Terminal 00:53:59 – Thanks and goodbye News: PEP 713: Callable Modules PEP 712: “Converter” Parameter for dataclasses.field Show Links: Python Classes: The Power of Object-Oriented Programming – In this tutorial, you’ll learn how to create and use full-featured classes in your Python code. Classes provide a great way to solve complex programming problems by approaching them through models that represent real-world objects. SOLID Principles: Improve Object-Oriented Design in Python – In this tutorial, you’ll learn about the SOLID principles, which are five well-established standards for improving your object-oriented design in Python. By applying these principles, you can create object-oriented code that is more maintainable, extensible, scalable, and testable. Mojo, a Superset of Python – Mojo is a new programming language, which is a superset of Python. It aims to fix Python’s performance and deployment problems. Have Python Show Warnings When Running Django – How to show warnings when running Python, and Django, during local development. The easy, yet not well-known, way. Discussion: Mojo might be the biggest thing to happen in programming for decades - Hacker News Mojo, a new programming language for AI developers - Hacker News Projects: TQDM: Tracking the Progress of Your Python Program frogmouth: A Markdown Browser for Your Terminal Additional Links: Video - tqdm documentation tqdm documentation pipx Episode #101: Tools for Setting Up Python on a New Machine – The Real Python Podcast Level up your Python skills with our expert-led courses: Using Jupyter Notebooks Using k-Nearest Neighbors (kNN) in Python Using Multiple Constructors in Your Python Classes Support the podcast & join our community of Pythonistas
undefined
May 12, 2023 • 1h 9min

Virtual Environment Structure & Surveying the Packaging Ecosystem

How do Python virtual environments work under the hood? How does understanding these concepts help you with managing them for your projects? This week on the show, CPython core developer Brett Cannon returns to discuss his recent articles about virtual environments and the Python packaging landscape. Brett talks about his recent article “How Virtual Environments Work.” He was researching the topic to solve an issue with a Linux Python distribution that doesn’t provide the tools to create virtual environments. We talk about how he solved the problem by creating a tiny library named microvenv. We also take a look at the Python packaging ecosystem. Brett talks about the early days of Python, when these tools didn’t exist. He contrasts that with the current packaging solution explosion and how each one attempts to solve unique problems. We also discuss the Python Packaging User Survey and the plans for packaging summits at PyCon US. Note that we recorded this episode two weeks before PyCon US 2023. Course Spotlight: Getting the Most Out of the Python Standard REPL In this video course, you’ll learn how to use the Python standard REPL (Read-Eval-Print Loop) to run your code interactively. This tool will allow you to test new ideas, explore and experiment with new tools and libraries, refactor and debug your code, try out examples, and more. Topics: 00:00:00 – Introduction 00:01:58 – Virtual environments 00:07:10 – PEP 704 & virtual environment workflows 00:26:57 – Experimenting with not including pip 00:34:44 – Video Course Spotlight 00:36:35 – What are you using for packaging? 00:43:32 – Python Packaging User Survey & the history of packaging 00:48:40 – Packing only gets complex when it’s not pure Python code 01:01:22 – Outcomes after the survey and the packaging summit 01:03:56 – What are you excited about in the world of Python? 01:05:28 – What’s something you want to learn next? 01:07:12 – How can people follow the work that you do? 01:08:14 – Thanks and goodbye Show Links: How virtual environments work PEP 704 – Require virtual environments by default for package installers - peps.python.org microvenv - PyPI python-launcher: Python launcher for Unix - GitHub bootstrap.pypa.io Classifying Python virtual environment workflows Python Packaging User Survey - Results PDF Thoughts on the Python packaging ecosystem - Pradyun Gedam pypa/packaging: Core utilities for Python packages - GitHub Flit 3.8.0 - Flit 3.8.0 documentation hatch - PyPI hatchling - PyPI Episode #93: Launching Python, Virtual Environments, and Locking Dependencies With Brett Cannon – The Real Python Podcast PEP 665 – A file format to list Python dependencies for reproducibility of an application - peps.python.org Programming Rust, 2nd Edition Tall, Snarky Canadian - Brett’s Blog Microsoft Python Blog Visual Studio Code Blog Brett Cannon (@brettcannon@fosstodon.org) - Mastodon Level up your Python skills with our expert-led courses: Getting the Most Out of the Python Standard REPL Working With Python Virtual Environments Publishing Python Packages to PyPI Support the podcast & join our community of Pythonistas
undefined
May 5, 2023 • 38min

Checking Project Dependencies & Python Dev Resource Collections

How can you ensure that you’ve appropriately declared your project’s required dependencies? How do you determine what dependencies are missing from a third-party project that you can’t run? This week on the show, Christopher Trudeau is here, bringing another batch of PyCoder’s Weekly articles and projects. We discuss a new Python dependency checker called FawltyDeps. The tool helps you determine if you’ve declared too few or too many packages for your project. Christopher has brought several developer resource collections: a list of assured open-source Python packages from Google, test databases with interesting datasets, and multiple Django third-party packages. We cover several other articles and projects from the Python community, including a news update, advice on how to pitch yourself as a guest to a podcast, how to submit articles and projects to PyCoders Weekly, PyPI’s introduction of trusted publishers and organizations, a tool for tracking package history, a pixel art paint program written in Python, and a project for efficient string matching with regular expressions. Course Spotlight: Publishing Python Packages to PyPI In this video course, you’ll learn how to create a Python package for your project and how to publish it to PyPI, the Python Package Index. Quickly get up to speed on everything from naming your package to configuring it using setup.cfg. Topics: 00:00:00 – Introduction 00:02:19 – PEP 684 – A Per-Interpreter GIL Accepted 00:03:59 – Python 3.10 Runtime Now Available in AWS Lambda 00:04:19 – PyCon US 2023 Follow Up 00:08:05 – Podcast Topic & Guest Submissions 00:13:45 – Submissions to PyCoders Weekly 00:16:49 – Google’s Assured OSS Python Packages 00:18:27 – Groovy Datasets for Test Databases 00:19:10 – Top 10 Django Third-Party Packages 00:20:27 – Video Course Spotlight 00:21:46 – FawltyDeps - A Dependency Checker for Your Python 00:26:58 – PyPI Introduces “Trusted Publishers” 00:28:27 – Introducing PyPI Organizations 00:29:02 – pypi-diff: PyPI Package History Tracking 00:30:29 – PyDPainter: A usable pixel art paint program written in Python 00:35:19 – trrex: Efficient String Matching With Regular Expressions 00:37:16 – Thanks and Goodbye News: PEP 684 – A Per-Interpreter GIL Accepted Python 3.10 Runtime Now Available in AWS Lambda Show Links: PyCon US 2023 - Follow Up The Real Python Podcast (podcast@realpython.com) PyCoder’s Weekly - Submit a Link Google’s Assured OSS Python Packages – Google publishes a list of the open-source packages that it uses and secures within its own software supply chain. The list is public, so you can take advantage of their assessment. Groovy Datasets for Test Databases – When you experiment with a new-to-you data science skill, you need some sort of data to work with. Why be boring? This article talks about several available datasets that you can use when you practice your coding skills. Top 10 Django Third-Party Packages – Will covers a list of his favorite third-party packages for Django. This includes old favorites, like Django REST framework, and lesser-known packages, like django-filter and django-environ. FawltyDeps: A Dependency Checker for Your Python – FawltyDeps is a new tool to help you identify undeclared and unused dependencies in your Python code, making your projects leaner and more reproducible. PyPI Introduces “Trusted Publishers” – PyPI package maintainers can adopt a new, more secure, OIDC-authenticated publishing method that doesn’t require sharing long-lived passwords or API tokens with external systems. Introducing PyPI Organizations - The Python Package Index pypi-diff: PyPI Package History Tracking Projects PyDPainter: A usable pixel art paint program written in Python - GitHub trrex: Efficient String Matching With Regular Expressions Additional Links: Data Is Plural FawltyDeps Quick PyDPainter Demo - YouTube Having a look at PyDPainter and comparing it to Deluxe Paint on the Amiga - YouTube Level up your Python skills with our expert-led courses: Everyday Project Packaging With pyproject.toml Publishing Python Packages to PyPI Documenting Python Projects With Sphinx and Read the Docs Support the podcast & join our community of Pythonistas
undefined
Apr 28, 2023 • 1h 19min

Targeting WebAssembly Platforms & Distilling a Minimum Viable Python

Are you familiar with the different versions of WebAssembly? Could WASM be the “write once, run everywhere” solution that developers have searched for? Where does distributing Python applications fit in the narrative? This week on the show, we have CPython core developer Brett Cannon to discuss his recent articles about WebAssembly and MVPy. Brett has completed his syntactic sugar series, which we discussed in a previous episode. He details the origin of the series and his process of unearthing a minimum viable version of Python. Brett shares how he updated his PyCon US talk on the subject after feedback from presenting it at PyCascades. We also dig deep into WebAssembly, specifically WebAssembly System Interface (WASI). Brett explains the concept of a “platform target triple” and the importance of defining which system CPython is compiled for. We also discuss WebAssembly becoming a ubiquitous distribution system. Course Spotlight: Python Basics: Building Systems With Classes In this video course, you’ll learn how to work with classes to build complex systems in Python. By composing classes, inheriting from other classes, and overriding class behavior, you’ll harness the power of object-oriented programming (OOP). Topics: 00:00:00 – Introduction 00:02:05 – PyCascades 2023 00:02:56 – Using social media for polls and checking interest 00:06:02 – Completing the syntactic sugar blog series 00:15:29 – Minimum Viable Python (MVPy) and WebAssembly 00:19:29 – Other teams focusing on WebAssembly 00:21:31 – Sponsor: Courier 00:22:13 – Stack of technology 00:26:50 – WebAssembly and its platform targets 00:32:35 – WASI and connecting to a runtime 00:38:33 – Extension modules and dynamic libraries 00:47:29 – Overcoming road blocks and envisioning a new WASI assignment 00:51:51 – Video Course Spotlight 00:53:26 – PEP 11 & CPython platform support for WASI 01:03:11 – Machine-specific runtime 01:04:57 – Write once, run everywhere 01:13:14 – Talks and summits planned for PyCon 2023 01:18:00 – Thanks and goodbye Show Links: MVPy: Minimum Viable Python Python’s Syntactic Sugar - PyCon US 2023 Episode #47: Unraveling Python’s Syntax to Its Core With Brett Cannon – The Real Python Podcast syntactic sugar - Tall, Snarky Canadian Brett Cannon (@brettcannon@fosstodon.org) - Fosstodon WASI - wasi.dev WebAssembly and its platform targets Introducing the Disney+ Application Development Kit (ADK) - Mike Hanley Compute@Edge services using WebAssembly - Fastly Developer Hub Experimental - Python for the Web - Visual Studio Marketplace PEP 11 – CPython platform support - peps.python.org Testing a Python project using the WASI build of CPython with pytest The rise of WebAssembly - InfoWorld Can WASM become the new Docker? bytecodealliance/wasmtime: A fast and secure runtime for WebAssembly Emscripten - Dev Documentation PyScript - Run Python in your HTML Level up your Python skills with our expert-led courses: Python Basics: Object-Oriented Programming Inheritance and Composition: A Python OOP Guide Python Basics: Building Systems With Classes Support the podcast & join our community of Pythonistas
undefined
Apr 14, 2023 • 43min

Seeking Faster Text Processing & Python's .__repr__() vs .__str__()

What can you do if your text manipulation in Python is slowing you down? Are there faster alternatives using a compiled extension? This week on the show, Christopher Trudeau is here, bringing another batch of PyCoder’s Weekly articles and projects. Christopher shares a recent article by Itamar Turner-Trauring called “Speeding Up Text Processing in Python (Is Hard).” The piece compares the performance of string-matching scenarios using several alternatives to pure Python that rely on compiled extensions. We also discuss a recent Real Python tutorial by Stephen Gruppetta on when to use .__repr__() vs .__str__() in Python. We cover the use cases for these special methods and the intended audiences for the strings they produce. We share several other articles and projects from the Python community, including a news update, an article on the functional power of Python’s reduce(), a call to ban 1+N in Django, a friendly project to fetch your data files, and a tool for tracking your work from the shell. Course Spotlight: Unicode in Python: Working With Character Encodings In this course, you’ll get a Python-centric introduction to character encodings and Unicode. Handling character encodings and numbering systems can at times seem painful and complicated, but this guide is here to help with easy-to-follow Python examples. Topics: 00:00:00 – Introduction 00:02:11 – The Python Package Index Launches a Blog 00:03:11 – PEP 582 (Python Local Packages Directory) Rejected 00:05:00 – Django 4.2 Release Candidate 1 Released 00:05:34 – Want to Host DjangoCon Europe 2024? 00:06:23 – When Should You Use .__repr__() vs .__str__() in Python? 00:14:16 – Sponsor: Snyk 00:15:06 – Speeding Up Text Processing in Python (Is Hard) 00:22:21 – reduce() - The Power of a Single Python Function 00:30:27 – Video Course Spotlight 00:32:04 – Ban 1+N in Django 00:35:26 – Pooch - A Friend to Fetch Your Data Files 00:39:11 – workedon - Track Your Work From the Shell 00:41:53 – Thanks and Goodbye News: The Python Package Index Launches a Blog PEP 582 (Python Local Packages Directory) Rejected Django 4.2 Release Candidate 1 Released Want to Host DjangoCon Europe 2024? Show Links: When Should You Use .__repr__() vs .__str__() in Python? – In this tutorial, you’ll learn the difference between the string representations returned by .__repr__() vs .__str__() and understand how to use them effectively in classes that you define. Speeding Up Text Processing in Python (Is Hard) – If you need to speed up string parsing and formatting in Python, you have many choices. This article covers the uses of Cython, mypyc, Rust, and PyPy and considers how to choose between them. reduce() - The Power of a Single Python Function – “While Python is not a pure functional programming language, you still can do a lot of functional programming in it. In fact, just one function - reduce() - can do most of it.” This article introduces you to reduce(). Ban 1+N in Django – The 1+N database anti-pattern is common: fetch some rows from the database then re-fetch specific rows to get all the items. An ORM can hide this away and make you fail to realize that it’s happening. This article discusses how to avoid this anti-pattern in Django. It also has an added meta-bonus: a link to the attempt to write the article with ChatGPT. Projects: Pooch: A Friend to Fetch Your Data Files workedon: Track Your Work From the Shell Additional Links: Python’s reduce(): From Functional to Pythonic Style – Real Python Episode #116: Exploring Functional Programming in Python With Bruce Eckel – The Real Python Podcast Lightning talk at PyCascades 2023 - Pooch: A friend to fetch your data files - YouTube Secure copy protocol - Wikipedia Level up your Python skills with our expert-led courses: Python's map() Function: Transforming Iterables Python Basics: Strings and String Methods Unicode in Python: Working With Character Encodings Support the podcast & join our community of Pythonistas
undefined
Apr 7, 2023 • 50min

Automate Processes and Distribute Python Tools With RPA and RCC

Are you exploring automation of your repetitive business tasks with Python? How are you going to share your helpful tools with co-workers? This week on the show, Sampo Ahokas from Robocorp is here to discuss robotic process automation (RPA) and distribution of these robots. Sampo is a co-founder and VP of engineering at Robocorp. We talk about using Robot Framework, an open-source RPA tool, to develop bots that implement your existing Python skills. Sampo shares example projects and additional resources for new users. We discuss the typical difficulties of sharing automation tools with a team and trying to avoid the dreaded “works on my machine” problem. Sampo describes how their group worked to develop a Conda-based tool for creating shareable packages and environments. Course Spotlight: Manipulating ZIP Files With Python In this video course, you’ll learn how to manipulate ZIP files using Python’s zipfile module from the standard library. Through hands-on examples, you’ll learn how to read, write, compress, and extract files from your ZIP files quickly. Topics: 00:00:00 – Introduction 00:02:25 – What is robotic process automation (RPA)? 00:03:55 – What do you mean by automation? 00:05:56 – Additional examples of RPA 00:07:41 – What is the RPA platform? 00:10:06 – What is the Robot Framework? 00:12:42 – Robocorp portal 00:14:09 – Python integration 00:17:06 – Sponsor: REVSYS 00:17:56 – Distribution with RCC 00:20:24 – Why does the system use conda under the hood? 00:24:12 – What hurdles did you face creating RCC? 00:27:51 – Steps for the end user 00:30:52 – Making the project open source 00:35:20 – Video Course Spotlight 00:36:42 – Tips for someone starting with automation 00:42:17 – Integration with VSCode 00:44:18 – Intelligent document processing (IDP) 00:45:36 – What are you excited about in the world of Python? 00:47:46 – What do you want to learn next? 00:48:13 – How can people follow the project online? 00:48:46 – Thanks and goodbye Show Links: Open Source RPA - Intelligent Automation Software - Robocorp What is RPA? A breakdown of RPA and its benefits - Robocorp Robocorp Portal RPA Documentation, Training Courses, Certificates - Robocorp documentation rpaframework: Collection of open-source libraries and tools for Robotic Process Automation (RPA), designed to be used with both Robot Framework and Python rcc: RCC is a set of tooling that allows you to create, manage, and distribute Python-based self-contained automation packages - or ‘robots’ as we call them. Conda - documentation QuantStack micromamba - documentation Low-code RPA Development Solution | Automation Studio - Robocorp Bolster IDP With Robotic Process Automation - DZone Visual Studio Code - Code Editing. Redefined Welcome to LangChain - 🦜🔗 LangChain 0.0.131 Sampo Ahokas - LinkedIn Robocorp (@RobocorpInc) - Twitter Community for Software Robot Developers RPA Resources, White Papers and Case Studies - Robocorp Level up your Python skills with our expert-led courses: Reading and Writing Files in Python Testing Your Code With pytest Manipulating ZIP Files With Python Support the podcast & join our community of Pythonistas
undefined
Mar 31, 2023 • 1h 1min

Evaluating Python Packages & Celebrating 20 Years of PyCon US

Have you ever installed a Python package without knowing anything about it? What best practices should you employ to ensure the quality of your next package installation? Christopher Trudeau is back this week, bringing another batch of PyCoder’s Weekly articles and projects. We also have Python Software Foundation executive director, Deb Nicholson, to share details about PyCon US 2023. We cover a recent Real Python tutorial by Philipp Acsany on evaluating the quality of Python packages. The piece provides a tool kit for researching the traits, history, software license, and current condition of external Python packages. We also discuss the techniques that we personally use before selecting a package for our Python projects. We share several other articles and projects from the Python community, with topics such as the underlying structure of virtual environments, the overhead of Python asyncio tasks, documentation for Python projects with Sphinx and Read the Docs, a project for creating argparse boilerplate, and a way to generate seemingly realistic fake numbers using Benford’s law. Deb Nicholson is also here to talk about the 20th anniversary of PyCon US, hosted in Salt Lake City. We dig into the details of the upcoming conference, including keynote speakers, tutorials, scheduled talks, and improvements to the hybrid online experience. Course Spotlight: Documenting Python Projects With Sphinx and Read the Docs In this video series, you’ll create project documentation from scratch using Sphinx, the de facto standard for Python. You’ll also hook your code repository up to Read The Docs to automatically build and publish your code documentation. Topics: 00:00:00 – Introduction 00:02:46 – How to Evaluate the Quality of Python Packages 00:11:35 – Overhead of Python asyncio Tasks 00:14:53 – Sponsor: Courier 00:15:37 – How Virtual Environments Work 00:23:48 – Documenting Python Projects With Sphinx and Read the Docs 00:28:29 – duckargs: Code Generator for argparse Boilerplate 00:30:46 – Video Course Spotlight 00:32:04 – Are Those Numbers Realistic or Fake? Try Using Benford’s Law 00:34:37 – Introduction for Deb Nicholson 00:36:33 – What is your role with PyCon US? 00:37:28 – Hybrid conference and dates 00:39:07 – Tutorials 00:40:30 – Education Summit and Typing Summit 00:42:06 – Keynote speakers 00:42:57 – Lightning talks, posters, and job fair 00:45:04 – 20th anniversary of PyCon US 00:46:56 – Resources for proposals and talks 00:49:22 – Previous podcast guests and talks 00:51:26 – Mentored sprints for diverse beginners 00:53:12 – PyLadies auction 00:54:29 – COVID policy 00:56:50 – What are you excited about in the world of Python? 00:58:07 – What do you want to learn next? 00:59:24 – How to follow the PSF and PyCon US? 00:59:55 – Thanks and goodbye Show Links: How to Evaluate the Quality of Python Packages – Just like you shouldn’t download any file from the Internet, you shouldn’t install third-party Python packages without evaluating them first. This tutorial will give you the tool set to evaluate the quality of external Python packages before you incorporate them into your Python projects. Overhead of Python Asyncio Tasks – The Textual library uses a lot of asyncio tasks. In order to determine whether to spend time optimizing them, Will measured the cost of creating asyncio tasks. TLDR; optimize something else. This article also spawned a conversation on Hacker News. How Virtual Environments Work – This article attempts to demystify virtual environments, specifically why they exist and how they work. It even delves into why Brett is heading down this alley and how running into challenges with cross-platform tools has prompted the creation of microvenv. Documenting Python Projects With Sphinx and Read the Docs – In this video series, you’ll create project documentation from scratch using Sphinx, the de facto standard for Python. You’ll also hook your code repository up to Read The Docs to automatically build and publish your code documentation. Projects: duckargs: Code Generator for argparse Boilerplate Are Those Numbers Realistic or Fake? Try Using Benford’s Law – How can you tell whether a set of figures is trustworthy? It’s not always simple, but Benford’s Law gives you one way to find out. There’s even a Python Package to help you check: randalyze. PyCon US 2023 Links: Welcome to PyCon US 2023 Python Software Foundation Registration Information - PyCon US 2023 Talks Schedule - PyCon US 2023 Tutorials Schedule - PyCon US 2023 Education Summit - PyCon US 2023 PyCon US Stories Slideshow Proposal Guidelines - PyCon US 2023 PyLadies Auction - PyCon US 2023 Volunteering - PyCon US 2023 Additional Links: Libraries.io - The Open Source Discovery Service Licenses - Choose a License Python Virtual Environments: A Primer – Real Python EU Cyber Resilience Act - Shaping Europe’s digital future Python Software Foundation News: Where is the PSF? Signup for the Python Software Foundation Newsletter The Boston Python User Group (Cambridge, MA) - Meetup PyLadies – Women Who Love Coding in Python Level up your Python skills with our expert-led courses: Building Python Project Documentation With MkDocs Documenting Python Projects With Sphinx and Read the Docs Documenting Code in Python Support the podcast & join our community of Pythonistas
undefined
8 snips
Mar 24, 2023 • 1h 2min

Lessons Learned From Four Years Programming With Python

What are the core lessons you’ve learned along your Python development journey? What are key takeaways you would share with new users of the language? This week on the show, Duarte Oliveira e Carmo is here to discuss his recent talk, “Four Years of Python.” Duarte works at the crossroads of machine learning, data science, and software engineering. He began using Python in his graduate studies and never looked back. In 2021, he wrote a blog post about some of the valuable lessons he’s learned. Then he decided the lessons and concepts in the post might make a good conference talk. We cover the steps in his process of crafting the presentation, practicing it at a smaller conference, and finally presenting it at PyCon Italia last year. We also dig into the four major themes of the talk. Along the way, we share a collection of resources to help you continue learning on your Python journey. Course Spotlight: Building a URL Shortener With FastAPI and Python In this video course, you’ll build an app to create and manage shortened URLs. Your Python URL shortener can receive a full target URL and return a shortened URL. You’ll also use the automatically created documentation of FastAPI to try out your API endpoints. Topics: 00:00:00 – Introduction 00:02:38 – Four years of Python 00:04:18 – Why did you create a blog? 00:06:19 – A singular vs wide focus for the blog 00:09:19 – Pitching the talk to conferences 00:13:02 – Resources for preparing your talk 00:16:03 – What was your programming and Python background? 00:19:00 – Sponsor: InfluxData 00:19:47 – Reading is better than Googling 00:26:23 – What are some of your favorite docs? 00:28:48 – Thoughts on GPT and Copilot 00:31:45 – Keep it stupid simple 00:36:07 – What’s extensible code? 00:38:29 – Video Course Spotlight 00:39:54 – Learning testing techniques & testing data science code 00:46:05 – Continuous learning 00:51:46 – What do you use for RSS? 00:53:06 – Resources for machine learning 00:57:20 – What are you excited about in the world of Python? 00:58:57 – What do you want to learn next? 01:00:55 – How can people follow the work you do? 01:01:20 – Thanks and goodbye Show Links: Four years of Python - Duarte O.Carmo Four years of Python - Duarte Carmo - YouTube Practices of the Python Pro Pelican 4.8.0 “One for Them, One for Me” - Blank Check Movies From Famous Directors PyData NumFOCUS: A Nonprofit Supporting Open Code for Better Science Proposing a Talk - PyCon US 2023 pandas documentation - pandas 1.5.3 documentation scikit-learn 1.2.2 - User guide - documentation FastAPI - Tutorial - User Guide Using FastAPI to Build Python Web APIs - Real Python Python 3.11.2 Documentation Kindle Highlights Newsletter Reeder 5 Welcome to Feedly Normconf: The Normcore Tech Conference Tech Blog - ★❤✰ Vicki Boykis ★❤✰ Sebastian Raschka - Blog Blog of a data person. - koaning.io Machine Learning Design Patterns - Book The Practical AI Podcast - Changelog tidytuesday: Official repo for the #tidytuesday project PyCon.DE & PyData Berlin, 2023 - PyConDE & PyData Berlin 2023 PyCon Italia - 2023 ruff - PyPI Effective Python › The Book: Second Edition Episode #3: Effective Python and Python at Google Scale - The Real Python Podcast Duarte O.Carmo Talks - Duarte O.Carmo Duarte O.Carmo - LinkedIn Level up your Python skills with our expert-led courses: Python REST APIs With FastAPI Splitting Datasets With scikit-learn and train_test_split() Building a URL Shortener With FastAPI and Python Support the podcast & join our community of Pythonistas

The AI-powered Podcast Player

Save insights by tapping your headphones, chat with episodes, discover the best highlights - and more!
App store bannerPlay store banner
Get the app