[Previously published at the now defunct MetaBrite Dev Blog.]
At MetaBrite, we believe in the power of pair programming.
We find that pairing helps for collaboration on difficult tasks,
for exploring new areas, for knowledge transfer,
and for spurring each other to better solutions.
I find it to be fun, though it can also be exhausting.
It's not ideal for all our work—there's no value in tying up two developers on some rote task that both know well.
Last week, I rebuilt our primary pairing workstation.
In its previous incarnation, we had an account for each developer.
Each of us had set up some personal preferences in our own …continue.
Scrum and Agile revolve around sprints.
At my previous employer, I spent two years working in one-week sprints.
At my current job, I've spent another two years working in four-week sprints.
Each has their own rhythm.
We ran the one-week sprint from Wednesday to the following Tuesday.
Wednesday morning, we'd demo the previous week's work and we'd plan,
drawing up a series of task cards, measured in hours.
With a one-week horizon, you couldn't go very far off track.
You can't get a huge amount done in a week either.
You need to have a bigger picture in mind
that transcends several weeks.
We released every couple of months.
On the first …continue.
There's a flamefest going on at the moment between
Robert "Uncle Bob" Martin and Joel Spolsky
over the value of Test-Driven Design and the SOLID principles.
I find TDD valuable and I'm reading Martin's Clean Code at present.
Poking around in the links led me to Uncle Bob's Bowling Game Kata,
a Powerpoint deck demonstrating using TDD to
score a bowling game.
Ron Jeffries has a very ugly OO implementation
and a cleaner procedural version of the Bowling Game.
Digging around in the archives of his XP Magazine
turns up many other ruminations on the Bowling Game
At Atlas, I was loaned to one group that used the Bowling Game
for a …continue.