They were fired
A thread on the scalability of software leads to some storytelling.
- I have a story for you.
- I have a client, an insurance company based in Joburg. They need to send
- figures to their principal every month, so far so good. Their principal
- insurance company is way behind, technology wise, and is going through
- the "we need a proper system" phase that I sent my client through in 2003.
- So, a company was brought in by the principal.
- They specified a feed, consisting of lines with fixed length fields,
- with about 700 columns per row. Epic epic failure. They were fired.
- So, a second company was brought in by the principal.
- They specified a feed, this time it had an XSD! Fed the XSD through a
- code generator, we had an accurate feed. The client paid for it out of
- goodwill. For reasons unclear, this company didn't deliver although they
- started well. They were fired.
- So, a third company was brought in by the principal.
- This third company threw out absolutely everything, and specified a feed
- with pipe delimited fields. In ASCII. WTF???? It's two thousand and
- fsking nine forfsckssakes.
- I put my foot down.
- I sent a list of demands to the directors of the client, who passed it
- across to the directors of the principal, who passed it onto the third
- company, who made it clear in their response that they didn't know what
- they were doing, they're guaranteed to be fired, and they are wasting my
- client's time and money.
- I met in London recently with a representative of the principal to break
- the impasse, and set out my concerns. I fely sorry for the guy, he was a
- business person who had been lumped with the "computer problem", and was
- stuck between warring factions. The compromise was that on condition
- that they fixed outstanding issues in their spec, we would do the feed
- for the third time.
- News gets round to the third company, who have sent excuses, but no
- amended spec.
- And until I get the amended spec, no work will get done.
- The third company has made claims that they follow a software
- development life cycle, but they can't fix bugs in their spec. And
- because I am not going to leave the holes in their spec to cause errors
- in the feed, and in turn audits from the principal, I'm not budging
- until they fix it.