Sixteen Years of Python Performance
I build and benchmarked 17 versions of Python against each other so that you don't have to. Let's compare the performance of every Python version from 2.6 all the way to almost-released 3.13. Spoiler, it's great!
Doctests & Metaclasses & Multiprocessing, Oh My!
I've been programming in Python for more than a decade, but it's only now that I have had to bring out the big guns: writing a metaclass.
RErename
My little bulk file renaming script. Inspired by the venerable rename Perl script, my version uses Python regular expressions and focuses on safety. That's not just important, it's super-duper important! Bulk renaming is dangerous enough, but add regular expressions into the mix and It's all too easy to shoot yourself in the foot!
Childrens' Game to Punish PCs
Snakes and ladders is a boring game. But just how boring, exactly? Is it possible to bore a computer so much that it self-destructs? Let's try it and find out...
Tidy Caseless Ordering in Django
Sorting by name in Django is a common admin annoyance. By default upper-case names come before lower-case ones because of their raw ASCII encodings. This isn't fun to try and explain to clients. For years I've ordered my models using a forced lower-case slug, but sometimes you need the big guns: database functions. Let's use that powerful ordering, while keeping our code nice and neat.
Term + hoes = Theorems
An alternade is one of those fun word puzzles that I enjoy solving by cheating, using wizardry rather than brain sweat.