Performance Reviews

I had an interesting conversation last night about that old bugbear, the annual performance review. No matter how many well-meaning attempts have been made with SMART targets or peer review systems, every annual review I've had or given during my professional career has gone something like this: Here are a »

The Sierra Adventure Codebase

We broke something this week. Well, I broke something, if you go by code authorship. It was supposed to be a bug fix, and we did everything by the book - pair-programmed the fix, did a code review, got our testers to do some QA, even went through the don't-really-believe-in-it-but-pick-your-battles »

Bias for action and agility

What has linked all of the high-performing teams and organisations I've worked for or with? That title is a bit of a clue: it's a bias for action. What this means is they believe the way to solve a problem or to improve things is to do something. A team »

Bad Team Leads and Responsible Adults

Does a team need a team lead? I've been thinking quite a bit about flat team structures over the past couple of weeks. As is often the case, it's recruitment-driven. I'm going to be blunt here: I've been really disappointed by the prospective tech leads I've been interviewing. This is »

Avoiding growth by accretion

Software has a tendency to grow by accretion - a gradual build-up of material causing what was a small and simple nucleus to become a large, complex object with many layers. It's the same mechanism by which planets form. A small clump of particles attracts other particles, and this new »

What my AI learnt on its holidays

I spent a bit of downtime recently playing with LSTMs and RNNs - Long Short-Term Memories and Recurrent Neural Networks. These are the kind of things that power automatic image tagging, recognition, and generating silly names for paint colours. As is usual for me, I spent most of my time »