Hello

I'm David Winterbottom, a programming polyglot living in London.

I work at Tangent Labs, a digital agency, writing applications in python, django and friends.

I spend most of my free time hacking. I run commandlinefu.com and am the author of the e-commerce framework django-oscar amongst other things.

I used to be a mathematician; I have a PhD in Mathematics from the University of Nottingham and an associated interest in cryptic crosswords, chess and playing devil's advocate.

More »

Writing

Saturday, 5 May 2012
Django, Nginx, WSGI and encoded slashes

Encoded slashes have a hard time getting through to Django

Thursday, 19 April 2012
purl - immutable URL objects for Python

An immutable URL class designed for easy inspection and manipulation

Thursday, 12 April 2012
Embedding HTML in Django messages

Using extra_tags to flag up HTML-safe messages

Sunday, 1 April 2012
Wednesday, 21 March 2012
How to reload Django's URL config

A rare sighting of the reload function in the wild

All writing »

Thinking

8 hours, 51 minutes ago
First beta of django-oscar 0.2 released for testing: http://t.co/75ilnT3d
1 day ago
Note that the draft copy for django-oscar was not serious. No sane person would use "synergy", "rockstar" and "weasel" in the same sentence
1 day, 5 hours ago
Draft copy for marketing postcard for django-oscar: https://t.co/vxHM4QEi - still needs some polish
1 day, 22 hours ago
Cobbled together a potentially useful library for Celery users: django-async-messages https://t.co/qf8uU2pb #django
2 days, 1 hour ago
Can evolution explain why so many men's beards are ginger?
3 days, 5 hours ago
Released purl 0.4 - see https://t.co/xB1brPCw
4 days ago
After watching Game of Thrones, I'm going to start using 'moons' for all estimates. Eg: "that's a 3-moon project"
1 week, 1 day ago
Just released v0.3 of django-oscar-datacash
1 week, 2 days ago
Getting back into french house music - first stop: Kojak http://t.co/DXiY4tiv
1 week, 2 days ago
Level 1: write tests. Level 2: write readable tests Level 3: write readable, fast tests
@codeinthehole »

Hacking

2 hours, 30 minutes ago
codeinthehole pushed to releases/0.2 at tangentlabs/django-oscar
2 hours, 39 minutes ago
codeinthehole pushed to releases/0.2 at tangentlabs/django-oscar
7 hours, 35 minutes ago
codeinthehole pushed to releases/0.2 at tangentlabs/django-oscar
7 hours, 59 minutes ago
codeinthehole pushed to master at tangentlabs/django-oscar
8 hours, 4 minutes ago
codeinthehole pushed to releases/0.2 at tangentlabs/django-oscar
8 hours, 25 minutes ago
codeinthehole pushed to releases/0.2 at tangentlabs/django-oscar
8 hours, 26 minutes ago
codeinthehole pushed to releases/0.2 at tangentlabs/django-oscar
8 hours, 44 minutes ago
codeinthehole pushed to releases/0.2 at tangentlabs/django-oscar
github.com/codeinthehole »

Selected projects

A few spare-time projects I've worked on: