You are viewing hughsient

Technical Blog of Richard Hughes - Creating a new battery profile

Richard Hughes
Date: 2007-03-23 21:55
Subject: Creating a new battery profile
Security: Public
You normally run your laptop with one battery.  Then, for the first time since you installed Linux, you insert the second battery.
The discharge and charge profiles of the new combined battery have to be created from scratch, as we can't just use the single battery profile as it's no longer valid. This means your super-accurate profiled time-to-discharge reading gets reset to the default 2 hours until enough discharge and charge data has been automatically collected.

So, what about the following warning dialog? Flames / suggestions as comments please.


Crack?

p.s. I still can't test the multi-battery code, I'm still looking for donors.
Post A Comment | 43 Comments | Add to Memories | Share | Link



fragglet
User: fragglet
Date: 2007-03-23 23:23 (UTC)
Subject: Ditch it.
Ditch the popup. They should only be displayed when something happens that a user can respond to (Windows guidelines, but they're sensible).

Balloon: "Your battery meter is inaccurate"
User: "So?"

Popups are great and all, but their use really needs to be strictly controlled. I'd hate to see Gnome end up like Windows is.

Question: If you have accurate battery readings for one battery but not the other, can't you just ignore the second battery until you have good readings? For example, suppose you can accurately predict that battery #1 is going to give you 2 hours of charge, but don't have enough information to predict battery #2 yet. In this situation, "2 hours" is at least partially accurate, as you can predict that you will get at least 2 hours of running. Or is prediction done over all batteries?
Reply | Thread | Link



Richard Hughes
User: hughsient
Date: 2007-03-23 23:26 (UTC)
Subject: Re: Ditch it.
>Or is prediction done over all batteries?

Yup, as the discharge profile changes wildly across vendors and batteries.
Reply | Parent | Thread | Link



Arvind Narayanan
User: arvindn
Date: 2007-03-24 07:33 (UTC)
Subject: Re: Ditch it.
Totally agree. Unless there's imminent data loss or something, users just don't care. If you feel like it, put a one-line warning (no more, or users won't read it) under the balloon that I presume appears when you hover over the icon. As it is, the message is ridiculously long.
Reply | Parent | Thread | Link



User: (Anonymous)
Date: 2007-03-23 23:24 (UTC)
Subject: Total Crack
Richard, you seem to have lost a few marbles. Why would you need to bug the user about crap like this. Notifications are designed for a purpose and you seem to not understand this. Spamming a users desktop with info every two secs is notification abuse. I suggest you back off on all the notification stuff a bit. Why would I need to know this info? Just do the right thing and leave me alone, I have other more important things to worry about then some profile thingy being updated. I just want things to work.
Reply | Thread | Link



Richard Hughes
User: hughsient
Date: 2007-03-23 23:28 (UTC)
Subject: Re: Total Crack
>Spamming a users desktop with info every two secs is notification abuse.

They only get it once...

>I just want things to work.

That's the point. Until we can profile the battery, we are probably off the mark by about 50-100%.

Richard.
Reply | Parent | Thread | Link



Pam
User: okclapyourhands
Date: 2007-03-24 02:18 (UTC)
Subject: Re: Total Crack
Then simply change the icon and the tooltip text that tells the time. Do not attract my eyes unless I care. I only care when I want to know how much I have left, or it's about to run out.
Reply | Parent | Thread | Link



User: pjprior
Date: 2007-03-23 23:24 (UTC)
Subject: How about..
"Profile battery now for more accurate battery run times?" [Yes} [No]
Reply | Thread | Link



Richard Hughes
User: hughsient
Date: 2007-03-23 23:28 (UTC)
Subject: Re: How about..
No, the profiling is done in the background automatically, I'm just telling the user that it might be a little inaccurate for a bit.
Reply | Parent | Thread | Link



User: pjprior
Date: 2007-03-24 15:14 (UTC)
Subject: Re: How about..
Ah oops - sorry :|
Reply | Parent | Thread | Link



User: (Anonymous)
Date: 2007-03-23 23:26 (UTC)
Subject: (no subject)
How about:

"Because your battery configuration has changed recently, information on the charge remaining for your laptop may be inaccurate for ."
Keep the buttons as they are.
Reply | Thread | Link



User: (Anonymous)
Date: 2007-03-23 23:37 (UTC)
Subject: Instead of a textual note
How about a new form of battery icon when the battery bar is grayed out and there's a question mark overlaid on top of it. When someone will roll his mouse over it, only then we could explain him what you've been trying to explain intrusively.
Reply | Parent | Thread | Link



User: (Anonymous)
Date: 2007-03-24 01:23 (UTC)
Subject: Re: Instead of a textual note
This is the best idea so far: people hate popups that they can't do anything about, but a tooltip would be ideal.
Reply | Parent | Thread | Link



User: chris.orr.me.uk
Date: 2007-03-24 22:11 (UTC)
Subject: Re: Instead of a textual note
I don't think you would want the icon to change; I'd just fall back to using percentage levels for setting the icon state.

But yeah, I'd put this information in the tooltip instead of a notification.
Reply | Parent | Thread | Link



User: (Anonymous)
Date: 2007-03-23 23:41 (UTC)
Subject: (no subject)
keep it fucking simple and don't bug the user :)

if the user moves the mouse over the battery icon, instead of the remaining time it should be shown that battery information is being collected.
Reply | Thread | Link



Richard Hughes
User: hughsient
Date: 2007-03-24 00:29 (UTC)
Subject: (no subject)
>instead of the remaining time it should be shown that battery information is being collected.

Yes, I think this is most sane.

Richard.
Reply | Parent | Thread | Link



User: (Anonymous)
Date: 2007-03-24 05:16 (UTC)
Subject: (no subject)

I also agree that this is the best. If the user wants to know how much battery time is left, they will check. If they don't check, it's probably because they don't care at that point, and telling someone you don't know something they don't care about is pretty stupid.

My suggestion would be only slightly more than the parent poster's: if the user goes and checks, it should say "Collecting information on new battery, but at least X TIME", or "At least X TIME (collecting information on new battery)". That would be the least intrusive and most useful.

Reply | Parent | Thread | Link



User: (Anonymous)
Date: 2007-03-23 23:46 (UTC)
Subject: (no subject)
"profile created" ... "GPM does not have a profile" ? Why? you just created one!

Don't begin the message talking about GPM or missing profiles. Talk about stuff that matters to the user:

"New battery detected. Expect discharge estimations to be off the mark by x% for y discharges." Or something like that.
Reply | Thread | Link



User: (Anonymous)
Date: 2007-03-23 23:56 (UTC)
Subject: Don't say anything
Please just don't do anything. Most users are used to discharge statistics that are wildly inaccurate (on other OSes). GPM is already above par. Why notify the user of something they are used to and will be corrected automatically?
Reply | Thread | Link



User: paulbetts.myopenid.com
Date: 2007-03-24 00:00 (UTC)
Subject: No point
There's no point in showing this message because:

1. (and others have said it) The user can't _do_ anything about it, other than worry.
2. It's unnecessary - while it's nice to know accurately how long the battery will last, it doesn't _change_ how long the battery will last. As long as you don't try to shut down the computer early, who cares? The user won't notice, and the problem he might notice will be gone by next charge.
Reply | Thread | Link



Scott Robinson
User: quadhome
Date: 2007-03-24 00:03 (UTC)
Subject: (no subject)
GNOME Power Manager has created a new profile for your battery.

The time remaining may be inaccurate until enough data is automatically collected.
Reply | Thread | Link



Scott Robinson
User: quadhome
Date: 2007-03-24 00:03 (UTC)
Subject: (no subject)
A new profile has been created for your battery.

The time remaining may be inaccurate until enough data is automatically collected.
Reply | Parent | Thread | Link



User: (Anonymous)
Date: 2007-03-24 00:13 (UTC)
Subject: (no subject)
I'll give you a crack... was translating g-p-m a night before 2.18 release into XX locale, sometimes you made me cry trying to translate your, hm, may I call it, wording,grrrrrrrrrr
Reply | Thread | Link



Richard Hughes
User: hughsient
Date: 2007-03-24 00:26 (UTC)
Subject: (no subject)
>trying to translate your, hm, may I call it, wording

Sure, I'm no good at English, never have been, never will be. Please file bugs on all my crap grammer, and I'll try to fix it for 2.19.x

Thanks.
Reply | Parent | Thread | Link



User: (Anonymous)
Date: 2007-03-27 18:06 (UTC)
Subject: translating g-p-m
oh yeah, destructive complaining without filing bug reports against the application. i love that.
andre
Reply | Parent | Thread | Link



User: (Anonymous)
Date: 2007-03-24 00:15 (UTC)
Subject: STOP
Revert the change and move on to another project. You have done an incredible job but you are now in the tinkering stage and are making things worse. There are plenty of other things in GNOME which you can improve, but you have done an excellent job here and need to recognize that you can't improve it.

Thank You for all your efforts, we need you elsewhere.
Reply | Thread | Link



User: (Anonymous)
Date: 2007-03-24 00:20 (UTC)
Subject: Re: STOP
Please don't actually waste your time implementing this, but you could always include error bars in the battery applet details (but only show this when the user clicks on the applet).
Reply | Parent | Thread | Link



Richard Hughes
User: hughsient
Date: 2007-03-24 00:27 (UTC)
Subject: Re: STOP
>You have done an incredible job but you are now in the tinkering stage and are making things worse.

Err, actually the code needs serious work. I'm adding infrastructure to do other cool stuff, just see the xdg list.
Reply | Parent | Thread | Link



User: (Anonymous)
Date: 2007-03-24 03:21 (UTC)
Subject: Re: STOP
I was referring to the battery life prediction (not suspend resume and the like). I have a tendency to make this same kind of mistake in my work (financial management). I improve a calculation or develop a new model and then want to tell everyone about the improvements and the limitations explaining how everything works behind the scenes. Its a natural reaction when you are proud of your work, but the truth is they don't give a sh*t about the implementation, they just want the number and after they get used to it they will start to trust it and use it, lecturing them about it won't do any good. The battery monitor determines whether or not the users gets another caramel mocha latte or stops studying and hits the bars, it determines at what point the user interrupts the phone conversation of the guy sitting across from them to reach the plug behind him. It isn't life or death (and if they are really on a deadline and running out of juice they are paniced enough that it doesn't matter what you tell them). The only people who might actually notice and or care are those watching a movie on a plane flight. Hell they were better off reading anyways.
Reply | Parent | Thread | Link



User: (Anonymous)
Date: 2007-03-24 00:18 (UTC)
Subject: Show the error in the estimation
What I'd like to see is something that gives me some indication of how accurate the estimate is. "Your laptop has 33 minutes remaining" makes me uneasy, does it really have exactly 33 minutes remaining? Or is it more like somewhere between 30 and 35 minutes. Maybe 20 to 40 minutes?

What would be good would be "You have 30-35 minutes", or "About 35 minutes". If you don't have any profile information, then when the user asks they will get wildly imprecise information (You have 10-50 minutes remaining), and the user will realise that the information isn't any good. However, after a few profile runs you'll end up with "You have about 10-15 minutes free" then maybe "about 10 minutes free" as the precision increases.

This lets the user make a much more informed decision ("Time until your battery is discharged or charged may be inaccurate". How inaccurate? Presumably you're going to still give me some kind of estimate, but how much can I trust that estimate?)

Don't bug me with yet another popup dialog box. My computer often pops up a "your laptop is now running on battery" notification thingie. I *know* I just UNPLUGGED IT. The Beeping and the dimming of the display, the applet icon changing to no longer show a plug, and the fact that I'm still holding the power cord in my hand all lead me to that conclusion already!

Even the "Your battery is now fully charged" notification bugs me slightly -- When it pops up I generally don't care anymore and it interrupts my line of thought. It would be nice to have a different icon to suggest that it's now fully charged vs charging, but really, I generally don't care that's charged. (Now, that it's getting close to discharged -- thats something I /do/ care about).

Stop bombarding us with information we already know, or at least can easily figure out for ourselves. Make the information available to us when we ask, and be smart about how you present it so we as users can make an informed decision as to how we're going to use that information.
Reply | Thread | Link



Richard Hughes
User: hughsient
Date: 2007-03-24 00:28 (UTC)
Subject: Re: Show the error in the estimation
>Don't bug me with yet another popup dialog box.

All the dialogues have "Don't show me this again" buttons in 2.19.x.

Good idea about changing the wording to infer precision tho.
Reply | Parent | Thread | Link



User: (Anonymous)
Date: 2007-03-24 00:53 (UTC)
Subject: Re: Show the error in the estimation
I think that is just bad design.

"Don't show me this again"... the reason I don't want to see it now i because I'm not interested now. And PLEASE don't give me the windows crap about "Show me this later". What I REALLY want is a button to "Show me this when I care and need the information".

By saying "Don't show me this again" I'm setting a trap for my self. Either I totally destroy my current flow to focus on this annoying information or I click this button and risk a disaster because the information won't be available when I need it and have time to do something about it.

Either figure out a way to show me the info when I care, need it and have the time and ability to act on it. Or just put the info somewhere where I'm bound to find if if I need it.
Reply | Parent | Thread | Link



User: (Anonymous)
Date: 2007-03-24 00:39 (UTC)
Subject: HOW ABOUT THIS ONE
There has been a change detected in your Battery Configuration,
Charge times may not be accurate for a day or so.



NOTE: no need to inform the user how the underlying technology works, just how it is going to affect him, and why he has to suffer :).

1st line, is why
2nd line is how user is affected
Reply | Thread | Link



User: (Anonymous)
Date: 2007-03-24 02:02 (UTC)
Subject: (no subject)
Much too wordym and even more so, way too technical. The warning is fair to give, but you really have to start speaking to end users (and moms).
Reply | Thread | Link



User: (Anonymous)
Date: 2007-03-24 10:44 (UTC)
Subject: (no subject)
I think that is the right mindset; the message should be so easily comprehensive, that your mother understands it.
Reply | Parent | Thread | Link



User: (Anonymous)
Date: 2007-03-24 03:14 (UTC)
Subject: We need the info, but not like this.
Drop the use of notifications, most users would not care or understand it.

But some might be thinking, WHAT? Ijust inserted a second battery (or a new one, guess that will trigger this as well), they are fully charged and still I only got 2h. left. Lets check the detailed information!

THEN, you tell them, in the "Power History" dialog.

The tooltip might be a good place as well, but just a very simple and short text.
Reply | Thread | Link



User: http://www.kryogenix.org/days/
Date: 2007-03-24 07:30 (UTC)
Subject: (no subject)
Much like other people, I'd lose the notification. It tells me something I don't care about, as mentioned. Two thoughts: first, why not fall back to the old code if you don't have enough collected charge data? It wasn't brilliantly accurate, but it's better than saying "two hours" for all new batteries (my current GPM certainly gives me a figure for time-to-charge and time-to-discharge). Secondly, put "Time left for this battery: 3.5 hours (approximately)", and remove (guessed) once you've got a proper amount of charge data?
Reply | Thread | Link



Richard Hughes
User: hughsient
Date: 2007-03-24 10:41 (UTC)
Subject: (no subject)
Agreed, that's what I'll do.
Reply | Parent | Thread | Link



User: (Anonymous)
Date: 2007-03-24 19:49 (UTC)
Subject: (no subject)
I think the notification would be useful simply because it's a confirmation that my new battery is correctly detected by the system. I would feel reassured by this.
Reply | Parent | Thread | Link



User: (Anonymous)
Date: 2007-03-24 07:31 (UTC)
Subject: ACPI
Maybe you could just fall back to using acpi while the training is going on.
Reply | Thread | Link



User: (Anonymous)
Date: 2007-03-24 08:46 (UTC)
Subject: Re: ACPI
Exactly!
Reply | Parent | Thread | Link



User: adamwill
Date: 2007-03-24 10:35 (UTC)
Subject: Ditch it.
Given that this is extremely unlikely ever to happen when the battery charge is _low_, and assuming the new profile will be picking up a reasonable degree of accuracy significantly before the level of charge becomes a problem, this is entirely useless information that no-one needs to know. Just change the tooltip to not give any time left until it can be reasonably accurate and don't give any notification at all.

Oh, and on a separate note, if you were going to keep the notification, you would change the word 'may'. It's a weasel word that makes no sense in context. The time remaining wouldn't be _possibly_ inaccurate, it would be _definitely_ inaccurate. "The time remaining until charged or discharged WILL be inaccurate until blah blah blah".
Reply | Thread | Link



User: murraycu
Date: 2007-03-24 11:17 (UTC)
Subject: Only when it's useful
This only seems worthwhile to show as a qualification when some other information might be innaccurate. For instance:
- In the tooltip when showing a % that may be innaccurate.
- In the dialog when showing a critical low battery warning.
(Though I'd like Ubuntu Edgy to not turn my laptop off when it mistakes 4 hours for 1 minute of battery time.)

Also, the message kind of complains about something, as if the user has done something wrong. But the user doesn't know why you don't have a profile, and doesn't know how to give you what you need. Fear and doubt sets in.

Also, "Battery Profile Created" isn't the most relevant or clear title. "Battery Information Possibly Innaccurate" would be more relevant.
Reply | Thread | Link



User: (Anonymous)
Date: 2007-03-24 15:30 (UTC)
Subject: Likely user behavior
Do you keep the profile for the first battery (do they have reliably unique serial numbers)? When I've used two batteries I will sometimes switch between one and two fairly often. Whenever I need the cd drive I have to take the second battery out. Also, if I have two batteries I may switch between the one and the other rather than just add the second. If g-p-m has to rebuild the profile every time I make a change to the battery configuration then it could become less useful than it was before the profiling was implemented.
Reply | Thread | Link



browse
my journal
April 2008