4 ms·
When source code reveals an emotional life.
I really liked a recent post about the ASETNIOP keyboard layout. TLDR; it's a chording key layout with an iPad app and a javascript demo.
http://asetniop.com/Tutorial1.html
The basic method for building a good chording keyboard is to identify frequently used strings/words and map them to short key combos.
While the code is a horror to read (I assume it's human-transpiled from C to JS), the frequency data collected by the developer shows some interesting, and sad, patterns in their life. Patterns that I am sure are familiar to lots of people on HN.
Take this selection of frequent words:
wChars[231]="walked";
wChars[232]="took";
wChars[233]="talk";
wChars[234]="stock";
wChars[235]="lack";
wChars[238]="period";
wChars[239]="work";
wChars[241]="human";
wChars[243]="small";
wChars[244]="home";
wChars[245]="example";
wChars[246]="simply";
wChars[247]="played";
wChars[248]="book";
wChars[249]="taking";
wChars[250]="much";
wChars[251]="almost";
wChars[252]="problem";
wChars[253]="family";
wChars[254]="economic";
"economic problems"... "family problems"... "book taking much"... "almost [done]"... "took stock"...
- MojoJolo 14y agoMay I know where and how the data collected? And what is the first word in the array?
- jldailey 14y agoI am not certain how/where it was collected (I am not the developer). Also, the first word in the array won't be directly meaningful, because this is an array that represents a whole keyboard layout (so the first element is "a", the second "s", etc). The first real "word" is actually "and", which is not an interesting word. And it's first-ness is even less interesting because the order in this array is determined by the keys you press to select an item, not the frequency of that word ("a" has a low bit value, so "and" comes before "the", another uninteresting but very frequent word). But, in later sections of the array (where you are pressing 5+ keys at a time to produce a longer word), you can choose from nearly any english word, and so it makes sense to choose ones that you use frequently, and so it makes sense to analyze a corpus of text to find the frequent words. The words ultimately chosen lead me to believe it was the developer's personal emails that were scanned.