There's no concept of drivers in Linux aside from proprietary drivers for NVIDIA/AMD GPUs which are separate packages: almost all drivers are already either in the kernel or various complementary packages (like foomatic/sane/etc).
I would say this is a feature rather than a bug.
It's impossible for the user to understand whether their hardware is indeed supported by the running Linux distro and whether all the required drivers are indeed installed and working properly (e.g. all the firmware files are available and loaded or necessary printer filters are installed).
Your hardware generally either works or doesn't work. If you are looking for Linux-compatible hardware to purchase, you'll need to do a few internet searches first, which is the same as any other OS.
No high level, stable, sane (truly forward and backward compatible) and standardized API for developing GUI applications (like core Win32 API - most Windows 95 applications still run fine in Windows 10 - that's 24 years of binary compatibility). Both GTK and Qt (incompatible GTK versions 1, 2, 3, 4 and incompatible Qt versions 4, 5, 6 just for the last decade) don't strive to be backwards compatible. The Qt company also changed the licensing model for their toolkit which makes using the library under Linux problematic to say the least.
Complete misunderstanding of how Linux is distributed. The distros keep your software working with newer versions of Gtk or Qt, and deal with licensing. It's not something that end users need to worry about.
Also the obsession with "screen tearing"! I just don't get this frequent objection. I watch videos often in X11 which is supposed to be impossible because of this "tearing" thing, but somehow it doesn't bother me at all.