Sunday, July 08, 2012

Why Soft Skills Matter

[Let me start by saying that I'm not an expert in this field, just someone who's had to learn the hard way why people are important in software projects.]

It's rare to hear of a new software project which is clearly doomed from the start, but I'm happy to make that call over SOLVE THE FILE FORMAT PROBLEM MONTH. It's rare for me to get to the end of a blog post and think "yeah? well screw you, buddy!", but Jason Scott's post provoked exactly that reaction.

Without getting into Meyers-Briggs typing or William Moulton Marston (he invented Wonder Woman, the polygraph "lie-detector", and wrote a book with the awesome title of Emotions of Normal People), the fact is that around 50% of the population will have a negative reaction to any new idea. They will focus on the potential problems, not the potential benefits. This doesn't make them bad people, it doesn't mean that they don't want it to succeed, it just means that they are keeping an eye out for trouble. Something which might actually be useful if you're about to run head-long into a minefield.

What you probably shouldn't do is tell all those people to "just get the fuck out now".

Nor should you declare that "The project doesn't need [50% of the entire programmer community], now or ever". Huge projects need to bring people together, and for that you need leadership capable of inspiring action, not driving away people because they don't immediately see your point of view. We have a communication problem here.

Tony Finch (@fanf) made the point that "If you want to get something done, there's no point wasting energy on nay-sayers". I agree with that. I much prefer to dive into writing code and let people worry about the design after it's working. But this task is far too large for any person or team to lone-wolf it. It explicitly relies on having a broad, critical mass of participants. Wikipedia, Linux and NaNoWriMo didn't happen just because someone said they were going to; they happened because a hell of a lot of people bought into the goals of the project.

Digital Archaeology is a cool field. Projects to save old machines are fascinating and a real labour of love. Geeks seem to love collecting and systematising (ugh!) things more than the population in general; maybe that's a stereotype, maybe it's true, but either way a project like this should be putting smiles on faces from San Francisco to Tokyo and from Moscow to Melbourne. Is it?

Maybe that has something to do with the official project wiki describing a large number of potentially-interested people as "whiners".

This should be something I want to be a part of. I love puzzles, I've reverse engineered file formats for fun (and occasionally profit), I have a bunch of old hardware and software, I'm a low-level coder more than capable of tracing my way through a disassembled program, and I have the 'archival instinct' to want to hoard a perfect collection.

But I don't want to participate. I have problems of my own to work on, and you've singularly failed to make me give a shit about yours.

So long. Best of luck. I'll go my way, you go yours. Hope it all works out... but I doubt it will.

- KoW

Labels: ,