Text entry on Android Phones
Problem to Solve : – I use Swype on my Adroid phone, its definitely a step up since my Blackberry days but I have noticed more and more that I end up fat fingering or Swype seems to assume words for me. Try typing in the word “last” 5 times and see how many times you come out correct. I have noticed that I now have to swipe my fingers across and also pick the right work from the popup list. Always trying to find ways of getting efficient this stood out as very inefficient, so I started looking at ways to improve my entry method. I downloaded Swiftkey found it interesting especially since they talk about a system that teaches itself and tries to predict what you will type next. I must say I uninstalled it after a day of use. I found it was good to pick words (sometimes) but on the most I hated that I couldn’t swipe my finger across the keyboard.
Guess I am spoilt by Swype.
So I started considering the possibility of writing an app on my own that would incorporate the swipe across the keyboard functionality but in addition would try and predict the words. Before jumping in I decided to do some analysis to see if a prediction system would reduce my keystrokes.
I must say I don’t have much good news, but please feel free to post your thoughts. The results don’t agree with what I expected. Guess I should start of explaining what I expected – I assumed since we are creatures of habit most of what we texted to each other would be the same. So we would end up texting the same information (words) over and over, e.g. I probably ask my wife about dinner plans every day or every other day.
Well guess what, that’s not what I found! I downloaded all my text messages off my phone using a neat tool called “SMS Backup” it gives out an XML file. I then converted the file into Excel and did everything on there. I first split up all the words, got a list of unique words then proceeded to get a frequency. I would have expected to have seen a lot of repeated words.
Below is the graph
The X axis is the number of occurrences or a word, the Y axis is the number of times they repeated. So for example there were 989 single (0-1) occurrences of words. Words were repeated 2-10 times 743 times, based on this chart building a system to predict what you would type isnt very efficient since you have a %50.7 chance of typing a word only once (989 single occurrences).
I then thought the mistake might be around my texting preferences. I figured that rather than looking at all my text messages as a whole maybe I should look at my conversations to individual contacts. So for example I would consider all my text messages to my wife and see my pattern.
No luck here too. I went ahead and pulled out 9 conversations and charted those. I super imposed it over the graph above.
As you can see it’s the same, higher chance of single words and the graph drops fast after 2-10.
To make things better to understand I plotted them into a % chart (Below). The little ray of hope is that if you go with the assumption that the app will predict words you can expect to improve efficiency by about 35%-43% (2-10 Repeats).
| 0-1 | 2-10 | 11-100 | |
| Series 1 | 61.41% | 35.14% | 3.44% |
| Series 2 | 58.33% | 36.11% | 5.56% |
| Series 3 | 65.95% | 33.51% | 0.54% |
| Series 4 | 68.12% | 31.88% | 0.00% |
| Series 5 | 58.12% | 38.31% | 3.57% |
| Series 6 | 56.36% | 38.73% | 4.91% |
| Series 7 | 50.80% | 40.56% | 8.63% |
| Series 8 | 47.65% | 43.88% | 8.47% |
| Series 9 | 58.69% | 39.00% | 2.32% |
Here is the same table broken into a chart.
The interesting point here is that about %60 percent of the time we are coming up with new words in our conversation. The question here is would you build an app to improve efficiency by about %38, the bigger question I guess would your customers notice the improvement especially if they just paid for your app? Constructive thoughts please!
Legal stuff – Swype and Swiftkey are registered trademarks and I am using it represent two popular entry methods. There are folks who swear by either so I believe it’s a matter of preference and not a reflection on quality. I am just trying to see if I can build on either to find an entry method that will fit my preference.
George Verghis



