Python Bytes is a weekly podcast hosted by Michael Kennedy and Brian Okken. The show is a short discussion on the headlines and noteworthy news in the Python, developer, and data science space.
#391 A weak episode
- Vendorize packages from PyPI
- A Guide to Python's Weak References Using weakref Module
- Making Time Speak
- How Should You Test Your Machine Learning Project? A Beginner’s Guide
- Extras
- Joke
About the show
Sponsored by Code Comments, an original podcast from RedHat: pythonbytes.fm/code-comments
Connect with the hosts
- Michael: @mkennedy@fosstodon.org
- Brian: @brianokken@fosstodon.org
- Show: @pythonbytes@fosstodon.org
Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Tuesdays at 10am PT. Older video versions available there too.
Finally, if you want an artisanal, hand-crafted digest of every week of the show notes in email form? Add your name and email to our friends of the show list, we'll never share it.
Michael #1: Vendorize packages from PyPI
- Allows pure-Python dependencies to be vendorized: that is, the Python source of the dependency is copied into your own package.
- Best used for small, pure-Python dependencies
Brian #2: A Guide to Python's Weak References Using weakref Module
- Martin Heinz
- Very cool discussion of weakref
- Quick garbage collection intro, and how references and weak references are used.
- Using weak references to build data structures.
- Example of two kinds of trees
- Implementing the Observer pattern
- How logging and OrderedDict use weak references
Michael #3: Making Time Speak
- by Prayson, a former guest and friend of the show
- Translating time into human-friendly spoken expressions
- Example: clock("11:15") # 'quarter past eleven'
- Features
- Convert time into spoken expressions in various languages.
- Easy-to-use API with a simple and intuitive design.
- Pure Python implementation with no external dependencies.
- Extensible architecture for adding support for additional languages using the plugin design pattern.
Brian #4: How Should You Test Your Machine Learning Project? A Beginner’s Guide
- François Porcher
- Using pytest and pytest-cov for testing machine learning projects
- Lots of pieces can and should be tested just as normal functions.
- Example of testing a clean_text(text: str) -> str function
- Test larger chunks with canned input and expected output.
- Example test_tokenize_text()
- Using fixtures for larger reusable components in testing
- Example fixture: bert_tokenizer() with pretrained data
- Checking coverage
Extras
Michael:
- Twilio Authy Hack
- Google Authenticator is the only option? Really?
- Bitwarden to the rescue
- Requires (?) an update to their app, whose release notes (v26.1.0) only say “Bug fixes”
- Introducing Docs in Proton Drive
- This is what I called on Mozilla to do in “Unsolicited Advice for Mozilla and Firefox” But Proton got there first
- Early bird ending for Code in a Castle course
Joke: I Lied