Fairly Good Practices


“Maybe we would be better off if we developed a list of ‘fairly good’ practices...”
- Jim Highsmith



Wall Coding

Sharing a computer is an experience. In a world filled with cubicles and monitors it's amazing how many times someone has to stare over someone else's shoulder. And the moment 3 people need to get together and look over some code, suddenly we're back to printouts and meeting rooms. There simply is no productive way to pack 3 people in a cube looking at a monitor.

And once you start doing agile development and pair programming you really recognise the benefit of a big monitor. And if you're like most companies, you have the largest monitor available, a big blank wall and a screen projector. It's just that most companies don't let the programmers use such a valuable item. People that can be trusted to maintain the software that keeps the company in business somehow can't be trusted with a simple peice of hardware.

High salary programmers working on a million dollar system and the tool they need is locked away in a storage room somewhere. Penny smart, pound foolish.

Once your company gets past that, getting a bunch of people together for a spike or to do a large code review or to just map something out and giving them a laptop and screen projector to do the work on is a great way of cutting development time down. People can come and go as they need. They're looking at the real product, not a printout. Actual changes are taking place instead of directions being scribbled in a margin in the hopes that changes are done properly later. And when the meeting is over, everyone knows where the product is act. The action items aren't just noted, they're completed.

And that's a productive meeting.