It’s a feature #1: The sad trombone

Back 5 years ago, our company had just secured a bespoke software deal that would see us develop a WPF application for a large manufacturing company that will be used in their factory by hundreds of users. The application would essentially tell the user how much material needs to be cut, and the user would log which pallet of stock was used. Nearly all user interaction with the app is done using a barcode scanner, with some parts of the application updating a live webpage using SignalR.

Sound played an import role in this application. A lot of the factory users did not speak or understand English, and even for the ones that did, it would break the flow of using the scanners if they had to constantly look at the computer in monitor (in hindsight, we should have used a handheld computer rather than reply on a traditional PC but never mind).

When a user performed a scan that was accepted, they would be greeted by a friendly ‘bleep’ sound. If the scan was invalid, i.e the order number or pallet number scanned didn’t exist, they would get a sound reminiscent of the ‘Family Fortunes’ buzzer, but a bit less serious sounding. During my infinite wisdom, I also coded in a third sound – the sad trombone

If you don’t know what is, you’ll know after listening. This sound would play if there was an unhandled exception, which in development would happen a lot but we put in a global exception handler which dealt with the exceptions in a more user friendly way – thus this glorious sound was never played out in the factory, or so I thought.

During development of a new feature, my PC didn’t have working speakers. This new feature involved the user having to scan a barcode twice instead of once at a certain stage, as it was found that some users were scanning things a bit willy-nilly (not the nicest solution, but it worked). It got released and we didn’t have any comeback.

Many weeks later, I found that instead of playing the nice ‘bleep’ on the first successful scan using this new feature, it was playing the sad trombone. “Uh oh, maybe this part of the application isn’t in use yet” I thought, as surely management would have picked up on it and been rather cross.

Nope – after fixing it and including the fix in a subsequent release for another new feature, we had an influx of calls saying that the ‘womp’ sound has stopped after scanning in a certain area. I was baffled at this, until I remembered about that tiny bug I fixed.

Users had thought the sound was intentional and was to tell the user another scan was required. It certainly wasn’t and it was meant to be the same sound as any other scan! I was then forced to put this sound back in, much to the delight of the users. I had tried suggesting a less…inappropriate…sound, but everyone wanted the trombone.

A few months later I visited the factory, and trying to stifle my laughter when I would hear a chorus of sad trombones every now and then proved to be difficult!