The hardest words to text

I have an old cell phone. It looks like this:

I didn't take this picture with my phone. It is both too old and insufficiently bendy to photograph itself

If you have a phone like this, you know that texting gets annoying — if you want to type “Hi”, you need to press the 4 button twice, wait for the cursor to move over a spot (or hit the right arrow button), and then hit 4 three more times. In other words, the sequence of button presses to type “hi”  — what I’ll call the keypress sequence — is ‘44.444’, where ‘.’ is either a delay or the right arrow key. That’s 6 presses — 3 times the number of letters — to type one of the most common words in the English language. That’s not so good.

Ruminations like this made me wonder what are the best and worst words to type on a keyboard like this. A bad word would require many more button presses than letters — either because lots of the letters the 3rd or 4th on their key (like S), or because several consecutive letters appear on the same key, requiring lots of right arrow presses (like the word “moon”, whose keypress sequence is “6.666.666.66”).

It’s pretty straightforward to write a program to convert a word into a keypress sequence. Here’s a program in less than 20 lines of python code:

import string

k = '22233344455566677778889999'
r = '12312312312312312341231234'
key = {}
repeat = {}
for i in range(26):
    key[string.lowercase[i]] = k[i]
    repeat[string.lowercase[i]] = int(r[i])

def word_to_keypress(word):
    last, result = -1, []
    for letter in word:
        k = key[letter]
        if k == last:
        last = k
        result.extend([key[letter]] * repeat[letter])
    return ''.join(result)

I decided to translate the entire dictionary into keypress sequences. Then, I scored each word by dividing the length of the keypress sequence by the length of the original word — the smaller the sore, the more efficiently that word can be typed on an old-timey phone such as mine.

Here’s what I came up with:

Least efficient words to type

Word     Keypress Sequence        Score (sequence length / word length)
siss     77774447777.7777         4.00
sizz     77774449999.9999         4.00
soss     77776667777.7777         4.00
zizz     99994449999.9999         4.00
sissoo   77774447777.7777666.666  3.83
fezzy    333.339999.9999.999      3.80
fizzy    3334449999.9999.999      3.80
sissy    77774447777.7777999      3.80
coss     2226667777.7777          3.75
fess     333.337777.7777          3.75

Words with the most repeat keys (.s)

gnomonologically       466.666.6.666.66.6665556664.444222.2555.555999
pseudomonocotyledonous 7.777733883666.6.666.66.666222666899955533.3666.66.666887777
monosyllabically       6.666.66.6667777999555.5552.22444222.2555.555999
noncommissioned        66.666.66222666.6.64447777.7777444666.6633.3
monomorphic            6.666.66.666.6.666777.744.444222
monomorphism           6.666.66.666.6.666777.744.44477776
promonarchicalness     7.777666.6.666.66277722244.444222.255566337777.7777
demonologically        3.336.666.66.6665556664.444222.2555.555999
histomorphologically   44.44477778666.6.666777.7446665556664.444222.2555.555999
gnomonological         466.666.6.666.66.6665556664.444222.2555

Longest words with no repeat keys

scleroticochorioiditis    777722255533777666844422266622244666777444666444344484447777
electroencephalography    33555332228777666336622233744255566647772744999
hexanitrodiphenylamine    443399266444877766634447443366999555264446633  
hexamethylenetetramine    44339926338449995553366338338777264446633
scleroticochoroiditis     777722255533777666844422266622244666777666444344484447777
poluphloisboiotatotic     7666555887445556664447777226664446668286668444222
platydolichocephalous     755528999366655544422244666222337442555666887777
electroencephalograph     33555332228777666336622233744255566647772744
neurochorioretinitis      663388777666222446667774446667773384446644484447777
orthodolichocephalic      666777844666366655544422244666222337442555444222

Also interesting (maybe in a relative sense…): you can use this same machinery to measure how efficient it is to type with phone keypads in general. All you need is a database of how frequently people use different words in the English language. Once you do that, you can determine the best way to re-assign letters to numbers on a keypad. That’s another post…


Leave a Reply

Please log in using one of these methods to post your comment: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s