Configuration File Change: Old Man Mindset

Bug #154459 reported by Thangalin
2
Affects Status Importance Assigned to Milestone
update-manager (Ubuntu)
Invalid
Undecided
Unassigned

Bug Description

Binary package hint: upgrade-system

A lot of amazing progress has been made with Ubuntu. However, Bill Gates has nothing yet to fear. Here's an example of the "mindset" developers still have that exemplifies the reason why.

During the upgrade process from 7.04 to 7.10 (smooth, by the way), a little window appears that reads, "Configuration File Change". The content says something like:

"Replace the customized configuration file '/etc/default/apache2'? You will lose any changes you have made to this configuration file if you choose to replace it with a newer version."

Consider my Canadian piano teacher. He's 86 and uses a Mac (OS X) for e-mail, web browsing, and video conferencing with his friends down in the States somewhere. He doesn't know what apache2 is. He doesn't know about an "/etc" directory. He does understand that to "lose any changes" is a bad thing.

So he clicks "Show Difference" and what does he see? Garbly gook. 22:13:18.000000000000 -0700 +++ ath0^NO CARRIER would be just about as meaningful to him. Hell, I've been using diff tools for years and I can hardly read them. I much prefer the fancy side-by-side scrolling displays of modern diff tools. But cramped up inside of a teeeeny tiny little window (with no visible indicators of resizing; but that could just be my theme settings; but resize the window anyway and watch what happens when it next appears ... ungh), there's just no way either of us are going to make heads or tails of the content.

But it doesn't matter.

Advanced users need to know this. Power users need to know this. My piano teacher ... well, he doesn't really need to know this. My teacher is a brilliant pianist. He's smart, witty, charismatic, and a computer newbie. He will never be able to use Ubuntu at this rate.

Okay, griping over. Here's how to fix it.

When performing installations immediately give the user three choices:

Easy (i.e., Just Do It)
Medium (i.e., Just Do It, but let me watch)
Advanced (i.e., Give Me Teh Powerz)

If they select Easy (the default option), then just "do the right thing". This means making a backup of files that are about to be changed, and subsequently change them without pestering the user. This means automatically partitioning the drive in an intelligent fashion (/, /home, swap, /tmp, and maybe /usr or /opt). It means not posing questions like "Replace the customized configuration file '/etc/default/apache2'?"

If you guys and gals can make an installer that is so simple even my piano teacher can use it, then even a piano teacher will use it. And so will gradeschool teachers. And dance teachers. And English majors. And stay-at-home parents. And cheerleaders. And football players.

Remember: this is just an example. These things are everywhere and it stems from a specific mindset. This mindset has to change. When prompting the user for something, ask yourself: "Would this confuse Dave's piano teacher?" If the answer is "Yes" then ask yourself, "Can it be simplified by providing default options?" If the answer is "Yes" then ask the user if they want the task to "just be done" or whether they want to look at it first, or whether they want to do it the advanced way.

Ideally, there would be some sort of "global" setting that indicates their comfort level with technical minutia. (Note that the term "technical minutia" is not something that should be presented to the user!) This setting can then be queried by applications to gauge how much interactivity and how much information should be given to the user.

Installers, today, are my biggest gripe. ;-)

99% of the time, when I'm installing software on Windows, I click "Next", "I Agree", "Next, Next, Next, Next, Finish." I would rather click, "I Agree" then "Just Do It" and be done with it. See the difference? It's not just in the number of clicks, but it is in the mindset of the developer.

Keep up the great work, you're definitely on the right road.

Revision history for this message
Martin-Éric Racine (q-funk) wrote :

Sorry, but what does this have to do with the Ubuntu package called "upgrade-system"?

Revision history for this message
Thangalin (thangalin-deactivatedaccount) wrote :

You're absolutely right.

It should go under Bug #1.

Revision history for this message
Endolith (endolith) wrote :
Revision history for this message
Tina Russell (tinarussell) wrote :

I have no idea why this is marked as a duplicate! It’s more that this is one of the bugs that must be fixed if #1 is to be fixed.

I agree that something must be done about this process. I’m wary of attempting to divide users into streams, asking them at the beginning if they want “easy” or “advanced,” a bizarre moment of rating yourself without much reference to go on. But, yes, the “change old configuration file?” window needs to be vastly friendlier. At the very least, it needs something along the lines of, “if you don’t know what to do, choose this option...”

In the longer term, perhaps we really need to establish that packages should have a “merge” functionality for their configuration file upgrades, where it will generate a new configuration file taking your previous changes into account. Perhaps a standardized library would be needed for this. Hmmm...

Revision history for this message
Endolith (endolith) wrote :

You should at least give this a more descriptive summary

Revision history for this message
Sebastian Heinlein (glatzor) wrote :

The configuration dialog will only appear if changes have been made by the user. So the user should already know the purpose of this config file.

Changed in update-manager:
status: New → Invalid
Revision history for this message
Endolith (endolith) wrote :

That may be the way it should behave, but it's not the way it *does* behave, in my experience. I've seen it without modifying the files.

Revision history for this message
Sebastian Heinlein (glatzor) wrote :

Sure that you don't run any scripts which modify the file? Please report a separate bug including the corresponding files if such an error occurs.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.