Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Predictive next letter scanning #460

Open
willwade opened this issue Dec 20, 2024 · 2 comments
Open

Predictive next letter scanning #460

willwade opened this issue Dec 20, 2024 · 2 comments

Comments

@willwade
Copy link

I was giving a lesson yesterday on scanning interfaces in aac and demonstrating your take on Huffman encoding. It’s neat. I I’ve been wanting to do a predictive scan order for a while. This is a demo written v quickly in vanilla js. Note we use ppm js for the language model. The training data is v small (you’ll see it in the repo) but it’s neat as it suppers any language. Note we have a quasi correction and prediction technique going on too.

What I was wondering - is this doable in asterics?

https://github.com/willwade/PredictiveScanningDemo

Demo https://scanningmvp.netlify.app/

@klues
Copy link
Contributor

klues commented Dec 20, 2024

So if I understand it correctly, you're offering the most probable letters first and do normal scanning afterwards?
While I like the idea, I'm not sure if it will be efficient in real work scenarios. I think if someone aims to become fast at a specific input method predictability is quite important in order to make it possible to automate things by getting used to it.

So I would guess that a keyboard layout ordered by letter frequency would be much better, since it's static, predictable and not changing everytime. The predictions of your demo change everytime, so it's some mental load each time to check if it suggests the correct letters.

I've created this layout ordered by frequency in the AsTeRICS Grid default config some time ago:

image

However, once I did some test runs on efficiency for different input methods and keyboard layouts for myself and I think I was fastest with row / column scanning on the standard QWERTY keyboard and not in any sophisticated Huffman coding / alternative keyboard layout - probably exactly because of the fact, that I know QWERTY and row/column scanning is very predictable and therefore allows high speed.

So to answer your question: it's not possible right now in AsTeRICS Grid, could of course be implemented, but I don't know if it actually will help people to type faster.
(pretty sure you didn't expect such a long answer that fast 😄 )

@willwade
Copy link
Author

willwade commented Dec 20, 2024

Yeah I hear you. The bottom line - does it work? I think we can calculate efficiency savings mathematically pretty easily. Although it does somewhat depend on whether you use word predictions etc. but as you say - it’s whether some does just use motor planning or heavily rely on visual cues.

Nb. Back story

But yes. The real thing to do is some analysis of this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants