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?!