I find GNOME’s “must be perfect” approach to accepting new code counterintuitive.
One of the largest benefits of having a clean architecture is increased velocity and extensibility. What’s the point in nitpicking over perfection when it takes literally years to merge a feature, arguably one considered basic and essential by today’s standards?
KDE is on the other side of this pendulum, integrating everything and resulting in a disjointed, buggy disaster.
Where’s the middle way? It used to be XFCE. What is it now?
“Bro just use sockets lol” completely misses the point. When you decide you want message based IPC, you need to then design and implement:
Message formatting
Service addressing
Data marshalling
Subscriptions and publishing
Method calling, marshalling of arguments and responses
Broadcast and 1:1 messaging
And before you know it you’ve reimplemented dbus, but your solution is undocumented, full of bugs, has no library, no introspection, no debugging tools, can only be used from one language, and in general is most likely pure and complete garbage.
I’m amazed people are still using Mercurial. I worked on a few hg projects about a decade ago and it wasn’t a very good experience. It was easy for people who used subversion, but if you were even halfway familiar with git you just missed a lot of functionality.