Tagged in


Pythonic Confessions

So, I have a confession to make.

Many years ago, I had an job interview with Canonical. This was, I think, my second interview. The first had gone well, and the second had been postponed because the original interviewer scheduled to talk to me kept forgetting.

Luckily, I got a …

Introduction to blocking and non-blocking code in MAAS


My friend and erstwhile colleague Gavin Panella has posted an article on how we handle(d) blocking and non-blocking code in MAAS, whilst playing within Django’s sandbox. It’s well worth a read if you’re finding yourself having to asynchronous work within a framework that doesn’t …

Inside the Sausage Factory

Yesterday, I saw a question over on Ask MetaFilter entited "How is the software sausage made?" and asking about different folks' software development methodologies and processes. I decided to share the way that things were done at Canonical, because that's where I learnt a lot of development best-practices (which I …

Farewell, Canonical

Truth be told, I’m not sure I ever thought I’d be writing this blog post. I’m leaving Canonical after seven-and-a-half amazing years, and going on to something new.

When I started at Canonical back in 2007 I was such a different engineer from the one I am …