let me tell you a story about how work went today.
last week, in a mad and desperate panic, i was adding extra features to program A. it is a program for doing complex searches, and it takes instructions, so it knows what to do. it is needed very urgently.
Wednesday last week the powers that be decided program A's instructions were to complex to test, so a whole new program, program B, would be written for the job.
this was already mostly written, so this didnt sound to bad an idea.
well, i get into work today, and they are trying to test program B. however, it does a complex thing, so the only way to test it is to write the instructions for program A and see if it produces the same output, since program A has already been tested.
what this means is, instead of just doing program A, which was to complex, we need to do both program A and program B, cos this is, apprently, simpler
oh, it gets better!
5 people have been assigned to do this job, cos it is so urgent, so they all need to start writing instructions for program A. only one of them really knows how to do this! one of them can hardly use UNIX, let alone vim, the text editor having only just joined the company last week!
so, it has now reached the point where program B requires that people who really arent qualified to produce the complex rules for program A have to do this, in order to test program B.
the people who know how to use program A, me and one other could have produced the "far to complex" rules for program A by now if we had continued on our origional plan.
instead i spent all day bouncing from desk to desk giving all these new people a major "in at the deep end" training course on how to write rules for program A.
it doesnt help when 2 of them dont seem to be very good at algebra...