I’ve just upgraded this server to use the latest version of Drupal.
Please let me know if you notice any glitches!
Recently, I’ve been trying to convince my colleagues to make more use of wikis and forums, rather than writing word documents and having face to face convesions about them.
This, perhaps not surprisingly, has met with a range of reactions from amusement to confusion to derision!
Why the hell, people want to know, are you engaged in a heated debate (read flame war) on the forums, with the bloke who sits next to you?
Lest you get the wrong idea, let me say quite categorically that I’m all for face to face interaction - in fact I reckon we could do with a bit more of it on my current project.
The problem with face to face, though (at least until technology catches up with us) is that there is no permanent record of what was said. Making a decision is all very well in the here and now, but what happens in six months time when we are sitting round scratching our heads and asking ‘how the hell did we get here?’. What happens when I get run over by a bus and some other poor sod has to pick up where I left off?
Yes I can look at the design document (we do have such things!), but most of the time it represents the start of the discussion, not the end. The design usually sparks a conversation, or a gradual process of discovery, and that’s what I want to capture.
I really think that wikis and forums can help. Wikis, because they lower the barrier to revision of the design documents, so that there is more chance that the current design document reflects the reality of the project. Forums, because they record that all important discussion and the decisions that got us to where we are.
Yes using such systems can be a pain in the arse, and yes it can often be easier to have a one minute face-to-face convesation. It’s also easier to hack the code, not bother with design, and ignore the coding standards. Good coders, however, eventually learn the true value of such easy fixes!
There's an interesting tension in programming teams, between having too much management and not enough.
Anarchie doesn't really work when you are trying to build a complex system, and it takes an exceptionally talented and well balanced group of programmers to spontaneously form themselves into a productive, non hierarchical group. Not for nothing has managing programmers been likened to herding cats...
So ok, loath though we are to admit it, we do need to be managed. But hierarchy, in itself, isn't management. Standards, procedures, methodologies, are not management. Dictat from on high isn't management.
Sure, it helps to be organised. Of course, having a common approach is important. Certainly, splitting a big problem into smaller ones, a large team into smaller units, is a sensible approach in all walks of life.
The glue, however, the key ingredient, the thing that holds it all together, is communication. For me, promoting and enabling good communication is the true role of the manager. Helping to refine the different ideas, resolve conflicting ideas, and forge a common vision is important. Dissemenating that vision to the team, keeping it alive and evolving, is vital.
technorati tags: programming, management
One thing that really annoys me these days is applications which dont support automatic updating.
If you've written code to check for new versions (not exactly hard these day), not bothering to go the extra step and write the code that will download the new version for your user is just annoying. Even writing some extra code to optionally install the new version and restart it isn't exactly rocket science. Grrrr...
I’m posting this with Flock, which looks like a rather interesting browser… I think I’ll make it my default for a while.