I will start out by saying that this isn't a post about bashing Linux or DEs; if anything, it's a cry for help because I want to be able to use Linux daily on my workstation.
I've been using Linux on my servers for the past decade without any issues — ever, regardless of the distribution. It has always been rock solid and stable, exactly as it should be. Linux on servers has made a name and image for itself by just working and by being stable, reliable and rather maintenance-free.
I cannot however say the same about desktop, BUT Linux itself isn't the issue. Every few months I get the itch of wanting to try to make it work. It always comes back, "what if it's good now?", "what if something revolutionary got released that fixes all the shortcomings?", but while it is getting slightly better every time, it's still unusable. I've concluded that the culprit comes down to the Desktop Environments. Linux itself, be it Debian, Arch or anything else, isn't the issue. It's the desktop environment which breaks the deal in multiple ways, such as:
Laggy desktop — Tried multiple DEs and they each have their own issues. KDE and XFCE came close, but KDE is generally unresponsive, and XFCE is laggy. It's always some sort of an issue that it's either related to something I can't fix, or some obscure package that's supposed to "fix" it, but I cannot find it, or build it, or it just doesn't work etc.
Generally unresponsive DE — The windows, menus or any other random elements are unresponsive. It could be that dragging a window to the top of the screen to maximize it is unresponsive/takes a lot longer to maximize, or that the start menu just takes 5 seconds to pop up at times etc.
Just weird issues — random black screens, unreliable random behavior (without changing anything, desktop/visual things just break). Things such as the display order becoming random every now and then, or the main display being changed, or random white/black artifacts just being stuck on the screen and so on.
The things mentioned above don't even include the still-forever infamous issues regarding the lack of software support and gaming, but I'm willing to cut my losses there by going through the trouble of either running Windows in a VM or dual-booting. As long as I can get my work done, I don't mind that.
I could go on about things that aren't as they should be for hours, but I think I got my point across. I've tried countless distros with essentially all desktop environments currently available, on both X11 and Wayland. I was really hoping Wayland would magically bring fixes to all my issues, but turns out even less things support it due to it being "too new", and X11 being "too old" and inefficient. I've stumbled upon threads ending with the explanation that X11 just caps the framerate of your DE to the refresh rate of your monitor with the lowest refresh rate (yes, I tried kwin-lowlatency, does not work) and just obscure stuff like that with no practical next-step or something practical I can do or go off of.
I'm at a loss here, I see people on the internet talking about how good desktop Linux is nowadays and how stable it is, how you can finally use it daily, but I just fail to understand how. Are their standards too low or are mine too high? I can only speak for myself, and I don't consider my standards to be too high. I just want my machine to perform as it should and not be limited by software, because the hardware definitely has the horsepower to power it all and not have a god damn laggy desktop experience:
CPU: 9th generation i7
GPU: RTX 2070 8GB
RAM: 16GB dual-channel
Even then, it's always been like this even on previous machines. Same on an older decent machine I have, running a 7th gen i7 and a GTX 970.
Or is it just an illusion? The fact that the desktop Linux community has been used to so, so much worse in the past, and now that it's becoming better I've fallen under the impression/illusion that desktop Linux is up to standard for daily use...? I simply don't get it. As long as Windows, as bloated as it is, can run "up to my standards" and enable me to get my work done efficiently every single day, as well as play games, why can't desktop Linux do the same in the context of so many people saying it's so good nowadays? Where's the disconnect?
I will mention that I'm very open-minded when it comes to the way I use my computer, my workflow, apps etc; I just fail to understand how and why the experience is so poor. For example, on KDE, so many panels, menus, windows waste so much space on the screen. When you right click on your desktop, the animation makes the menu lag and if you move your cursor downwards slightly while the animation is happening, even without releasing it will choose the option that your cursor would've hovered over, giving a choppy effect to the whole thing. I get that you can tweak and change all of those, and I have, but it feels wrong. When I'm using a linux desktop, it doesn't feel like I'm interacting with the thing I'm seeing. It feels like there are 3 middlemen carrying my action back and forth, causing an unresponsive feeling. I cannot say the same about Windows. When I'm on Windows, I have the feeling that the window I'm moving is actually there, moving in real time. When I click on a menu, or scroll, or interact with any GUI element, I know what to expect and I know what is happening with it. When something freezes or is lagging, I understand what is happening under the hood and I know how to proceed to let it think. It's a weird thing to explain but it feels very weird and wrong on Linux.
I have of course tried various DEs, various drivers, tweaks, customizations and everything under the sun, but in the end it always ends up being either laggy or seriously unstable.
I'm a software developer and, by definition, a power user — I work with lots of heavy workloads, large files and resource-intensive applications all day. In my free time I like to play some games from time to time, but on my adventure of trying to make Linux work, I haven't even gotten to gaming because of the aforementioned.
Sorry for the long post, but it's been a long time that I've been thinking about these things and now they came out all at once. I really want to understand what's happening and if it's possible to make it work. I think this goes without saying, but this isn't a post meant to bash Linux, DEs or anything in particular. It's just a conglomerate of frustrations that have been piling up because I just don't get what is not working in this whole scheme. The point of this post is to open the discussion and help me understand what is not working and why. If you've read the whole thing, thank you and I hope we can find answers.