Author Topic: Balanced Keyboard Layout  (Read 41835 times)

iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Down arrow
« Reply #700 on: June 11, 2017, 02:32:18 PM »
Just wondering.... when editing/typing, do you/people you know use the middle finger for the down arrow, or the thumb?

I find myself using my thumb and hardly ever the middle finger... particularly when editing text, eg say I need to add a comma/whatever at the end of a bunch of rows...

So it's end, ctrl-v, down, end, ctrl-v, down... etc. I find it easier to swing the thumb under than to move the middle finger.

Comments? (above on MS Natural, ANSI 104 would be the same...)

Thanks, Ian

iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #701 on: June 11, 2017, 02:37:02 PM »
And if people are actually using their thumb on Down, then the whole arrowkey cluster is wrong...

Games are a different use case.

philippe.quesnel

  • Member
  • **
  • Posts: 36
    • View Profile
Re: Balanced Keyboard Layout
« Reply #702 on: June 11, 2017, 03:18:33 PM »
I would need to pay more attention in general, but I do use the thumb for cases like the one you described.
But not in other situations I would think.

mattiasthalen

  • Newbie
  • *
  • Posts: 1
    • View Profile
Re: Balanced Keyboard Layout
« Reply #703 on: July 10, 2017, 02:03:02 AM »
I've tried to wrap my head around all the layouts here and it has left me quite confused.
Seems like BEAKL 5 Matrix is the way to go if using an Ergodox, right?

veruna

  • Newbie
  • *
  • Posts: 11
    • View Profile
Re: Balanced Keyboard Layout
« Reply #704 on: July 11, 2017, 09:18:47 PM »
double pinyin based on bealk 6
not much of science here, just arranged Chinese pronunciation by frequency.
« Last Edit: July 11, 2017, 09:27:42 PM by veruna »

Den

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1039
  • Selina is my Superstar
    • View Profile
    • Amuseum
Re: Balanced Keyboard Layout
« Reply #705 on: July 12, 2017, 12:44:52 AM »
I've tried to wrap my head around all the layouts here and it has left me quite confused.
Seems like BEAKL 5 Matrix is the way to go if using an Ergodox, right?

BEAKL 5 and BEAKL EZ Matrix are pretty close. BEAKL 5 scores slightly better on KLA, by 1-4%. But it is unconventional by putting some letters outside the main 30-block. If you can tolerate that.

I personally use BEAKL EZ because I like letters inside. But most importantly, it overlaps perfectly with my numpad design, when taking into account the punctuations.
Support me on Patreon

I saw. I conquered. I came.

Babieca

  • Newbie
  • *
  • Posts: 1
    • View Profile
Re: Balanced Keyboard Layout
« Reply #706 on: July 24, 2017, 04:47:34 AM »
I've been using a standardized version of this layout since April 2014 and loving it
https://forum.colemak.com/topic/1832-widely-alternating-layouts-work-in-progress/
It scores pretty well on PKLA

iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Mmm.
« Reply #707 on: July 24, 2017, 01:25:55 PM »
@Den.
Stumbled across this while looking for something else.

http://qiita.com/ZeptByteS/items/6e6a3e46552dcb105948

If your Japanese is as bad as mine, Google translates quite well:
https://translate.google.com/translate?hl=en&sl=ja&u=http://qiita.com/ZeptByteS/items/6e6a3e46552dcb105948&prev=search

Den

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1039
  • Selina is my Superstar
    • View Profile
    • Amuseum
Re: Mmm.
« Reply #708 on: July 24, 2017, 02:59:26 PM »
@Den.
Stumbled across this while looking for something else.

http://qiita.com/ZeptByteS/items/6e6a3e46552dcb105948

If your Japanese is as bad as mine, Google translates quite well:
https://translate.google.com/translate?hl=en&sl=ja&u=http://qiita.com/ZeptByteS/items/6e6a3e46552dcb105948&prev=search

Very interesting. Even Japanese found out about my BEAKL theory and design. (Reminds me to update the layout on deskthority. )

E even tried to modify er own version. But some criticisms. H-I swap is unfounded.  I is more common than H, thus should be on faster finger. Moreover H on pinky means H-vowel bigrams will always be inward rolls; including H-I roll.


iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Re: Mmm.
« Reply #709 on: July 24, 2017, 10:51:16 PM »
E even tried to modify er own version. But some criticisms. H-I swap is unfounded.  I is more common than H, thus should be on faster finger. Moreover H on pinky means H-vowel bigrams will always be inward rolls; including H-I roll.

I saw some things I didn't like about BEAKRAK so started playing ... attached layout gets better scores on Den1 scoring on Alice at least.

His input text was a poor test ... lots of English words run together, no spaces, no Caps, no punctuation, no newlines....

Den

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1039
  • Selina is my Superstar
    • View Profile
    • Amuseum
Re: Mmm.
« Reply #710 on: July 25, 2017, 09:13:02 PM »
I saw some things I didn't like about BEAKRAK so started playing ... attached layout gets better scores on Den1 scoring on Alice at least.

His input text was a poor test ... lots of English words run together, no spaces, no Caps, no punctuation, no newlines....

BEAKRAK's worse offense is it violates the tenet of BEAKL by overloading the pinky, especially reaching outside the home column. Yes top pinky is very poor key, but it's still better than stretching the pinky sideways. The benefit of top pinky is it still decent for rolls with other top row keys. OTOH the outside pinky is just bad all around.

iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Re: Mmm.
« Reply #711 on: July 25, 2017, 10:52:04 PM »
BEAKRAK's worse offense is it violates the tenet of BEAKL by overloading the pinky, especially reaching outside the home column. Yes top pinky is very poor key, but it's still better than stretching the pinky sideways. The benefit of top pinky is it still decent for rolls with other top row keys. OTOH the outside pinky is just bad all around.

I was doing some tests with my modified version and KLA picked up some "impossible" fingerwork. So there are other issues with the design. Will see if it's worth spending time on to fix.

iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Re: Mmm.
« Reply #712 on: July 26, 2017, 01:46:53 PM »
I was doing some tests with my modified version and KLA picked up some "impossible" fingerwork. So there are other issues with the design. Will see if it's worth spending time on to fix.

Easy fix. They had Rshift on the left hand and LShift on the right hand. Just a quick swap needed.

Here's results on Alice (your original scoring)

Other layouts are variants from creator of HIEAMSTRN (lalop) that I found on Colemak forum. Getting ready to do a round of tests again, added a bunch of new layouts....

iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #713 on: July 28, 2017, 05:49:56 AM »
@Den

Getting the courage up to add some entries to Deskthority about ErgoLinear/Matrix etc ... is this the first place it surfaced?

 Reply #417 on: 2016-10-25, 12:49:50 (in this thread)

Trying to remember how we arrived at it... :-)

Geez, nearly a year ago. Doesn't seem that long :-)

thanks, Ian

iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #714 on: July 28, 2017, 05:54:10 AM »
@Den

GH discussion: https://geekhack.org/index.php?topic=90696.0
In case you missed it.

iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
den1 vs den2 scoring
« Reply #715 on: July 29, 2017, 01:40:29 PM »
@Den

in Den2 scoring, you do at line 30 in analyzer.js:

    function distanceBetweenKeys(keyMap, keyIndex1, keyIndex2) {
        var xDiff = (keyMap[keyIndex1].cx - keyMap[keyIndex2].cx) * 1.5,
            yDiff = keyMap[keyIndex1].cy - keyMap[keyIndex2].cy;
        return Math.sqrt(xDiff*xDiff + yDiff*yDiff);
    }

Just wondering why you multiply the x distance by 1.5.

Thanks, Ian

Den

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1039
  • Selina is my Superstar
    • View Profile
    • Amuseum
Re: den1 vs den2 scoring
« Reply #716 on: July 29, 2017, 05:37:40 PM »
@Den

in Den2 scoring, you do at line 30 in analyzer.js:

    function distanceBetweenKeys(keyMap, keyIndex1, keyIndex2) {
        var xDiff = (keyMap[keyIndex1].cx - keyMap[keyIndex2].cx) * 1.5,
            yDiff = keyMap[keyIndex1].cy - keyMap[keyIndex2].cy;
        return Math.sqrt(xDiff*xDiff + yDiff*yDiff);
    }

Just wondering why you multiply the x distance by 1.5.

Thanks, Ian

penalize lateral movements

iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Re: den1 vs den2 scoring
« Reply #717 on: July 30, 2017, 12:16:22 AM »
penalize lateral movements

Yes, I figured, but by default then that's going to punish ANSI and to a lesser extent, ErgoDox layouts (ANSI because of the stagger, and ErgoDox because the large vertical keys' centre is not horizontal to the keys next to them).
[edit - which of course means Y distance, not X, silly boy]

Also the thumb clusters on ErgoDox are not horizontally aligned, which is further complicated by the fact that moving the thumb sideways is not as big an issue as moving the pinky sideways.

On ErgoLinear/Matrix the only things moving sideways are pinky, index and thumb. I think the only problem in that group is the pinky... to me it feels the same effort moving the index or thumb up/down or sideways.

I think the point I'm sort of aiming at are questions like
"is increasing the distance the best way of penalising horizontal movements?"
"is it fair to punish a thumb moving sideways as much as a pinky moving sideways?"

So I'm wondering if this is not a function of "finger penalty" rather than distance penalty? Or should we have different sideways penalties per finger?
Even doing that is going to punish ANSI for being ANSI, since the design dumps such a lot onto the right pinky.

(Yes ANSI sucks big time and needs to be dumped... I get so frustrated with the guys on the Colemak forums forever trying to find the perfect layout on a bad design. Lipstick on pigs and all that.)

Cheers, Ian

« Last Edit: July 30, 2017, 01:33:04 PM by iandoug »

Den

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1039
  • Selina is my Superstar
    • View Profile
    • Amuseum
Re: Balanced Keyboard Layout
« Reply #718 on: August 03, 2017, 07:47:33 AM »
KLA version 3 to try out new scoring ideas

http://shenafu.com/code/keyboard/Keyboard%20Layout%20Analyzer%203.html

  • removed .download from file names
  • minimize layout file size
  • layout presets specified in separate file (kbpresets.js)
  • slightly more optimized (alas, major bottleneck is garbage collection from external libraries)
  • removed redundant penalty for shifts/modifiers (also removed from v2)
  • higher penalty for total finger usage and pinky usage and same finger (probably closer to distance penalties)
  • TODO: per finger penalty for horizontal movement (thumb is not as nimble as you think)
« Last Edit: August 03, 2017, 08:09:33 AM by Den »

iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #719 on: August 03, 2017, 08:42:56 AM »
KLA version 3 to try out new scoring ideas

Okay will take a look. From my side I've managed to add Ergolinear/Matrix to my local copy of Patrick's original.
Busy going through all the layouts on the dropdown vs all the layouts in "layouts" folder to see what's what, what needs to be added, what needs to be dropped, etc...

I was also working through your code (V2), and something puzzled me ... there was a penalty added for AltGr, and also for Shift, which is understandable, but then the code checked for AltGr+Shift, and added penalties again... but that seems double punishment. It didn't affect any of our layouts but would affect Some of the complex Euro ones that put things on ShiftAltGr.

So I don't know yet if that is what you were referring to about "redundant" penalties being removed... or something else.
Will be busy tonight so will only really have time over the weekend I think.

I was wondering if we should maybe take a step back and put the scoring ideas into words first, and then discuss them... Suppose we should start with what Patrick did. Might also be useful to do same exercise with ADNW/whatever's ideas, and Michael's (IIRC). Dunno how important in the real world, inward/outward rolls are. Nice to have I suppose, but are lots of them better or worse than few? Same with row jumps etc.

iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #720 on: August 03, 2017, 08:46:57 AM »
Oh yeah, the "Same Hand" metric ... how should that be interpreted?

Close to 50==better, or lower==better?

iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #721 on: August 03, 2017, 08:48:38 AM »
I've been wondering about speeding up KLA ... won't skipping the "Customised layout" routine help? I never use it. When you have 12 layouts, and a 300k input text (as per Scotty and his Dutch/English input) then each test takes quite a while to run...

iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #722 on: August 03, 2017, 09:13:51 AM »
Played around a bit... should there be such a big difference between MTGap on ANSI and MTGap on ErgoDox? Don't remember the thumbshift having such a dramatic difference before.
Input was Keyboard Layout Editor homepage.


Den

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1039
  • Selina is my Superstar
    • View Profile
    • Amuseum
Re: Balanced Keyboard Layout
« Reply #723 on: August 03, 2017, 09:48:40 AM »
I've been wondering about speeding up KLA ... won't skipping the "Customised layout" routine help? I never use it. When you have 12 layouts, and a 300k input text (as per Scotty and his Dutch/English input) then each test takes quite a while to run...

removing personalized layout does help. the bulk of processing is still generating graphs. analysis part is relatively quick.

iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #724 on: August 03, 2017, 10:02:09 AM »
removing personalized layout does help. the bulk of processing is still generating graphs. analysis part is relatively quick.

Wonder if switching to Google Graphs would be quicker?
Swap CPU cycles for bandwidth+pause?
BTW while we're on the topic, the finger usage pie charts should either start with right pinky, or else go anticlockwise, so that the left fingers end up on the left, and the right on the right. I realise this is Patrick's legacy code.
Haven't looked at how he calls the chart drawing routines.... was on the ToDo list :-)

Den

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1039
  • Selina is my Superstar
    • View Profile
    • Amuseum
Re: Balanced Keyboard Layout
« Reply #725 on: August 03, 2017, 10:47:33 AM »
Played around a bit... should there be such a big difference between MTGap on ANSI and MTGap on ErgoDox? Don't remember the thumbshift having such a dramatic difference before.
Input was Keyboard Layout Editor homepage.

pinky now has much higher penalty, which greatly affects same pinky scores.

Den

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1039
  • Selina is my Superstar
    • View Profile
    • Amuseum
Re: Balanced Keyboard Layout
« Reply #726 on: August 03, 2017, 11:13:37 AM »
Wonder if switching to Google Graphs would be quicker?
Swap CPU cycles for bandwidth+pause?
BTW while we're on the topic, the finger usage pie charts should either start with right pinky, or else go anticlockwise, so that the left fingers end up on the left, and the right on the right. I realise this is Patrick's legacy code.
Haven't looked at how he calls the chart drawing routines.... was on the ToDo list :-)

no option for counterclockwise. the best is set starting angle at the bottom of the circle.

iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #727 on: August 03, 2017, 11:20:38 AM »
no option for counterclockwise. the best is set starting angle at the bottom of the circle.

Elegant solution :-)

iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #728 on: August 04, 2017, 11:48:07 AM »
  • slightly more optimized (alas, major bottleneck is garbage collection from external libraries)

FWIW on my local version I've removed various external things like google analytics, AddThis, etc. Unnecessary clutter for our purposes.

Running tests on KLA eventually chews up my RAM (16 GB) and machine slows to a crawl. Even shutting browser does not always release all memory, have to exit out of KDE and restart it to reset RAM.
Tried 4 different browsers, all the same.

Den

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1039
  • Selina is my Superstar
    • View Profile
    • Amuseum
Re: Balanced Keyboard Layout
« Reply #729 on: August 04, 2017, 04:00:06 PM »
  • fixed graphs showing wrong values
  • removed redundant stuff from .html that's populated by template
  • removed social media crud
« Last Edit: August 04, 2017, 04:17:52 PM by Den »

iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #730 on: August 05, 2017, 12:33:11 AM »
  • fixed graphs showing wrong values
  • removed redundant stuff from .html that's populated by template
  • removed social media crud

Over on GH, Scotty has picked up difference between same-finger usage in your summary table, and the values on the detail page.
I also noticed "unusual" results on the summary table.
This be with V3 of your scoring.

You on holiday now that you have time for this? :-)

Yeah I've been wondering why the same stuff was on the main HTML page as well as the template file. Also wondered why it was necessary to put the initial layouts into memory when they could be pulled off disk on demand.

Den

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1039
  • Selina is my Superstar
    • View Profile
    • Amuseum
Re: Balanced Keyboard Layout
« Reply #731 on: August 05, 2017, 02:18:11 AM »
Over on GH, Scotty has picked up difference between same-finger usage in your summary table, and the values on the detail page.
I also noticed "unusual" results on the summary table.
This be with V3 of your scoring.

Graph scores are raw. Summary scores are normalized.

Quote
Also wondered why it was necessary to put the initial layouts into memory when they could be pulled off disk on demand.

Load on demand would require AJAX, i.e. more complicated code. Just simpler to include another .js file with presets. However, that means the data might not match when loading layouts later, if preset and .json have different data.

iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #732 on: August 05, 2017, 10:00:37 AM »
Load on demand would require AJAX, i.e. more complicated code. Just simpler to include another .js file with presets. However, that means the data might not match when loading layouts later, if preset and .json have different data.

The code to load user-selected layout is already there, I thought it should be doable to have a short list of layouts in an array, and then run through the relay "faking" the user selecting them. It does call PHP on the backend to do the actual file reads.

iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #733 on: August 05, 2017, 10:14:08 AM »
However, that means the data might not match when loading layouts later, if preset and .json have different data.

If I read Patrick's code correctly then it first checks in memory to see if the named layout is there, before going to disk. In truth some of the preloaded layouts don't exist on disk. I put them there when I started having multiple versions with different preloads, and found some attempted loads failed.

Den

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1039
  • Selina is my Superstar
    • View Profile
    • Amuseum
Re: Balanced Keyboard Layout
« Reply #734 on: August 05, 2017, 01:41:53 PM »
ideas to improve KLA:
  • allow user to customize parameters of efforts, penalty scores (e.g. per finger penalties, score category weights)
  • include other typing penalties (e.g. outward rolls, seesaw, finger usage percentage)

iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #735 on: August 05, 2017, 02:02:01 PM »
ideas to improve KLA:
  • allow user to customize parameters of efforts, penalty scores (e.g. per finger penalties, score category weights)
  • include other typing penalties (e.g. outward rolls, seesaw, finger usage percentage)

Seesaw is a new one for me.
Row jumps?
Big stretches? Though I suppose that's more in ctrl-combos than regular typing. And you're supposed to use opposite hands :-)

This goes back to my suggestion to put all this in words first, then maybe talk about how to rationally measure them, and how important each is to evaluating a layout.
Thought finger usage percentage was already included?

There's also another "bug" in distance measurements. All measurements are from centre of key to centre of next key. But in real world people hit large keys off-centre, possibly at "what would be closest centre if it was 1U wide".

I also stumbled across the fact yesterday that the Planck guys put their keys 19mm apart (centre to centre) while Cherry apparently uses 19.05 mm ...
I think KLE uses 19mm (and thus my home-made keyboard does the same).

Sc0tTy

  • Newbie
  • *
  • Posts: 3
    • View Profile
Re: Balanced Keyboard Layout
« Reply #736 on: August 06, 2017, 12:20:20 PM »
Hi guys, figured I create an account here to join the discussion on KLA :)

I just want to reiterate how much I appreciate both of you on your work with the KLA and layouts in general :)

Graph scores are raw. Summary scores are normalized.

I understand that the raw and summary scores are not the same, but how can a 100% flipped layout result in a difference score?
Unless I made a mistake in flipping the layout, which I haven't found, that score must be the same right?
And if there is a bug it will probably impact scores of all layouts as well.
I've attached both layouts for you to check out.
To clarify: all raw/sub results are the same for the original and flipped layouts its just the summary score that's different.

ideas to improve KLA:
  • allow user to customize parameters of efforts, penalty scores (e.g. per finger penalties, score category weights)
  • include other typing penalties (e.g. outward rolls, seesaw, finger usage percentage)

It would be awesome if there was an option to change the penalty for each key on the board. Another something I'd like to see is that you can remove and add more layouts to the test. It starts with 12 layouts but when I'm "hunting" for a new score I only need two: my WIP and my baseline. The other 12 layouts are useless to me unless I want to do a full comparison and usually its never against the 12 layouts that are preset.
« Last Edit: August 06, 2017, 12:26:01 PM by Sc0tTy »

iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #737 on: August 06, 2017, 12:38:47 PM »
It would be awesome if there was an option to change the penalty for each key on the board. Another something I'd like to see is that you can remove and add more layouts to the test. It starts with 12 layouts but when I'm "hunting" for a new score I only need two: my WIP and my baseline. The other 12 layouts are useless to me unless I want to do a full comparison and usually its never against the 12 layouts that are preset.

My 2c:

1. changing penalties makes comparing layouts more difficult, the playing field must be level, else your results will differ from mine, and whose will be correct?
Although I do understand that people have different hands and perhaps the "predefined" penalties are not appropriate for them.
But when wearing my hat of "evaluate all layouts to find the best" I need a stable baseline... :-)

2. agree on desirability of adjusting number of layouts in tests... I work at the same as you (but sometimes two WIP at the same time), and thus extra layouts just wastes time for each test, but when running auto-testing of all layouts, its nice to do bigger batches at a time. Only problem is browser timeouts, especially on large input tests. Need to find a balance between input size and number of layouts.

I have finally (I think) persuaded Patrick's original code to write what I need to the console.log so I can test all the layouts with his scoring. But need to first redo the database tables (layouts, tests, scores) to handle the new additions.
More work than it looks :-)
Need to find a way to automate it more ... perhaps add extra meta-data to the layout jsons, and read them directly, instead of maintaining a spreadsheet that gets exported to csv and imported to database.

iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #738 on: August 08, 2017, 01:16:05 PM »
@Den

Can you please mark these as either Major, Minor, or ForgetAboutIt?

standard.BEAKL-Opted36
standard.BEAKL-opted4
standard.beakl_stretch
ergodox.beakl_opted1
ergodox.beakl_opted3
ergodox.BEAKL-Opted4-Ergo
ergodox.BEAKL-Opted4-Ergo-Alt
ergodox.beakl34kinesis
ergodox.BEAKL-Opted36-Ergo
matrix.BEAKLEZ
ergolinearDen.BEAKL5

Thanks, Ian

iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #739 on: August 09, 2017, 02:36:08 AM »
@Den

Idea that came up from talking to Scotty on GH.

Proposal: on ErgoLinear/Matrix layouts, lower the pinky columns by about 1U, to provide a more natural location for pinky.
Won't affect current KLA models because there is no measurement for finger length in models, but will make a comfort difference in the real world.

Comments?

Sc0tTy

  • Newbie
  • *
  • Posts: 3
    • View Profile
Re: Balanced Keyboard Layout
« Reply #740 on: August 09, 2017, 11:45:05 AM »
Is there a list of all available keycodes in KLA ?

BEAKL Opted4 Ergo AltGr has a copy keycode for instance

iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #741 on: August 09, 2017, 01:12:05 PM »
Is there a list of all available keycodes in KLA ?

BEAKL Opted4 Ergo AltGr has a copy keycode for instance

Use the unicode glyph point, eg u:2398

See for example http://www.fileformat.info/info/unicode/char/2398/index.htm
(fileformat.info site is very useful for poking around Unicode).

Patrick uses some "special" codes (negative numbers) for left/right eg with shift key.

You know you can change what's on the key by clicking on it, right? :-)
Just checking. :-)

Above technique assumes the glyph is in the font you are using on the keyboard.

I sometimes put "unusual" characters on keys, to fill up slots, and sometimes to force KLA to display single glyph at bottom instead of floating to top left. Think Den fixed that bug.

Sc0tTy

  • Newbie
  • *
  • Posts: 3
    • View Profile
Re: Balanced Keyboard Layout
« Reply #742 on: August 09, 2017, 01:53:28 PM »
Use the unicode glyph point, eg u:2398

See for example http://www.fileformat.info/info/unicode/char/2398/index.htm
(fileformat.info site is very useful for poking around Unicode).

Patrick uses some "special" codes (negative numbers) for left/right eg with shift key.

You know you can change what's on the key by clicking on it, right? :-)
Just checking. :-)

Above technique assumes the glyph is in the font you are using on the keyboard.

I sometimes put "unusual" characters on keys, to fill up slots, and sometimes to force KLA to display single glyph at bottom instead of floating to top left. Think Den fixed that bug.

Yeah I know you can change the keys when clicking, but there is no list :P

Ah okay so you can just add random unicode, okay good to know :)

iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #743 on: August 13, 2017, 10:39:52 AM »
@Den

Working on my database loader program..... guess you added corpusChars to the scoring, Patrick doesn't have it, and that breaks my Efficiency calculations....

Let me see if I can stick it in... but then need to redo the first two "test" tests...


iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #744 on: August 16, 2017, 01:52:21 AM »
@Den
Trying to wrap my head around the various scoring models and the results they produce.

This be top 30 with Patrick's original scoring:

Code: [Select]
+--------------------------------+-------+
| fullname                       | score |
+--------------------------------+-------+
| Seelpy Ergolinear 1.4          | 86.86 |
| Seelpy Ergolinear 1.8          | 86.73 |
| Seelpy Ergolinear 1.22         | 85.51 |
| Seelpy Ergolinear 1.17         | 85.50 |
| SchizoKBD AltGrSpc             | 79.64 |
| SchizoKBD shifted-AltGrSpc     | 79.62 |
| BEAKL 4 Mod Ian AltGr 3        | 75.31 |
| BEAKL Ergo Opted 4 Mod Ian     | 74.74 |
| SchizoKBD shifted              | 74.69 |
| Ian R1 p                       | 73.98 |
| MTGap  Ergolinear Thumbshift 2 | 73.93 |
| BEAKL Ergo Opted 1             | 73.66 |
| MTGAP Ergo Thumbshift          | 73.62 |
| BEAKL Ergo Opted 4             | 73.55 |
| X6.4H Ergolinear               | 73.54 |
| Ian M2 tweak                   | 73.40 |
| Dsend Ergo Thumbshift          | 73.36 |
| BEAKL Ergo Opted36             | 73.29 |
| X6.3H Ergolinear               | 73.26 |
| BEAKL Ergo Opted 4 Alt         | 73.24 |
| Vu Keys Ergolinear             | 72.89 |
| BEAKL Opted36                  | 72.53 |
| BEAKRAK Mod Ian                | 72.51 |
| BEAKL ErgoLinear 5             | 72.49 |
| BEAKL Matrix EZ                | 72.35 |
| BEAKL Ergo Modified            | 72.28 |
| X2 Ergolinear HspaceAltgr B    | 72.17 |
| X5 Ergolinear                  | 71.60 |
| BEAKL Ergo Opted 3             | 71.51 |
| Ian X4                         | 71.39 |

But if we take the first few and run them on Den1 scoring, we get

Code: [Select]
#1 Seelpy 1.22 Ergolinear 82.99 +0%
#2 Seelpy 1.17 Ergolinear 83.11 +0%
#3 Seelpy 1.8 Ergolinear 84.26 +2%
#4 Seelpy 1.4 Ergolinear 85.14 +3%
#5 BEAKL 4 Mod Ian AltGr 3 99.37 +20%
#6 schizoKBD-shifted 100.62 +21%
#7 schizoKBD-AltGrSpc 121.84 +47%
#8 schizoKBD-shifted-AltGrSpc 121.97 +47%
#9 Personalized 127.68 +54%

And on Den3

Code: [Select]
#1 Seelpy 1.4 Ergolinear +0% 102.30 41.64 26.90 0.09 33.68
#2 Seelpy 1.8 Ergolinear +0% 102.59 40.17 27.88 0.09 34.46
#3 Seelpy 1.22 Ergolinear +2% 104.52 40.73 28.64 0.19 34.97
#4 Seelpy 1.17 Ergolinear +2% 104.56 40.76 28.64 0.18 34.98
#5 BEAKL 4 Mod Ian AltGr 3 +11% 113.24 62.80 22.71 2.43 25.30
#6 schizoKBD-shifted +14% 116.68 63.37 23.48 2.99 26.83
#7 schizoKBD-AltGrSpc +24% 127.17 77.75 28.57 1.31 19.53
#8 schizoKBD-shifted-AltGrSpc +25% 127.38 77.97 28.57 1.31 19.53

Apart from the order, I'm looking at the percentage differences between top and others, the differences are much starker on Den1.

IIRC earlier versions of Den3 also produced a different order of results with BEAKLs on top ... what did you change between that and current version of Den3?

thanks, Ian

iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #745 on: August 29, 2017, 05:07:07 AM »
@Den

As far as differences between Den 1 and Den 3 go... if I want to understand the changes, I only need to compare the two analyzer.js, right?

Was doing some tests on Den 3 and Seelpy 1.5 was consistently beating Seelpy 1.22 (latest version), whereas on Den 1, 1.22 was best. So want to see why... :-)

Thanks, Ian
« Last Edit: August 29, 2017, 05:56:23 AM by iandoug »

Den

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1039
  • Selina is my Superstar
    • View Profile
    • Amuseum
Re: Balanced Keyboard Layout
« Reply #746 on: September 07, 2017, 08:05:54 PM »
@Den

As far as differences between Den 1 and Den 3 go... if I want to understand the changes, I only need to compare the two analyzer.js, right?

Was doing some tests on Den 3 and Seelpy 1.5 was consistently beating Seelpy 1.22 (latest version), whereas on Den 1, 1.22 was best. So want to see why... :-)

Thanks, Ian

Den 3 puts much more emphasis on finger weights. especially punishes pinkies. Finger usages also more relevant; closer to distance scores.

Den

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1039
  • Selina is my Superstar
    • View Profile
    • Amuseum
Re: Balanced Keyboard Layout
« Reply #747 on: September 07, 2017, 09:22:20 PM »
Read other peoples' thoughts on finger weights. Some treat top-row middle and ring fingers as extended home row, because of natural curvature of the hands. Some don't mind stretching index to middle columns; ultimately still not as good as bottom and top row index.

Anyway, retweaked Opt, and got this:

Code: [Select]
jhau, gmrpz
qoeiy dstnb
/k'.x wclfv

(on Den 3) Higher distance offset by both lower finger usage and same -finger repetition.

Even lower usage on pinky (yay!). Less than 1% typed by the left pinky. H now on top ring; needs getting used to, particularly HE bigram, but any ring finger key is really faster than even home pinky. OEI on home row feels more Dvorak. Now left ring finger will do more work for OH, both common letters.

As for consonant district, this has reduced same finger usage (on Den 3) than previous BEAKL layouts. Interestingly, GMP/WCF are interchangeable between top and bottom rows. I prefer G on top row--NG rolls feel better like this. MP/CF tend to appear on the same row. C on bottom is slightly more comfortable, rolling together with N and T.
« Last Edit: September 08, 2017, 02:52:52 PM by Den »

iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #748 on: September 07, 2017, 10:09:18 PM »
Anyway, retweaked Opt, and got this:

Code: [Select]
jhau, gmrpz
qoeiy dstnb
/k'.x wclfv

On which form factor? ANSI?

thanks, Ian
« Last Edit: September 08, 2017, 02:53:06 PM by Den »

iandoug

  • Hero Member
  • *****
  • Posts: 622
    • View Profile
    • Keyboard Design
Re: Balanced Keyboard Layout
« Reply #749 on: September 08, 2017, 02:46:50 PM »
Played around a bit on ANSI. You won't like it because it has the H on the pinky, but I was stuck between my S2 layout and yours... (score around 139 on Den3).
Then I moved the H and got a fright ... some of the metrics are better, some not.

Can you please add Fira Sans or Hack to the font options? (for code).

BTW this mod also scores better on Den1, but not as well as S2. (all tests done with Alice only)
So Den3 scoring model clearly a different kettle of fish. I've finished running all the tests on Patrick's and Den1 scoring, need to do the whole exercise again with Den3 ... is it now considered stable, or are you still tweaking?




JYIU, GRCFZ
HOEAQ DTSNB
/K'.X WMLPV



attached.