I like a good extension ecosystem. For the mothership, GNOME, you can only implement one idea, maybe include a couple ideas but the boss or the group has to decide upon one idea. With extensions, everyone, even a maintainer herself, can write one. You do not have to talk to someone else. You can just do it.
As long as the api is well written, extensions are better than having one big mothership trying to accomplish everything and pleasing everyone. Imagine having an IDE without extensions. You have only the opinionated version of the main dev. With extensions, everyone can put his flavor on top of it without asking.
Edit: don't ask me why extensions and especially extension manager isn't included in GNOME itself.
IDK man, I’ve had rather poor experience with extensions. At least in gnome they pretty much filled in for some feature that should have been there but it wasn’t hip enough for GNOME (ie systray).
Ever since gnome 3 came out I found myself time and time again in the loop where something is missing, I build myself some smorgasbord of extensions to make the experience the way I want it, then a new gnome minor is released and some of those extensions are now abandoned / incompatible with others / suddenly buggy / behaving differently so I have to start over. It’s not very different in kde, extensions get abandoned and break in there too, but I never had to have more than two at a time.
When it comes to DEs I’ve learned over the years to stick to the core as much as possible because extensions are just not reliable, which is also the reason why I don’t use gnome anymore.
I don’t think the analogy with IDEs really holds: language extensions in major IDEs are usually maintained with some degree of professionalism, for example the Ansible extension for vscode is maintained by Red Hat. It’s a very different ecosystem from the one made of pet projects started by people who one time felt something was amiss in their DE, and pray the gods they still have that opinion and care enough.
Edit: just to be clear I’m not dunking on this extension or extensions in general, I’m just explaining why somebody would want to avoid relying on them too much
Yeah that's my main issue with them too. I like the idea in theory, but in practice I find it tends to create this weird environment where something's always broken because everything updates on a different schedule and nobody cares if their update breaks anything else.
I use Gnome as my main driver, have for the last 7-ish years, and on and off before that, so I'm no Gnome hater by any means, but I've been using Linux since 1996. Part of what I LOVED was absolute control. I used 1990's themeable Gnome and then VTWM as my primary window manager because you could script EVERY aspect of your experience (I got rid of title bars for example). Modern Gnome meets my daily driver needs best, but I use KDE where I can elsewhere because it's just fighting against me less for ideological reasons. I get you need a like philosophy for a project like Gnome to not go crazy, but like... I'd honestly be fine if you could reliably have your basic extensions survive updates, but a random set of extensions that make your desktop how you like die for x months (or maybe permanently) with EVERY new version, and yes, eventually an equivalent or better extension will come along, but a lot of why I like open source is NOT having my preferred windowing settings killed by committee whim with updates. I lag behind updating which helps, but it's no panacea. If the extensions for basic window manager features that should be there like theming and such, it would be a better user experience because you would have things you can rely on not changing per release.
ya i also use gnome and kinda just wish the customizations were built in. but i have to say idk what it is but gnome just seems to feel so much smoother. Like its animations, and app switching experience. I think its way of doing things is perfect for a laptop, and i prefer closer to the typical windows layout for a desktop. On a laptop the screens a bit small so i auto hide the dock, and hide the top bar and just run everything in full screen. If i wanna check the time or access top bar menus i just tap the super key real quick then tap it again when im done. I use pretty few extensions, but i do worry sometimes ill get fucked by an update lol. So far so good tho for me.