It became really annoying to press tab 5 times just to get to the app I need.
If you’re interested in technical writings, I recently wrote about my journey to creating rcmd here: https://alinpanaitiu.com/blog/window-switcher-app-store/
The dock stops being a problem once you set it to automatically hide and find ways to use the mouse less. Shortcat is another tool that helped improve my mouseless workflow, and is kinda of like a vimium for the whole system but with fuzzy search: https://shortcat.app
But why doesn't the base macbook install support more of these features? I was led to believe (perhaps incorrectly) that I wouldn't have to tinker with a mac as much as I have with Linux. (I suppose that fine tuning keyboard shortcuts is very different from trying to desperately fix a video or wireless driver)
I assumed that apple optimized for a good user experience. Are "power users" (or even people that just want alt tab) not included in apple's UX goals?
You've actually stumbled upon the least configurable components of macOS: the Window Manager, and the Desktop Environment.
On Linux you can choose your own, and you have so many different paradigms. I still miss i3 wm..
On macOS you don't have this choice, and you have to use apps to get to the workflow you need.
I was a Windows power user for a few years, and now I use both Linux and macOS daily since 6 years ago. In the end, I feel more productive on macOS nowadays, mostly because there are many quality apps to get anything I want done, I don't have to worry that basic OS function will stop working when I update some dependency, and there are some macOS-native features that really improved my workflow.
For example I didn't know how useful Live Text would be until the first time I noticed that Command-F search in Safari also searches text in images, or when I double clicked on a phone number and I could just call it with my iPhone (which was in another room) but keep talking from the MacBook.
I can't even imagine how I would do that on Linux (surely doable, but nothing beats "already done and usable"), and it's just one of many features like that.
I will end with some more software recommendations: yabai for window management (https://github.com/koekeishiya/yabai) and skhd for hotkeys (https://github.com/koekeishiya/skhd)
They are more Linux-like, using config files, free and easy to forget they aren't native.
But if this is the case, why do so many developers buy and enjoy macbooks? It seems ridiculous that you have to pay such a premium for a nice laptop, and then find random 3rd party applications to make it work the way you want.
If I wanted to endlessly tinker then I'd be happy with Linux. I was under the impression that macbooks would "just work". I've also been disappointed by poor UX in some cases, like randomly showing "enter your password" dialogs.
It's just a matter of redefining "just works" as "just works, as long as I adapt my workflow and UI preferences to The One True Apple Way".
I haven't yet looked for a "how to effectively use mac keyboard shortcuts" comprehensive guide, instead I've looked for things as I need them. I can see the benefits for introducing "cmd" where "Ctrl" is usually used on other operating systems.
But I'm very disappointed by cmd tab and cmd backtick. Often I want to press a single keyboard shortcut to switch between three windows or so: usually a few browser windows, a terminal, and an IDE. cmd backtick switches between windows of the same program, cmd tab switches between programs.
Can any more experienced mac user tell me the way to do this properly? How to switch between a few separate windows, like alt tab, without having to think about what program they are?