Skip to main content

When is a bug not a bug?

Is it a bug or a feature?
I spent a fair number of years at British Airways both programming myself and working with programmers. Arguably the most fascinating sociological aspect of the computer programming environment is the concept of the bug. The error in the code that makes it do the wrong thing. I might not be rich, but I could probably afford a pint of beer if I had 10p for every time I heard a conversation between programmer and user going a little like this:

User: 'There's a bug in this software. It does X and it should do Y.'
Programmer: 'Sorry, that's not a bug, it's a feature.'
User: '??!?'

I need to briefly dive into the origins of this word 'bug' before exploring the sociology. You will see it said that the word originated from the early days of computing. A (valve) computer failed and on investigation it was found by the early computer expert Grace Hopper that there was a large insect in the machine had caused a short circuit. The insect was stuck in the computer's log book with a write up that said there was a "bug" in the system. And so the term started to be used.

This would be a good story for the origin if the term hadn't been in use by engineers in Victorian times. While it probably did refer to some such incident in the dim and unrecorded past with a mechanical device, the early computing example was just making use of a term that already existed.

Meanwhile back at that programmer/user conversation - a bug is when a computer program does something it shouldn't because of an error in the code. A (bad) feature is when it does something the user doesn't want it to, but there is no actual error. The code is operating fine. It isn't making any logical errors. It's just that (say) it won't let you put more than nine passengers on a plane. Not much use in a system for calculating loads on a 747, but it is a feature, not a bug.

This all came back to me when I had an argument with the support department of a software company called Yabdab. (Boggle.) As a result of my move to Mac I've started re-writing my websites, as my old website software doesn't have a Mac version. I'm using a product called RapidWeaver, which has lots of bolt-ons called stacks. And I'm using a nice little stack from Yabdab called PaySnap that makes it easy to take payments on a website. With me so far? A big advantage of this over using Paypal direct, as I did previously is that it sets up a nice little shopping cart/trolley on your site and you only go off to Paypal to handle payment when all the items are in the cart. Excellent.
Hang on, that was £10.99 a minute ago...

I was implementing this on my Hymn CDs site, which has two versions, one operating in UK pounds, the other in US dollars. This is appreciated by US customers, who prefer to pay in their own currency - and why not?  But here's the thing. As far as I can see, Paysnap only sets up one shopping cart on a computer. If I put an item into the cart from the UK site, then go to the US site and add an item in dollars, then the first item is still in the cart - but its price has been switched from pounds to dollars. Put it in at £10 and it is now $10. A bargain.

Yabdab aren't interested in doing anything to fix this because as far as they are concerned it's a feature. So stuff stays in the cart? Not ideal, but hey. I argue, though, that because it crosses the line and makes an actual mistake (converting from pounds to dollars or vice versa by simply changing from £ to $) it's a bug. They still won't fix it - but I feel I have the moral high ground.

Top illustration from Wikipedia

Comments

Popular posts from this blog

Why I hate opera

If I'm honest, the title of this post is an exaggeration to make a point. I don't really hate opera. There are a couple of operas - notably Monteverdi's Incoranazione di Poppea and Purcell's Dido & Aeneas - that I quite like. But what I do find truly sickening is the reverence with which opera is treated, as if it were some particularly great art form. Nowhere was this more obvious than in ITV's 2010 gut-wrenchingly awful series Pop Star to Opera Star , where the likes of Alan Tichmarsh treated the real opera singers as if they were fragile pieces on Antiques Roadshow, and the music as if it were a gift of the gods. In my opinion - and I know not everyone agrees - opera is: Mediocre music Melodramatic plots Amateurishly hammy acting A forced and unpleasant singing style Ridiculously over-supported by public funds I won't even bother to go into any detail on the plots and the acting - this is just self-evident. But the other aspects need some exp...

Is 5x3 the same as 3x5?

The Internet has gone mildly bonkers over a child in America who was marked down in a test because when asked to work out 5x3 by repeated addition he/she used 5+5+5 instead of 3+3+3+3+3. Those who support the teacher say that 5x3 means 'five lots of 3' where the complainants say that 'times' is commutative (reversible) so the distinction is meaningless as 5x3 and 3x5 are indistinguishable. It's certainly true that not all mathematical operations are commutative. I think we are all comfortable that 5-3 is not the same as 3-5.  However. This not true of multiplication (of numbers). And so if there is to be any distinction, it has to be in the use of English to interpret the 'x' sign. Unfortunately, even here there is no logical way of coming up with a definitive answer. I suspect most primary school teachers would expands 'times' as 'lots of' as mentioned above. So we get 5 x 3 as '5 lots of 3'. Unfortunately that only wor...

Why backgammon is a better game than chess

I freely admit that chess, for those who enjoy it, is a wonderful game, but I honestly believe that as a game , backgammon is better (and this isn't just because I'm a lot better at playing backgammon than chess). Having relatively recently written a book on game theory, I have given quite a lot of thought to the nature of games, and from that I'd say that chess has two significant weaknesses compared with backgammon. One is the lack of randomness. Because backgammon includes the roll of the dice, it introduces a random factor into the play. Of course, a game that is totally random provides very little enjoyment. Tossing a coin isn't at all entertaining. But the clever thing about backgammon is that the randomness is contributory without dominating - there is still plenty of room for skill (apart from very flukey dice throws, I can always be beaten by a really good backgammon player), but the introduction of a random factor makes it more life-like, with more of a sense...