Modern GUI fucking suck. Very little customization, mobile first design, GNOMEism, electron... A lot of things to dislike indeed which will of course lead to people disliking. Some even lump all of this into one thing and blame GUI in general. Those are people I call command line reactionaries.

Why command line is wonderful

When I write things people (often willingly) misunderstand what I say. No, I am not saying command line programs are bad. In fact here is a list of why they are wonderful:

Why do I write this if command line good

There is this generally held belief with some unix users GUI programs can't be good. They will make command line versions of programs purely as a reaction to the GUI version sucking. Quickly this turns to just making a command line version for everything once the black and white "GUI inherently bad" mindset kicks in. File manager? Ranger (even though ls, touch, rm... exist). Email? Mutt. These programs existence is a net positive but did anyone ever stop to think "what if we made and use GUI programs that don't suck?". Some tasks are just plain annoying to do from the command line yet the command line versions get more development and the GUI implementations are left up to beginner python programmers who can't get the most out of python yet alone use a better language. Those kinds of programmers I speak of also fall for bad software design philosophy the most. TUI programs are also kind of stuppa. They cross out a few of the things on the command line is wonderful list without getting that much closer to the advantages of GUI programs.

What to do about it

We need GUI programs that don't use libraries programmed with one desktop environment in mind. Use pure gtk and qt instead. GUI programs should work in both wayland and X11 not one or the other. No more annoying popups and treating the user like they don't know what they are doing. We need config files and customization even if its possible for the user to break it. GUI programs shouldn't be the dummy option, they should be the graphical option.