attrs iv: Zero-overhead Frozen attrs Classes
attrs supports frozen classes. Frozen classes are cool for a multitude of reasons, but they're a tiny bit slower to instantiate compared to non-frozen classes. But there's a way to avoid this overhead and make frozen classes be the exact same speed as ordinary classes.
The Categories of Bugs in Python Apps
Say you're writing a Python program, of any kind but maybe a network service. You're likely to err (you're human, after all) and produce errors (bugs, defects) during this process. We can't control
Intro to cattrs 23.1.0
Instead of my usual Twitter and Fediverse threads, for this release of cattrs I figured I'd try something different. A blog post lets me describe the additions in more detail, provide context and
Algebraic Data Types in (typed) Python
By properly utilizing Algebraic Data Types (ADTs, not to be confused with abstract data types), you can transform certain types of invalid states from runtime errors into type-checking errors, making them an excellent
Python is two languages now, and that's actually great
Everyone doing Python nowadays is aware Python supports optional type hints, and has for some time now. This has created a small schism in the community, with some people being completely uninterested in