Python Async, Scrum Metrics, and Pattern Matching
·31m 30s
Shared point
–
Overview of Episode 188
In this episode, the hosts delve into a variety of topics ranging from asynchronous programming tools to unconventional ways of managing team dynamics, wrapping up with updates on upcoming Python 3.10 features and automation tools.
Asynchronous Programming with Unsync
- Introduction to Unsync, a library designed to unify threading, multiprocessing, and async/await into a single, intuitive API.
- Discussed an article illustrating a trading bot example where Unsync was used to improve performance despite not fully utilizing asynchronous methods in the initial implementation.
- The hosts noted the importance of understanding how external system limitations, rather than just code structure, define achievable performance gains.
Scrum Estimation: The Fruit Salad Scale
- Exploration of a creative Scrum estimation method using fruit to represent task complexity:
- Grape: Trivial, quick task.
- Apple: Standard effort.
- Cherry: Easy, but with hidden complexities (pits).
- Pineapple: Difficult and messy to manage.
- Watermelon: Highly complex, large-scale, and unknown effort.
- Added context regarding tomatoes (unknown status) and avocados (urgent, perishable) to better categorize project uncertainty.
Education and Language Features
- Math to Code: A project showcasing a beautiful way to learn coding mathematics using NumPy, powered by modern web technologies like Sculpt and Next.js.
- PEP 622 (Structural Pattern Matching): A deep dive into the proposed match-case statement for Python 3.10, which aims to provide a more robust alternative to traditional switch statements by supporting type, class, sequence, and mapping patterns.
DevOps and Automation Tools
- AWS CodeArtifact: A managed package management service that provides a central repository for internal packages, with support for Pip, Twine, Maven, and npm.
- Invoke: A Python-based task runner that serves as a modern, cross-platform alternative to traditional make files, allowing users to define build and deployment tasks using pure Python code.
"Hi Darlene, how was your school day? --verbose. I totally wish I had verbose flags on my kids sometimes."