Yes, if you don't already, learn basic command line very well, with stderr/stdin/stdout, pipes, sed, grep, find, cat, make, etc. etc. You'll then thrive in Linux, and it will help you with OSX, too.
I guess what I meant was more that I don't understand how Linux the OS works, not how to work in Linux?
For example, if I do something and it doesn't work, I want to see something that went wrong. This could show up:
1. In stdout/stderr 2. In a logfile specific to that software, somewhere on my computer 3. In an aggregated logfile somewhere on my computer 4. Nowhere, but will do 1, 2, or 3 after you enable something in a config file or cli parameter
This all assumes that if there's something you have to look up (like where it logs files to), you can figure it out based on the man page or website or inspecting your filesystem, and then it actually logs some actionable information on the problem.
I've just come to terms with the fact that everything, no matter how simple it should be, is an ordeal the first time I do it. I just set aside time to research and make notes.
Just install Ubuntu. Ignore everyone saying Ubuntu is a kiddy OS ("All you need is X, Y, Z-ix"). Ubuntu is Linux Windows (not really, but it is pretty hard to mess up).
Neon or openSuse is more Windows-like IMO.
Stick with Debian and Ubuntu. And more Debian, going forward.
I use Debian for servers though.
Indeed every time I think of getting a new laptop or desktop, I try to do research into how well Linux will run on the hardware. Thankfully there seem to be a decent number of laptops that have Linux preinstalled now.
As much as I enjoy tinkering, even after using Linux for a while I still don't have a strong understanding of how things work, and it's frustrating to be forced to tinker when my intention was to get things done.
Perhaps I need to dedicate more time to understanding how things work?