This post was made with an older stylesheet

Normally I don’t like to make big posts, but this time will be an exception and I ll write -with my poor English :)- as much as necessary.

Gnome’s Bad Communication

First of, I blame Gnome for a reason and one reason only. Gnome Foundation lacks to communicate with the public via a way that just can’t be ignored. When Gnome states something, it should immediately sound to the last person in Earth. Instead in Gnome even the biggest things are remain hidden on Mailing Lists or Planets.

Gnome’s mistake is that relies in other projects/people/pages to announce their weaknesses or incompatibilities or even their best features. For example when Gnome 3 released, it wasn’t working with ATi proprietary drivers. Gnome didn’t even bother to post on its page an explanation and a work around. We are talking about 30% of Gnome users that had a broken system and Gnome was officially acting as everything was cool.

Alright, Gnome doesn’t support closed source drivers, Gnome users are clever and found out easy what’s going on (but not through the Gnome page!), all the blaming goes to AMD for this fiasco and everyone is happy. But the fact remains: Why Gnome didn’t make its position clear by an Official Statement?

How all these are related to theming? Well, I wish we had an official announcement from Gnome: “We do not support themes and extensions for these reasons”. And the reasons exist but the announcement exists not!

Getting back to the original topic

We are moving towards the fourth (4th) Gnome3 release (3.6) and theming customization by default won’t happen. What is quite funny is the fact that jumping from GTK3.0 to GTK 3.6 many attention has been made on GTK theming and some in Shell theming. So, on one side developers are working hard to build a better theming mechanism and on the other end they don’t give support to change themes.

That leads many people to accuse Gnome for the one thing that actually Gnome isn’t. A standardized “company” product similar to Apple’s logic of “that we made, that you’ll get”. That’s complete wrong and the truth is exactly the opposite. Gnome3 is the only OS that provides so many ways for serious customization, via extensions, via themes via forking the core Shell’s JS files.

And if you still don’t like it? You can move to another open source OS that more likely will run Gnome Technologies?;)

Let’s see a story

Alba (a Gnome contributor) proposed some mockups how you could customize Gnome within Control Panel.

[1] Change Wallpapers

[2] Change Themes: Shell, Gtk and Window Theme

[1] Change Icons

[2] Change Extensions

And this is what Alba calls Dynamic Highlight Colors and you can change the Gtk-theme highlight color depending of the wallpaper color.

Alba explains:

“I know, consistency and brading are important, but i think with the current lack of customization options since Gnome 3, we are losing great potential for user satisfaction.

I won’t explain all the theory behind this - if you’re interested in UX Design you’ll know how important such emotional prodcut-attributes are - but i’ll try to explain in short, why i think we should bring customization back to Gnome 3. There are tons of research papers that point out, that the strive for individualism and self expression are really strong human needs (For a general overview see [1] & [2]) and the marketing industry knows this for ages. People want to distance themself from others, and they are willing to take some hurdles for that. You can see that on how some Windows folks behave, just get an unique desktop. They’re taking quite a risk by patching .dll files and replacing the explorer.exe with ones from unknown sources. (Yes, you actually have to do this)

I think that aiding the user for his strive for individualism and self expression could be a real advantage over OSX and Windows, additionally it would also emphasize Linux’ conception of freedom of choice.”

[1] http://en.wikipedia.org/wiki/Maslow’s_hierarchy_of_needs

[2] http://www.articlesbase.com/marketing-articles/the-importance-of-individuality-840107.html

After this, the senior Gnome developer Andreas Nilsson posts a kinda weird link (islinuxaboutchoice.com) which leads to an old discussion in Fedora mailing lists. If you are lazy to read it, Adam Jackon for a kinda similar situation -what features should be included by default- (about juju) concludes:

“But the chain of logic from “Linux is about choice” to “ship everything and let the user chose how they want theirsound to not work” starts with fallacy and ends with disaster“.

Nilsson’s comment wasn’t very helpful, he does his point clear but he doesn’t explain the reasons. Luckily, what Nilsson fails to do, Allan Day does. I think this is the very first time that someone from Gnome explains the reasons for not including a Theme Customization Option by default in public.

Allan Day Says:

“System Settings already provides background selection. Setting a tint/highlight colour could be advantageous - we’d need to discuss how that would fit into the overall design of the system settings. However, I’m dead against gtk/shell/pointer theming, as well as extensions. Some reasons for that (this isn’t exhaustive):”

Makes it harder for 3rd party application developers to target our platform (which themes/extensions do we ‘support’? do they have to test against all of them?)

Degrades the user experience - most alternative themes are relatively poor quality. We don’t have the resources to make a good set of high-quality themes

The default themes aren’t merely about aesthetics - they are designed to convey the desired user experience.

The default themes are designed to work in combination with one another - the shell theme and the gtk theme are designed with each other in mind.

Extensions are essentially unsupported. Putting them in the system settings says ‘these are supported as a part of the system’.

We already have a web site for installing extensions - this is better than what you are proposing for extensions here.

and Allan continues:

“These are all reasons why these things shouldn’t be a part of the default system. They could be a part of the tweak tool.

Just because some personalisation is desirable does not mean that everything should be customisable (I strongly disagree with Maslow on theoretical grounds, I might add). That isn’t to say that extra forms of personalisation cannot be evaluated, of course. A photo gallery screensaver is one possibility that has been discussed, for example.”

Let me make my self clear on this. I don’t agree with Allan but I understand his points. One of the biggest problems of Gnome3 themes is that they can bug your system or modify the expected behavior in an invisible way to debug the issue. For example, a GTK theme can make you unable to delete files, or a Gnome Shell theme can make the onscreen keyboard unusable.

So the real problem is because theming in Gnome is actually bad. Themes shouldn’t interfere with the system functionality. My guess is that when this issue is gone then customizing will come back to Gnome.

For me, this isn’t an issue because I already know the bugs that are caused by themes. On the other hand I know how to install and use Gnome Tweak Tool. A new user if he had a theming option, what he would do if he couldn’t move files just because a bug on the theme? What are the chances to guess the cause?

The Cool Allan Day!

I am really happy that Gnome has people like Allan. While he disagrees for merging the Tweak Tool in Control Panel, at the same time pushes the proposals for the new Tweak Tool for Gnome 3.6.. and these mockups are magnificent!

The upcoming Gnome Tweak Tool!

A reset to default option for all themes and extensions!

[1] Choose what will be visible on the desktop

[2] Scaling factor of fonts was removed because you can set the font size and wasn’t working very nicely anyway

[1] A keyboard layout that overrides the default system layouts. Handy for quickly add/remove layouts

[2] An access to laptop’s Lid power settings

[1] That’s great! You can finally customize and save themes like Gnome2!

[2] And this is how you can customize it. You can set from the top drop menu: Controls, Icons, Cursor, Pointer, Shell and Window.

[1] Set the behavior of windows

[2] That’s one of my favorites, yes! you can have a fixed number of workspaces!!

The end

On the end, I want to ask Gnome Foundation to make available a FAQ with all the topics that users aren’t satisfied with and quickly explains the reasons behind them.

And for the heroes that came all the way down here, a small gift: The Gnome 3.4 Cheat Sheet!

Bring customization back in Gnome - Gnome Live