3 ms·
As the comments note, encodings for humans should probably skip letters and numbers that are easily confused.
by mooneater 12y ago
As the comments note, encodings for humans should probably skip letters and numbers that are easily confused.
- daurnimator 12y agoThis is reflected in the code: var alphabet = 'ABCDEFGHJKMNPQRVWXY0123456789'; perhaps not perfectly, but 2 vs Z, 5 vs S, 0 vs O are solved for.
- squeaky-clean 12y agoIt's certainly better than nothing. The system now cannot direct the user to the wrong location if they input the wrong, similar, characters. But it does not make the user feel confident that the input was correct. This only works if you know 2 is a possible character, but Z is not, and etc. Otherwise an average user still isn't sure whether '0' means zero, or the letter O. But at least the system will refuse the incorrect version. You could make it a little more user friendly if you replace all the non-existent characters with their similar partner before interpreting ('Z' becomes '2'), but then it still is not clear to the user if the code they entered should have been 'ABC123' or 'ABC1Z3'. Even though they are identical to the system, the user cannot know this (always assume the user will not read your FAQ).
- caust1c 12y agoIt's a one way relationship though, digits always trump the letter look-alikes, so that helps.