geekhack Community > Ergonomics

Keyboard Layout Analyzer - new forked version

(1/2) > >>

stevep:
You'll probably be aware of the patorjk.com keyboard layout analyzer, which is a nice web app for experimenting with different layout designs, presenting results in an attractive and user-friendly way.

My only bugbear with it is that doesn't document in much detail how its scoring system works. It's hard to evaluate results if you don't know the methodology that was used to create them. Anecdotally, in the past I have experimented with it and got unexpected results, leading me to have doubts over the algorithm it uses.

Anyway, I have recently taken it upon myself to studying the source code of the analyzer, and documenting how its scoring system works. Not being content with that though, I then started to think of ways that it could be improved. To this end, I have now forked the original repo, and made various changes and, hopefully, improvements. There is always some degree of personal opinion and preference when it comes to layout design, so all my changes to algorithm are documented, so that people can freely evaluate them and decide if they agree or not.

My forked version of the Keyboard Layout Analyzer is here. The documentation is in the About tab.

Have a play around with it and let me know what you think!

Snarfangel:
From the "About" section:
Layouts should also attempt to use index finger heavily with very little or none on pinkies and thumbs.

Why not the thumbs? The space bar is the most used key, and it does fine under the thumb. Putting it under any other finger would (IMO) be worse. And if the space is fine under one thumb, why not the E under the other thumb, assuming you have a Kinesis, Maltron, or Ergodox?

/I put the E and O under the left thumb on my Kinesis Advantage2, and it works just fine.

PS I'm not knocking your effort. I love seeing new keyboard layout analyzers!

stevep:

--- Quote from: Snarfangel on Sat, 02 May 2020, 13:52:53 ---From the "About" section:
Layouts should also attempt to use index finger heavily with very little or none on pinkies and thumbs.

Why not the thumbs? The space bar is the most used key, and it does fine under the thumb.
--- End quote ---

Yes, I totally agree. The section you quote is where I am critiquing the algorithm in the original patorjk analyzer. I'm saying that to be successful under that algorithm, layouts should weight index and (especially) middle fingers excessively, and that thumbs are insufficiently valued. My changes include doubling the value of thumbs and making middle and index fingers equal in effort to rebalance this somewhat. I probably need to reword that section to make it clearer.


squizzler:
I wish you luck refining this programme but wonder if if there might be better code from which to start. For example, I attach a graph showing the metrics against which the layout I adopted last year, RSTHD, was developed. Link to its creator's writeup is in my signature below (from which his code is linked). Whilst I can only comment as a layperson, the apparent care that went into crafting the algorithm is borne out by my own experiences of the layout.

As somebody who has adopted a layout which puts 'E' on the thumb I obviously concur with your decision to reduce the penalty assigned to that digit. It is my expectation that with the recent availability of hobbyist hardware inspired by Maltron (*Dox, Corne, Iris, Keyboardio et. al.) layouts with thumb activated characters will enjoy a renewed interest.
 

Gorbon:

--- Quote from: stevep on Sat, 02 May 2020, 12:00:30 ---Anyway, I have recently taken it upon myself to studying the source code of the analyzer, and documenting how its scoring system works. Not being content with that though, I then started to think of ways that it could be improved. To this end, I have now forked the original repo, and made various changes and, hopefully, improvements. There is always some degree of personal opinion and preference when it comes to layout design, so all my changes to algorithm are documented, so that people can freely evaluate them and decide if they agree or not.

Have a play around with it and let me know what you think!

--- End quote ---

Nicely done! Thanks for doing this.

I did a few rounds of testing (focused on keyboard layouts) and made some observations:

* The scores of "QWERTY" and "QWERTY Wide-Mod" are consistently very close, I would expect there to be a more clear advantage for the wide mod.
* On the matrix keyboard the keys don’t align with the hand approach angle, forcing both hands to twist outwards while typing. So I would expect the “Colemak-DHm Matrix” to score lower than both "Ergodox Colemak-DHm (Mod-DH)" and "Colemak-DH (Mod-DH) split-space", but that doesn’t seem to be the case. The matrix, scores very close to the Ergodox and very often higher than the ISO board with the Angle Mod.
* Also on number input (Pi 1000), "Colemak-DH (Mod-DH) split-space" scores markedly lower than "Colemak-DH (Mod-DH)". I would expect these to be identical.I’ve also added Maltron and RSTHD layouts for the Ergodox (attached). In most tests they seem to score close to one another, but both lower than the "Ergodox Colemak-DHm (Mod-DH)"

Finally, the "QWERTY split-space" preset doesn’t seem to load.

 Ergodox_Maltron.json
 Ergodox_RSTHD.json

Navigation

[0] Message Index

[#] Next page

Go to full version