Gnome Shell. Fuck you. Fuck you Gnome Shell.
And especially fuck you, Gnome developers. You're brilliant programmers, but brain dead when it comes to user interfaces. Fuck you.
The Gnome programmers are clueless and should be ashamed.
I promise I'll stop swearing, but I had to get that out of my system. Besides, I think it's justified because of the months of lost productivity. And the clear inanity of the whole thing.
I have used Gnome 3 for months and I can now safely say that it is completely broken. Let us see why.
I do want to start with countering the oft-heard argument that all chance is received badly in the beginning. However, if it's still bad after one year and four months, and I still can't use it after trying my hardest for months on end, it's just bad in itself. That argument just doesn't fly anymore after almost one and half year. Besides, you should know something is wrong when you get your own Wikipedia article.
With extensions, I'm trying to fix Gnome. I have 15 extensions installed and 11 of them activated and I'm closing in on perfection.
Absolute necessities:
Without these, the Gnome Shell is not usable.
Useful extensions:
Not necessary, but immensely enhance the Gnome experience
But the documentation of Gnome Shell is horrid. I really shouldn't have to dive in the source that often. Yet some rare comments in the source look like they're documentable.
Isn't this Javadoc? Where is the corresponding documentation?
What the hell is the CSS property spacing? I don't mind them adding new properties, but it is nowhere documented what it exactly does. Is is the spacing between elements? Probably, but how to know for sure? And what would then be the difference be between spacing and margin? I found some vaguely relevant information in the GTK+ source, but I should not have to do that.
Not only is a lot not documented, it is also not even implemented. With the new window manager, Mutter, there is no way for me to know when a window defocuses or pin it. I'm still researching, but it's not looking good for Gnome here.
And especially fuck you, Gnome developers. You're brilliant programmers, but brain dead when it comes to user interfaces. Fuck you.
The Gnome programmers are clueless and should be ashamed.
I promise I'll stop swearing, but I had to get that out of my system. Besides, I think it's justified because of the months of lost productivity. And the clear inanity of the whole thing.
I have used Gnome 3 for months and I can now safely say that it is completely broken. Let us see why.
I do want to start with countering the oft-heard argument that all chance is received badly in the beginning. However, if it's still bad after one year and four months, and I still can't use it after trying my hardest for months on end, it's just bad in itself. That argument just doesn't fly anymore after almost one and half year. Besides, you should know something is wrong when you get your own Wikipedia article.
Bad interface
So let's talk about the eponymous shell itself. No dock, and no task bar. The only way to manage running applications is to open an overview that shows miniatures of all open windows. The idea being that you shouldn't get distracted when doing work on an application.
A sound idea perhaps, but it doesn't work out. For developing, I need to have a minimum of a GVim session, a browser window and a few terminals open. It's completely impossible to manage all this without a list somewhere of open windows. Ironically, the overview ends up distracting me because I have to look through all the tiny windows to find the one I need. They don't even take up all possible screen space. Especially distracting is that they get thrown in a different order when windows close and open, something which would never happen to a task bar or dock. Often I (subconsciously) remember the function of a window by remembering its place on the dock.
A sound idea perhaps, but it doesn't work out. For developing, I need to have a minimum of a GVim session, a browser window and a few terminals open. It's completely impossible to manage all this without a list somewhere of open windows. Ironically, the overview ends up distracting me because I have to look through all the tiny windows to find the one I need. They don't even take up all possible screen space. Especially distracting is that they get thrown in a different order when windows close and open, something which would never happen to a task bar or dock. Often I (subconsciously) remember the function of a window by remembering its place on the dock.
You know who can work without taskbars or docks? Tiling window managers! These are wonderfully productive systems that don't try to follow the same metaphor like stacking window managers do. Gnome Shell takes something from both and ends up half-assed. Besides, the desktop metaphor might have been a good idea 30 years ago to convince your boss to invest in computers, I think we can all agree it wasn't a good idea then and it is not a good idea now. Places where user interfaces have developed anew, like on the web, follow completely different paradigms.
The also broke Alt-Tab. Alt-Tab doesn't cycle through apps anymore, it cycles through windows. To cycle through the windows of a single app, you have to use Alt-².
The also broke Alt-Tab. Alt-Tab doesn't cycle through apps anymore, it cycles through windows. To cycle through the windows of a single app, you have to use Alt-².
Bad implementation
Heaps of stuff is still not implemented and might not ever be for arcane reasons. There's also a disturbing amount of bugs. Given the huge changes they made, that is understandable but I never wanted these changes in the first place.
I'm not completely opposed to the idea of sane defaults, but I should be able to change my font and the font size. Or decide what my laptop does when I close the screen. Things like this are basic in every desktop environment out there for every operating system.
Gnome Shell also crashes way too often. That is especially unforgivable given that most of it runs in JavaScript, which is awesome, yet managed languages cannot crash like system languages do (Segmentation Error). This must mean the developers never invested in graceful degradation.
It is also extremely annoying to get the Sad Computer, "Something has gone wrong", and the when I press the overview key, everything looks fine. I can understand that even with a shell, a window manager and several applications there might still be problems, but letting me see that is just mocking me.
Bad or inconsistent support for Unicode. Take a look at this screenshot. Both of these should be the Cyrillic Capital Letter Я. The window list title displays it correctly, though the label on the right side prints Đ¯. In UTF-8, Я is encoded as 0xD0 0xAF. For some reason, I think Gnome wishes to interpret this as ISO/IEC_8859-4 (Latin 4) or similar. I have no idea how they manage their translation in Russian, Japanese, Chinese and other extremely common languages without Latin alphabet and frankly, this shouldn't be a problem I should fix. My locale clearly states en_US.utf8 and that should be supported.
Gnome Shell has also destroyed my working directory of the Bottom Panel extension I was working on. That is actually quite dangerous. If there's no way for me to safely work on extensions, why would I take the risk of losing a lot of work? Why should I trust it won't do the same to other directories?
I'm not completely opposed to the idea of sane defaults, but I should be able to change my font and the font size. Or decide what my laptop does when I close the screen. Things like this are basic in every desktop environment out there for every operating system.
Gnome Shell also crashes way too often. That is especially unforgivable given that most of it runs in JavaScript, which is awesome, yet managed languages cannot crash like system languages do (Segmentation Error). This must mean the developers never invested in graceful degradation.
It is also extremely annoying to get the Sad Computer, "Something has gone wrong", and the when I press the overview key, everything looks fine. I can understand that even with a shell, a window manager and several applications there might still be problems, but letting me see that is just mocking me.
| Inconsistent Unicode support |
Bad documentation
An amazing thing about the new Gnome is that most of the shell is implemented in JavaScript. Together with the half-baked developer console, it's really fun to tinker with just about everything.With extensions, I'm trying to fix Gnome. I have 15 extensions installed and 11 of them activated and I'm closing in on perfection.
Absolute necessities:
Without these, the Gnome Shell is not usable.
- Alternative Status Menu
- Why is there no Power Off button in the Menu?!?
- Remove Accessibility
- Obviously accessibility is necessary, but I don't need that button there
- Workspace Indicator
- Duh!
- Bottom Panel (still in development by your truly)
- Coming soon! Check it out on Github!
- Alternate Tab
Useful extensions:
Not necessary, but immensely enhance the Gnome experience
- Dash And Overview Click Fix
- Personal preference, but I'm personally vastly more often opening new windows rather than focusing existing ones. Especially now that I have a Bottom Panel
- Advanced Settings in UserMenu
- This shouldn't be default, Advanced Settings shouldn't exist at all. Changing my font isn't an advanced action!
- System Monitor
- I needed it on my old dual core laptop, but now I can run everything so it's less of an issue.
- Message Notifier
- Still testing out. People don't talk that often to me.
- Window Options
- Lame Extensions Manager
- Not everyone needs this, but I do for the moment.
But the documentation of Gnome Shell is horrid. I really shouldn't have to dive in the source that often. Yet some rare comments in the source look like they're documentable.
// addChrome:
// @actor: an actor to add to the chrome
// @params: (optional) additional params
Isn't this Javadoc? Where is the corresponding documentation?
What the hell is the CSS property spacing? I don't mind them adding new properties, but it is nowhere documented what it exactly does. Is is the spacing between elements? Probably, but how to know for sure? And what would then be the difference be between spacing and margin? I found some vaguely relevant information in the GTK+ source, but I should not have to do that.
Not only is a lot not documented, it is also not even implemented. With the new window manager, Mutter, there is no way for me to know when a window defocuses or pin it. I'm still researching, but it's not looking good for Gnome here.
Conclusion
Gnome 3 is a horrible mistake.
However, given that a large part of the userbase and the developers feel the same, I think part of this mess will be fixed, and I will be able to solve most of my problems with extensions.
PS:
I know it's supposed GNOME. I say Gnome because I don't like shouting. It hasn't been an acronym for 15 years, get over it and start spelling it as everyone pronounces it.
This judgement has been based on Gnome 3.2. Has the situation improved? Let me know.
This judgement has been based on Gnome 3.2. Has the situation improved? Let me know.
No comments:
Post a Comment