6 digit OTP for Two Factor Auth (2FA) is brute-forceable in 3 days

The curse of scalable technology

Life on the diagonal — adventures in 2-D time

YAGNI exceptions

We need less powerful languages

Everything Is an X

Test smarter, not harder

Keyword-only arguments in Python

Wedding hacks - seating planner using simulated annealing (2013)

Why I’m Leaving Elm

Django’s Class-Based Views Were a Mistake (2012)

Why learning Haskell/Python makes you a worse programmer (2006)

Avoid Django's GenericForeignKey

A simple password-less, email-only login system

Why learning Haskell/Python makes you a worse programmer (2006)

We need less powerful languages

You can’t compare language features, only languages