DiscoverPython Bytes#391 A weak episode
#391 A weak episode

#391 A weak episode

Update: 2024-07-091
Share

Description

Topics covered in this episode:


Watch on YouTube


About the show



Sponsored by Code Comments, an original podcast from RedHat: pythonbytes.fm/code-comments



Connect with the hosts





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:





Joke: I Lied

Comments 
00:00
00:00
x

0.5x

0.8x

1.0x

1.25x

1.5x

2.0x

3.0x

Sleep Timer

Off

End of Episode

5 Minutes

10 Minutes

15 Minutes

30 Minutes

45 Minutes

60 Minutes

120 Minutes

#391 A weak episode

#391 A weak episode

Michael Kennedy (@mkennedy)