I am a Computer Designer/Developer, a creator of components or entire systems. I see how computer programmes are developed and I shudder. The lack of forethought, the rampant copy coding... it is enough to make any programme collapse under its own weight of poor software practices.