Cutting edge debugging

Posted on Fri 11 July 2014 in misc

One of the great pleasures of advancing in one’s craft is the thrill of solving newer, more difficult problems. In the course of my work, I frequently encounter many bugs which appear at first glance to be impossible. Not just impossible to solve, but intrinsically impossible. It’s as …

Continue reading

conda and binstar: initial experiences

Posted on Tue 08 July 2014 in misc

A while ago my friend teh recommended that I use conda for Python package management, because of its intrinsic superiority to pip & virtualenv. I’m no fan of either, and teh generally has pretty good taste, so I thought I’d check it out.

I haven’t formed an overall …

Continue reading

Migrated to Pelican

Posted on Sat 05 July 2014 in misc • Tagged with pelican, blog now powered by Pelican

Continue reading

Deliberately being naughty

Posted on Mon 29 April 2013 in misc

I don’t get a whole lot of time to hack on things outside of work. Maybe one or two slots of about two hours in a good week. What I want is for that time to be fun, creative, and hopefully useful for others.

When I do get such …

Continue reading

testtools moved to Github

Posted on Wed 13 February 2013 in misc • Tagged with testtools

Those who closely follow testtools development will notice something unusual in the 0.9.28 release: we now host the code on Github rather than on Launchpad.

There are a few reasons behind the switch, but the biggest one is that the ecosystem of tools and services around Git & Github …

Continue reading

Are single letter variable names evil?

Posted on Mon 11 February 2013 in misc

A colleague recently asked the question, “Are single letter variable names evil?”. He was trolling, and I kind of knew it, but gosh, what an excuse to rant about code clarity! My comments ended up being multiple pages long, so taking one of Mary Gardiner‘s suggestions to heart (although …

Continue reading

Getting set up with Twisted development

Posted on Sat 15 December 2012 in misc

I haven’t contributed much to Twisted recently, but today I’d really like to get my new Deferred documentation ready for review.

To my knowledge, the only sensible way to actually work on Twisted code is using Combinator. With it, I can make branches, commit to those branches, merge …

Continue reading

What’s wrong with ORMs

Posted on Tue 20 November 2012 in misc

I was recently reading about F1, Google’s fault-tolerant distributed RDBMS and came across this neat little summary of what’s wrong with ORMs.

  1. Obscured database operations
  2. Serial reads
  3. Implicit traversal
*Obscured database operations* essentially means that when scanning code, you cannot easily tell which code is going to kick …

Continue reading

A Modest Success

Posted on Fri 09 November 2012 in misc

Over the last few months, James Westby and I have been working on automatic packaging. I want to talk today not about the thing itself but rather how we go about making it, because I think that we have got a fairly good process going.

Here’s what it looks …

Continue reading

Undistract me (redux)

Posted on Thu 04 October 2012 in misc

In January, I told you all about a terminal hack to help me recover from the inevitable distraction that comes when I run commands that take a while to run (for me, mostly test suites).

I’ve been using the hack since then, and it has given me a great …

Continue reading

Rigor mortis?

Posted on Fri 31 August 2012 in misc

I’ve been on a bit of a sanity bender recently: science, logic, evidence, experimentation, clarity and things like that. Here’s a short list of some of the things I’ve been reading:

Continue reading

testtools: history and future

Posted on Sat 21 July 2012 in misc

Before I started testtools I was switching regularly between bzr, Launchpad and Twisted and was sick of one excellent testing innovation being available in one and not the other. I tried submitting some of the improvements to Python. They were either ignored or rejected.

Also, as the maintainer of Twisted …

Continue reading

Complexity and capability

Posted on Sat 21 July 2012 in misc

You might think that some people are better at understanding complexity than others, but relative to the sheer scale of the complexity that we can all create, we are all about the same.”

I think Rich Hickey said this. It’s true.

juju debug-hooks

Posted on Tue 26 June 2012 in misc

OK, I think I’ve figured it out.

juju debug-hooks replaces hooks for a service unit with an interactive terminal session. You run it, it launches tmux (which seems to be a thing like screen or byobu), and when a hook for that service unit runs, it won’t run …

Continue reading

Tricks for exploring new languages?

Posted on Mon 25 June 2012 in misc

Here’s my problem. There are a bunch of languages I want to explore more (Clojure, Haskell, Go). I’ve wanted to do this for some time. I haven’t done it. I’ve mentioned this before.

At it’s simplest and most fundamental, this comes down to poor self-management …

Continue reading

Further reflections on my first Juju charm

Posted on Fri 22 June 2012 in misc

Since I wrote the notes that appear in my previous post, I’ve had a chance to reflect further on my experience writing a Juju charm.

The thing is, even though the end result is very cool – I can just deploy this code as a new service whenever I want …

Continue reading

Unfiltered reflections on my first Juju charm

Posted on Fri 22 June 2012 in misc

I just finished up my first [Juju]( charm, designed to deploy the tiny and not-yet-useful [libdep-service](, which is going to become a micro-service used by [pkgme-service](, which exists to automatically package submissions by application developers to [developer.ubuntu …

Continue reading


Posted on Mon 28 May 2012 in misc

I’m back online after three weeks vacation. Purpose of said vacation was to get married and go on honeymoon. Only thing to say about that is: huge success. I’m very, very happy.

While I’ve been gone, Ubuntu has had its developer summit and decreed that Ubuntu 12 …

Continue reading

Local Juju

Posted on Fri 02 March 2012 in misc

I have a bit of a fetish for being able to hack offline. It’s becoming increasingly old-fashioned, I know, but I’d like to think that eventually it will become a quirky and charming eccentricity, such as one might find in a British amateur sleuth.

I wanted to get …

Continue reading

Bad Snake Joke

Posted on Sat 25 February 2012 in misc

Just between you and me, I’m getting a bit bored of writing Python all the time. It’s a good language: I can write code that’s functional or OO as the case may be; it has lots of libraries; it has Twisted, which is incredibly useful; it’s …

Continue reading