Realized I’d been handling non-US keyboards in a dumb way, and there’s a much simpler solution that should instantly make most keyboard layouts work.
Previously, I was purchasing different keyboards and enumerating the keycodes key by key to find the correct JS code mapping to HID code mapping.
It turns out that the code property on JS keyboard events indicates the physical key regardless of how it’s labeled.
e.g., On an AZERTY keyboard, the equivalent of the Q key is labeled A, but it turns out that regardless of language or layout, the key in that position always generates a keyboard event with code=KeyQ.
I should be able to enumerate the keys once and it should “just work” for all keyboard layouts because it’s the OS’s responsibility to figure out how to map the key at a given physical key position.
Panicked about two separate inventory shortages that affected all of my products.
Fortunately, everything was resolved, and we only had to postpone one unusually large order.
It’s focused on books, but a lot of the lessons apply to video courses as well.
I’m really enjoying it. I recommend it if you’re thinking of writing a book.
It’s an amazing value at $24, as it includes a personal consultation with Rob, access to his author community, and a physical copy of the book when it’s published in paperback.
Misc
Returned the buggy routers from my multi-month search for a good router.
Had video calls with two separate interesting founders who reached out to me.