It's really humbling and everyone should do it every now and then. An old coworker coined "mouseless monday mornings" where we'd unplug our mice(?) until lunch to start each week. We all learned a lot about how to be more efficient in our IDE's, learned tons of useful OS and browser shortcuts, observed tons of accessibility flaws in our product, and all of that during the dullest hours of the week.
One is so stupid, to learn some "useful shorcuts" which are existing only until some megacorp is going to change anything in their software (OS, IDE, browser has almost none of them). I am a huge proponent of learning touchtyping, then vim and... nothing more.
Windows used to be awesome at this. The norm (and expectation) was for programs to provide keyboard shortcuts for all sorts of things. They were gently surfaced right where you needed them - e.g. underlines on the menus, and accelerator key shortcuts listed beside menu items and in mouseover captions. That made them natural to learn and easy to adopt.
Then some dolt at Microsoft decided those cues were "clutter", and hid them by default.
A new generation of programmers grew up not knowing about, or not prioritizing, the keyboard.
I remember a junior salesguy once watched me use my computer for a few minutes and was blown away by the speed at which I did things.
This is one of the things that pisses me off about MacOS. Every other majot OS out there at least offers a good failsafe keyboard navigation built in to each UI component. In a pinch, the keyboard is your friend, at least until your pointing device is back up.
MacOS: lol, sorry, bluetooth settings require a pointing device to add a new one. Keyboard navigation? Sure. It worked up until this part, but we didn't bother to allow the add button to be selectable. Why? Reasons.
To your credit, this does indeed work, but I won't retract my point. It's super-kludgy to go through everything like this, and I definitely can't leave it on all the time. I'm spoiled by the innate tab, shift-tab options of other operating systems. Ironically, when I tried to turn on the accessibility feature just through keyboard nav of Settings, I failed to get to the checkbox (there is at least a global Accessibility shortcut...if it's switched on).
I'm at a loss to explain why this particular navigation issue shows up in the Settings app. Other, less critical parts of the OS actually work fine.
Hilariously, I was once trying to install MacOS to a HP university laptop, hackintosh style, and got into a situation where after hours of kernel panics and boot configurations I finally got far enough to see the MacOS install screen on the display!
I did not have working trackpad or usb, but undeterred I continued with keyboard navigation through the install menu, going further and further, partitioning and formatting drives and whatnot, until finally I hit the language selection dropdown, one of the last steps in the install process. This screen, although simple, did not have keyboard accessibility. I tried everything I could but never got the mouse to work, and was stuck at the language select. Frustratingly the screen also played some weird pop music full blast which I never was able to lower the volume of.
I still think somehow they knew, that they were mocking me, knowing that the trackpad would always work on a real mac, and only kids with too much free time would be stuck on the final step of the install process...
Interesting. Did this change in the last decade? I remember MacOS as being very keyboard-friendly out-of-the-box and awesome for automating GUI. But then again, the last MacOS I used was 10.6, around 15 years ago. And I heard automating GUI suffered in recent versions. So they lost on the keyboard-abilities too, I guess.
The worst for me is being able to select the non-default option in an alert window. Sometimes CMD + 'the first letter of the word in the button' works, but that's like a 30% chance. How is there not a standard for that? I'd even accept the arrow keys + Enter at this point.
Supposedly it's by design. The justification being something along the lines of "you're doing it wrong" if you have to drag the cable around while mousing.
I had a first generation Mac mini, and I was playing around with mouse settings and accidentally changes some setting that basically disabled my mouse. The problem was the button or control to change it back didn't work via keyboard. I eventually recovered but came very close to wiping the machine.
It's not ALL bad, when I recently replaced my 2012 MacBook Pro with a 2024 Air M3, I was pleased to see that Apple FINALLY allows tabbing in system pop menus for things like Save, Delete, Close and selecting those options with the Space bar. Not sure when that was added as default behaviour, but I always found this frustrating coming from Windows. The interesting thing is that precisely one app I used on the 2012 MBP - Ableton Live Digital Audio Workstation - always allowed keying through popups flawlessly - so the underlying capability was there.
I wonder if VoiceControl can be turned on without a mouse, and then one might be able to use VoiceControl to add a pointing device without currently having any pointing device.
I’ve only tried VoiceControl very very briefly and it was a bit difficult to get it to do what I meant that it should do, I seem to remember. But might be worth trying it a bit more.
If anyone is trying to reach mouseless nirvana on Windows, I maintain a tiling window manager[1] and a hotkey daemon[2] (though you can bring your own thanks to the architecture choices I made), the former of which provides a very robust event subscription system which you can integrate with using any language of your choice.
One of the cooler parts of my little mouseless ecosystem is that I automatically have different keyboard layers (QMK style) activate depending on which application is currently focused, saving me a whole bunch of time fumbling around with obscure hotkey combinations for changing layers![3]
I was forced to use my computer mouseless for a couple of months recently (due to problems with the USB ports). It wasn’t a huge issue since I had things set up mouselessly to start with: with the combination of Sway, Vimium, Emacs, zathura [0] and warpd [1] it was quite tolerable. That said, I’m happy to have my mouse back now — there’s just too many applications which assume that you have one.
Loved vimium but in the end I went for tridactyl because it combines both vimium and
firenvim while being more straightforward (just open a vim window to edit the text box)
Also to be able to have a config file in the home to commit to my dotfiles repo is great.
In addition to making changes like those described in the article, I bought a Svalboard keyboard (https://svalboard.com), which has a trackball under the phalanges of each hand. This allows the user to use their pointer with minimal hand movement. Here's a relevant video: https://youtu.be/RCXgPqlpZeM
Then some dolt at Microsoft decided those cues were "clutter", and hid them by default.
A new generation of programmers grew up not knowing about, or not prioritizing, the keyboard.
I remember a junior salesguy once watched me use my computer for a few minutes and was blown away by the speed at which I did things.
Hope what's old becomes new again!
Eg windows key right/left sometimes snaps it to half half. But sometimes to 1/4. 3/4. and sometimes to another screen.
No idea why, but seems like botched UX when outcome of keyboard shortcuts feel random to the user
MacOS: lol, sorry, bluetooth settings require a pointing device to add a new one. Keyboard navigation? Sure. It worked up until this part, but we didn't bother to allow the add button to be selectable. Why? Reasons.
https://support.apple.com/en-us/guide/mac-help/mchlc06d1059/...
Any other OS, you'll be able to at least tab around without the mouse.
I'm at a loss to explain why this particular navigation issue shows up in the Settings app. Other, less critical parts of the OS actually work fine.
I did not have working trackpad or usb, but undeterred I continued with keyboard navigation through the install menu, going further and further, partitioning and formatting drives and whatnot, until finally I hit the language selection dropdown, one of the last steps in the install process. This screen, although simple, did not have keyboard accessibility. I tried everything I could but never got the mouse to work, and was stuck at the language select. Frustratingly the screen also played some weird pop music full blast which I never was able to lower the volume of.
I still think somehow they knew, that they were mocking me, knowing that the trackpad would always work on a real mac, and only kids with too much free time would be stuck on the final step of the install process...
There was, long ago, in the Macintosh Human Interface Guidelines.
This is macOS we're talking about. You can move the pointer with your face if you want (or more likely, if you need to).
From time to time I need this to re-pair with my, very old, logitech wireless mouse, that's why I knew it is totally possible with just the keyboard.
I’ve only tried VoiceControl very very briefly and it was a bit difficult to get it to do what I meant that it should do, I seem to remember. But might be worth trying it a bit more.
Windows abandoned that from Windows 10 onwards, and Windows 11 is even worse.
Should probably check it out again and compare to how I've been using i3 since 2018 or so.
One of the cooler parts of my little mouseless ecosystem is that I automatically have different keyboard layers (QMK style) activate depending on which application is currently focused, saving me a whole bunch of time fumbling around with obscure hotkey combinations for changing layers![3]
[1]: https://github.com/LGUG2Z/komorebi
[2]: https://github.com/LGUG2Z/whkd
[3]: https://github.com/LGUG2Z/komokana
[0] https://pwmt.org/projects/zathura/
[1] https://github.com/rvaiya/warpd