This is about laptop keyboards, but there is a huge diy scene around improving keyboards. I have an ErgoDox (http://ergodox.org/) which is very well thought out and open source (and people are iterating on it - see: http://geekhack.org/index.php?topic=44940.0 )