I was helping a friend move an older, 300 pound HD TV recently. Here are some things that happened and what I think you can learn from them about collaboration on software projects (or any collaborative project for that matter):
We had a large trailer that was much bigger than needed for the TV. We filled up the space by putting a shelf and a closet on there first. Later we pushed the TV up against those things to stabilize it on the trailer. Lesson: You need to think about a little bit of scaffolding/infrastructure before you start the real work.
We couldn’t find the rope we needed to tie everything down for the drive, so we had to go buy some half way through the process. Lesson: Sometimes you need to take a detour to get all the tools you need to do the job. You may not have all the tools you need when you start out.
There were only two of us to get the TV out of the house and on to the trailer. We had to get across two sets of stairs and lift the thing up onto the trailer by ourselves. Lesson: The beginning of a project can be challenging if you don’t have quite enough people.
We lifted the TV up onto the trailer by ourselves once we had rolled it out from the house. It was only just manageable, but we “lucked out”. We tied everything down with the rope we had bought.
During the drive it looked like the TV was going to roll off the trailer a couple of times, even though it was tied down well. We had to slow down in the curves to make sure nothing went wrong. Lesson: Adjust your strategy as you encounter changes in your project or the terrain you find yourself in. Sometimes you need to slow down in order to “get there”.
When we got to the destination, we realized we wouldn’t be able to lift the TV down from the trailer with just two people (by now our arms were more worn out). Lesson: Stop and re-evaluate your progress and strategy from time to time.
My friend had arranged for another helping hand, who arrived after we did some other jobs of moving things around. After the arrival of the third helper (and a lunch break), we went about discussing how to get the TV down without any of us breaking our backs. Lesson: Be prepared to ask for more help if you find the job too big. There’s no point in working so hard that you can’t work anymore tomorrow. Eat and relax together.
During the discussion of how to get the TV down, we explored several tactics, and changed our plan for lifting several times. Lesson: Get together and talk things over when you’re not sure how to solve the problem.
Our final approach involved lifting half of the TV down and setting the edge down on the ground, leaving one end on the ground and the other on the trailer. It looked a bit like this:
We were pretty sure we’d be unable to lift the other end down, since that would have involved lifting both ends to move the TV clear of the trailer. We were stuck for a while. Then one of us suggested instead of trying to lift both ends and move the TV away from the trailer, that we just lift the end that was still supported by the trailer and roll the trailer out from under it. Then we could lower the other end without having to lift both ends. Lesson: You never know who may contribute an idea that solves a problem the rest of the team can’t figure out, even when the solution is pretty much right in front of them.