Philosophical Multicore

Sometimes controversial, sometimes fallacious, sometimes thought-provoking, and always fun.

The New Keyboard Layout Project: Quick Update

Posted by Michael Dickens on August 11, 2009

I have recently been working on an evolutionary algorithm in C. I’m still working out the technical details, but it’s really getting there. After just three and a half days of writing the program, it is already capable of getting some decent output. Just now, I got this after only a few minutes:

q f y p b j l u m .
a s i t d h n e r o
k c ' w g z v ; x ,

A comparably good layout would have taken about two hours to get in Ruby. Not only is C faster, but the program I’ve written is much more efficient.

I am working on a modification that will give costs to keyboard shortcuts.

This is my current scoring system:

same finger moving outward +100
same finger moving inward +50
jump over the home row* +40
same key twice in a row +10
change rows* +10
move to the center* +10
same hand +4
outward roll -8
inward roll -20

Assume that both key presses are on the same hand.


Leave a Reply

Fill in your details below or click an icon to log in: 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

%d bloggers like this: