Reliably Broken
Notes on Radmind's checksum
It would be nice to do a pure-Python implementation of Radmind’s fsdiff output for watchedinstall, which consists of several white-space separated fields describing the filename’s attributes and an optional checksum for the file.
January 1, 2010
Merry Christmas
Thank you to the varied shop staff in London this past week for being without exception polite, enthusiastic and helpful when I asked for help. Especially the girl in HMV Bond Street who spelt Zappa as “zapper” - she was cute. It made tedious shopping joyful.
December 23, 2009
Context managers
I was re-writing the exellent watchedinstall tool and needed to simplify a particularly gnarly chunk of code that required three sub-proceses to be started and then killed after invoking another process. It occurred to me I could make these into context managers.
December 20, 2009
Snow Leopard: a reactionary writes
Things I like about Mac OS X version 10.6: (Mac OS X 10.6 is also known as Snow Leopard, although I dislike Apple’s use of the operating system codename in their publicity material because it leads to conversations where people talk about “Leopard” and “Tiger” and one has to stop for a second to translate those to actual operating system versions and no-one is ever going to refer to Mac OS X 10.3 as Panther these days, let alone 10.2 being Jagwire or heaven forbid Puma and Cheetah. What are the chances I’ll have to look up the codename for 10.5 by the time we reach 10.10? Version numbers are not so evocative but are less confusing than codenames. This doesn’t mean I will stop naming hard disks after Mac OS codenames - my desktop has Veronica, Gershwin, Harmony and Sonata connected at the moment, with Copland and Pink sitting on the shelf as appropriate…)
December 20, 2009
Serving custom Django admin media in development
I’ve just discovered Django’s development server always serves admin media. This is tremendously useful because it means you don’t need to configure a static serve view in your project urls.py during development.
December 6, 2009
I am very bad at writing tests
… but I think I might be getting a little better. At least these days when I am writing some script (almost certainly in Python) I start out by intending to write tests. I usually fail because I haven’t learnt to think in terms of writing code that can be easily tested.
November 22, 2009
The hidden depths of Adobe CS4
Adobe’s installers and updaters for the Creative Suite are amazingly bad. The updaters actually create a hidden directory /Applications/.AdobePatchFiles and store what I assume are the old versions of the files that get updated. Almost a gigabyte of data on my system!
November 12, 2009
Crazy Acrobat installers love Python
Looking through the updaters for Adobe Acrobat 9 for Mac I came across a bunch of scripts written in Python. My favourte was called FindAndKill.py:
November 9, 2009
Migrating a Filemaker database to Django
At work we have several Filemaker Pro databases. I have been slowly working through these, converting them to Web-based applications using the Django framework. My primary motive is to replace an overly-complicated Filemaker setup running on four Macs with a single 2U rack-mounted server running Apache on FreeBSD.
November 7, 2009
Network users and Mac 10.5 archive and install
When upgrading a Mac from Mac OS X 10.4 (Tiger) to 10.5 (Leopard), remember that network accounts are not included if you do an archive and install and choose to migrate existing users. If a network account had its home folder at /Users/jbloggs then it will have been moved to /Previous Systems.localized/2009-11-06_0346/Users/jbloggs (although the date portion will be the date that you did your install).
November 6, 2009