Things on Windows and Mac rarely just work, especially when you’re talking about kernel extensions. In fact, one of the first things you do when troubleshooting a Mac is to start up without extensions by holding the shift key.
And this is almost entirely the fault of the hardware manufacturers. They could write drivers for Linux that would work as well as their drivers for Windows. They don’t do it, so amateurs have to reverse engineer the hardware and try their best to get it to work.
If, like with Mac and Windows, hardware manufacturers offered actual support for Linux you would not see these issues. The problem isn’t with Linux, it’s with the hardware makers.
I will agree that smartphones have made people know less about how computers actually work while increasing usage. And this is because they’ve obfuscated things to the point where they “simply work” with “minimal effort.” Maybe we should stop doing that.