Contractors spill the dirty secret
You might be secretly embarrassed when you fail to install the latest video driver or can't download music and get it to play. You might have been having hushed discussions with your partner about wasting time with digital photography: "Film was so much easier to use," you whisper.
Why is it that everything from booking trains online, to keeping your virus software updated seems to promise speed and efficiency, but deliver frustration and irritation? Why, after half a century of software development, and an explosion of desktop power, do you feel foolish in front of a computer when the rest of the world seems to click and link with the abandonment of honey bees in a field of wild flowers?
Well it turns out you are not alone with your sense of inadequacy. Many software experts and professional IT contractors harbour similar feelings. Difficulties with computers are not just your problem, they are the dirty secret of the software industry.
Jane Marple, contract software test manager, divulges the paranoia at the heart of the matter, "There is never anything wrong with software. There are built in 'design features' which the layman can't possibly understand."
We are afraid we are stupid. We know computer power has risen a hundred-fold and yet we achieve little more than we did ten years ago, despite all the "new" stuff everyone is talking about.
Robert Wallace, veteran contract developer explains, "We've taken advantage of the greater computer power not to improve performance or make the software better for the user, but to use improved but slower interpreted languages, add distributed components, link to external services, and tinker with whizzy features."
Features, of course, have "box appeal." With more features, a product appears competitive to potential purchasers, but in consequence, recent machine improvements have been swallowed by bulkier, slower programs. Users must upgrade simply to stay still.
Much feature creep is accounted for by software manufacturers attempting to do too much for the user, but for many, their attempts at "idiot proofing" are ham fisted.
Special criticism is reserved for Apple's iTunes program. DaveB, writing on the CUK bulletin board says, "All it does is stuff all the tracks together in alphabetical order making it impossible to select a specific album or a specific artist quickly and easily when you want to."
But, CUK boarder, TheMonkey explains the philosophy, "When you are using iTunes, you are knowingly relinquishing control over your music collection to a piece of software. You are intent on letting it deal with the boring stuff like managing files. According to iTunes, you should be interested in looking for music, playing it and enjoying it, not what happens to the file system."
He has a point. The user should be interested in the effects and benefits of the software, and not on how the effect is achieved.
But unfortunately for iTunes, this principal goes one stage further: we are interested in the music, not in what plays it, or what format it is in. The music is king, not the application.
Which takes the argument to an interesting point. If the music – the data – is the important bit, manufacturers of application software can only compete by adding features, the basic function of displaying or playing the data must be common to all competitors.
And when software manufacturers create features, they know they are add-ons and not the primary purpose of the software – products can be considered fit for purpose, even if none of the add-on features work.
"Profits come from shoddy programming," says developer AtW. "There are pretty much no good incentives to invest more money into better practices and testing. Heck, testing is often deemed as a barrier, rather than something that actually benefits the end users."
So getting the software perfect is not the priority; getting the feature publicised is the most important activity.
Would a company lie about which features are included? Probably not outright, but they would tell their developers to cut all corners to meet a deadline.
"Getting the thing out in the market is the primary goal of the bean counters – who generally only know that Java is a type of coffee and that C# is the next note up from C on the piano – regardless of the amount of testing achieved and the overall quality of the product," explains Marple.
And if getting to market is so important, the developers will take the easiest route: "Developers don't look at their task from a user point of view; they look from a technical one. What looks like a terrific chunk of code in principle may be a pain in the arse when the users get their hands on it," says bulletin boarder Mordac.
So next time an unexpected update snatches an hour of your valuable time, or you can't find your downloaded music in a mess of folders, just remember it's not your fault. Resign yourself to imperfection, be thankful for what does work, count slowly to ten and release a long, gut-curling scream along with everybody else.
William Knight


