Wed 28 May 2003
The hardest thing in life
Category : Commentary/hard.txt
The hardest thing in life is to get people to think. If you're a software developer or vendor, that's the one that will wear you down.
For example, I've described in the previous post about the user who wants the sun to rise from the east, and another who wants the sun to rise from the west, and they both refuse to budge. This happens all the time.
If you're an outside contractor, there's an added twist - you'll find both guys supporting each other's position with great enthusiasm. It's that old Asian feeling about "family and sticking together" kicking in - only now you're the outsider, so good luck with all that shit.
We can laugh about it when we get some distance from the memories. But believe me, it is no laughing matter because a lot of sofware projects fail. Not for technical reasons. But for a failure in project management.
I'll try to summarise the problems with software projects. One is, we're dealing with technology. And that makes people feel that they ought to be throwing around buzzwords so that they can sound like they're in the know. But I'm trying to explain that we can deal with the technology from a purely descriptive level and still get a lot of work done.
The second point leads from the first. Because people lack the confidence or even the awareness that you can visualise the system purely in terms of the data flows, they haven't build a mental framework they can use to think three or four steps into a problem. That's why it's so hard to make them see where their requirements collide with that of another party.
The problem is compounded by that peculiar Asian need to save face and look after your own family (whatever you define it to be).
So there's a gridlock you can only break with a lot of tact, doggedness, and (I daresay) idealism. You literally have to force people to face the trade-offs. There's a lot of incentive to just cop out, and go through the motions of building the system. After all, what do management know about technology? But, like they say, be sure your sins will find you out.
I don't want to make a mountain out of a molehill (to quote a phrase). But you can't build The Ultimate Business Machine if you cannot build the system to run it on. It's a problem that is hard to solve.