A PaperCut user recently reported an unfortunate situation. The PaperCut Pre-Paid/TopUp Card Wizard generated a card with an inappropriate random card number. The first reaction of our developers was to have a bit of a laugh – what are the chances of that? – followed by some serious discussions on the best way to fix the “bug”.
The offending card censored to protect the innocent!
The situation reminded me of the Infinite monkey theorem. We calculated that the probability of this, or any other four letter word appearing in any one card, is approximately 1 in 800,000. That’s very low, but given a large enough number of administrators generating a large enough number of cards, it was bound to happen some day.
We considered a number of solutions including Black Listing words. The only problem with this approach was that it’s hard to know what constitutes a “bad” word in all the 9 languages we support. Also, maybe some legit words may be inappropriate in some cases. Our final solution was to simply drop vowels which in turn prevents word formation - a simple but elegant solution. Anyone know any bad four letter words without vowels?!