4 tips for getting started with free-threaded Python

Until recently, Python threads ran without true parallelism, as threads yielded to each other for CPU-bound operations. The introduction of free-threaded or ‘no-GIL’ builds in Python 3.13 was one of the biggest architectural changes to the CPython interpreter since...

Database design tips for developers

It is a universal truth that everything in software eventually rots. Things slowly get worse. What starts out as cool and clean becomes “what the hell were they thinking” before you know it. But that doesn’t mean we sit back and let it happen. We should fight code rot...