After a disagreement I had with another user in the comments to their answer recommending that the poster of the question uninstall ccsm after breaking Unity with it (after, of course, running an actual fix in the same answer), it got me wondering whether we should be trying to steer new users away from using advanced tools and configuration options if they could mess things up by doing so.

The user who answered reasoned that we should generally tell others to refrain from using ccsm or similar software. They could potentially get themselves into trouble by using such tools without understanding the risks beforehand, especially when bugs might be present, and should avoid using them until more robust / safer solutions are implemented later.

My stance was that we should not be telling these users to not use these settings. I rather think it is a learning experience for people to experiment with these settings, and if they break something and learn later how to fix it then they are getting valuable skills from doing so. Also, if they are uncovering bugs from using certain configurations, then this could also be useful to developers for improving stability. I think ultimately the choice of whether to use these tools should be up to the user.

What do you think our policy on this should be as a community?

  • 1
    Really nice question. Commented Nov 10, 2011 at 10:50
  • If there is to be a policy, we might have to start by defining exactly what an "advanced tool" is. I've a client who is far from advanced but is capable of following simple instructions and we've managed to get his unity repaired with CCSM in the past...
    – Elder Geek
    Commented Jan 20, 2015 at 14:28

4 Answers 4


Yes (sort of)

The OP is only one of the people you should think about. And generally, the OP is one of only a handful of technically-minded users who will read your answer.

Yes, you can break your system with CCSM, and in such a way that a novice user won't be able to recover without a great deal of frustration. That certainly isn't what we want.

But outright telling them to stay away from advanced tools like that can't be very helpful. Instead, I recommend you add a caveat. Possibly split your answer into two parts. Remember this:

  • Most of your readers by far will get to the question via a google search.

Explain the advanced methods, and add a recommendation for novice users like this:

If you're inexperienced, you can damage your configuration by following these steps. To be on the safe side, *.

Where * is something like "use the simpler method I described above", "follow these steps exactly", or even "don't do it at all".

If you can provide it, the most complete answer will be the best, no matter the OPs level of experience.

I rather think it is a learning experience for people to experiment with these settings

Yes indeed. But there will be a large number of users who simple don't want a "learning experience". They will want to get their taxes done, finish their school papers, watch films, or go to facebook.

These users should know exactly what they're getting themselves into when they follow an advanced answers, and be able to opt-out.

Our policy should be to think about these users, the ones who don't care about learning anything about the system, first of all. And we can add more information for technically-minded users as well, which results in a better answer, and a chance for the curious reader to learn something new.

Also, leaving a comment like "You should be careful when using CSSM, It's an advanced tool that allows you to mess up your configuration easily." is considered helpful. Even if it sometimes seems like we're all technical people here, again we're only a very small fraction of the readership of Ask Ubuntu.


I was the 'contra' voice in the thread that WarriorIng64 referred to.

A little bit about my credentials: I was a kernel developer for many years; more recently I was the lead developer on the Vodafone webbook project for Canonical, which shipped Ubuntu and Unity-2D, and I've patched hundreds of packages all up and down the stack, from grub to upstart to metacity to unity-2d to Firefox.

I'm not trying to show off; I only mention these facts to show my context, which is -- the other day, I did a fresh install of 11.10 on my laptop, and wanted to customize something (turning on focus-follows-mouse). I poked around in gnome-control-center for a 30 minutes before giving up and discovering the only way to do this was using ccsm.

After installing ccsm, I configured ffm, and then -- accidentally! -- my mouse cursor passed over the preferences button and the touchpad on my laptop registered a click.


Unity session dead.

Luckily I still had an irc window open and I could beg for help from my colleagues who told me how to recover (rm ~/.compiz-1).

Look, I know that people are going to google for how to configure things and land up here and they're going to see lots of mentions of ccsm. The horse is out of the barn already, and we can't go back. The determined users are going to find it anyway, and anyone that tenacious deserves to know how to get what they want.

But my point is that from now on, we can try and do better for our users.

  1. ccsm is dangerous; even if you know not to touch the bad thing, you might accidentally touch it anyway like I did
  2. ccsm has no future; the future plans for Unity are to migrate all the useful configurability bits out of ccsm into safer, supported tools
  3. the Unity developers are quite aware of the bugs in ccsm; we are not helping them in this regard
  4. the attitude of "recovering from your mistakes is a positive learning experience" is niche. Most normal people just want to use their computers without having them randomly break in mysterious, non-recoverable ways; most normal people do not share our culture of taking things apart to see how they work.

Again -- I know that people are going to find the dangerous stuff no matter what. But what we can do here is change our culture and give opinionated help, steering people away from the bad stuff and towards the good stuff.

It's easy to convey facts; it's much harder to convey wisdom.

Here, we should be aiming higher than merely giving the facts of what is possible; we should be sharing the wisdom of what is recommended.


  • 3
    I'll add some warning to the major CCSM recommending answers. Commented Nov 11, 2011 at 14:53
  • 4
    the attitude of "recovering from your mistakes is a positive learning experience" is niche awesome answer
    – poolie
    Commented Nov 16, 2011 at 3:45
  • Destroy CCSM. Like, now.
    – jrg
    Commented Feb 1, 2012 at 12:28
  • Aha! So this is why the CCSM using answers have warnings all over them! I'm glad this discussion occurred before I installed Ubuntu. There have been times I was tempted to install CCSM, but given all the horror stories, I'm glad I didn't. Commented Apr 15, 2012 at 9:04

For those users who do have the configuration required to use CCSM, it maybe possible to mention which aspects are relatively (or absolutely) safe and which aren't. For example, tweaking the about:unity plug-in settings to reduce the icon size in the launcher and to increase the time-delay for the launcher to appear when my mouse inadvertently strays into launcher territory hasn't broken anything for me. I haven't tried anything else since I'm not confident about fixing things if they go wrong. (I would like to enable the grab handles for resizing windows but I'm hesitant.)

I also agree with the notion that there are many users who just want to use their PC rather than learn by recovering from mistakes. If things, in general, can somehow be adequately "flagged" in terms of their potential to break in a novice's hands, that would be a friendly gesture.


ccsm is not an advanced tool, it is an essential tool that just does not work very well with Unity. I don't refer to Unity as an advanced tool just because it breaks often for me (and that is not a big deal for me). If Unity was not forced onto new users as the only interface they would have access to, this would have been a non-issue. I would actually argue that Unity should be more robust considering how it is dependent on Compiz, and until that actually happens, people should refrain from it.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .