Building up a safety buffer can be great but sometimes you have too much safety buffer and your yellow brick road becomes pretty toothless for a while. Especially if you had the steepness set too conservatively at first.
So let's have a feature where, when a flash of willpower strikes, you can make your road harder immediately and wipe out the safety buffer. (It's still important to have the one-week delay on making the road easier, for the reasons discussed at http://blog.beeminder.com/dial )
One way to do this is a RetroRatchet button that makes the yellow brick road retroactively steepen so that your current datapoint is exactly on the road.
RetroRatchet is here! We’re now working on a version where you can choose how much to ratchet. This version is fully hardcore, making the road leap to wherever your datapoint is today.
It's just as relevant to this suggestion.
@Ted, sorry about that! We're working on improving Retroratchet. In the meantime can you point us to your graph (here or email@example.com) and we'll fix it for you?
Ted Childers commented
Alternatively, You could provide an undo feature?
Ted Childers commented
You need to provide a better description to Retroratchet than "it makes things harder". I've been tracking my withings weight since 2009. You need to be very clear that it will start your goal from your first data point. I now have to archive my goal and start over since it's impossible to lose 114 pounds in 9 days.
I think for me a cap on the safety buffer would be the best. I noticed that for my daily goals, my motivation starts to drop as soon as I get a safety buffer of more than 2 days. However, I do need that bit of buffer for emergencies or extra busy days. So for me it would work if the upper edge of the YBR would shift upwards to the new data point if I break through it. And otherwise it would just stay at the normal rate. I guess in this way the rate you choose is more of a minimum, while you can safely do much more without losing your motivation.
@Daneel, eek, we don't like that suggestion at all! Messing with the integrity of one's data gives us the heebiejeebies. :) Beeminder after all is half Quantified Self tool.
But your suggestion is a great kick in the pants for us to hurry and offer something better! :)
Daneel Olivaw commented
You can always insert negative values to remove part of the safety buffer, right? That would be at least a workaround.
If you're commitment is to eat 5 servings of vegetables a day and you recently had dinner with your vegan friend and have 40 servings as safety buffer, as per Alys example, then you can insert "-30" and reduce your safety buffer to just 10.
A Jolly commented
I'd rather not have retroratchet retroactively ratchet up the road for me. Knowing how far away I was from derailing in the past, is valuable information! I'd instead, like to see the safety buffer deleted (so the yellow brick goal has a sharp value change on that specific date).
agreed! a cap on the safety buffer would fix this for me too.
Another possibility would be to add the option of tracking data on an every 2 (or 3, 4, 5, 6) day basis, rather than just daily, weekly, monthly, etc.
I think the best additions/changes are:
1. Make it harder now. I.e., increase the rate, effective immediately
2. Shift the road, by shedding X days of safety buffer
I don't think X should be the whole buffer, I worked hard to get ahead of goal, but now, to continue to have effective self-binding, I need to move the road closer, because 40 days of buffer is no binding at all.
Like many others, my preference is for a per-contract cap on the number of safe-days. Ideally the graph would jump up in a visually distinct way once the limit is breached.
Tijl Kindt commented
I'm also struggling with a safety buffer that is too big at the moment, while I don't want to raise the steepness of my YBR. I'm all for a cap on the safety buffer. In that case I'd probably put the cap at 5 or 7 days and each time the buffer exceeds that cap, the YBR would just be moved upwards.
Here's a use case where this would be valuable:
You have a goal to eat about 5 serves of vegetables a day. For optimum health, you want to eat vegetables EVERY day (not just average out to 30 serves per week). If you visit vegan friends one weekend, you might eat 40 serves of vegetables in just two days, and then Beeminder would let you not eat any vegetables at all for several days after that (whereas in reality you might want to skip vegetables for only one or maybe two days after the weekend). In this case, it would be good to have an option to ignore most of the safety buffer you've built up. However you wouldn't want to make the graph go steeper - you'd want to keep it at a steepness that reflects about 30 serves per week.
I suppose you could achieve this by just not entering the full number of vegetables you ate over the weekend. But that seems like a rather boring non-technological work-around. :)
Perhaps one solution would be that for any goal, there could be an optional setting where every time your safety buffer went to greater than X % higher than the yellow road, then the safety buffer would be treated as if it was exactly X % higher (the user chooses the value of X). Thus for the vegan weekend, even though you entered 20 vegetables per day for two days, Beeminder would act as if you'd entered 7 vegetables per day for two days. You'd set the value of X once, and then it would always take effect no matter how many vegan friends you visited. :)
But there could well be better solutions than that. :)
Emanuel Rylke commented
If you want to reach X at date Y giving up safety buffer should flatten your yellow brick road and not make it steeper. So for example if i have a safety buffer of 5 days and i want to reach my goal at a date 20 days in the future, i want a button that prevents me to slack off the next 5 days but flattens my road so that i only have to do 75% every day. Basically what i want is to spread out my 5 days of safety buffer over all the remaining days. I hope i formulated that somewhat understandable.
@Kate, I feel exactly the same way about my workout goal. I also set the rate higher to get rid of some safety buffer and ended up forgetting to set it back in time ... oops! I definitely agree there needs to be another solution!
I would love to be able to put a cap on the number of safety days for my exercise graph. I've got it set to 3x/week, which I think is reasonable, but lately I've been wanting to do more than that, and slowly building up a safety buffer. I don't want to be in a position where I can slack off for 2 weeks and get out of the habit, but I also do not want to COMMIT to doing more than 3x/week, even if I sometimes want to do extra voluntarily.
Right now I have it set to 4x/week and have to keep checking how close I am so I can ramp it back down to 3x/week once my safety buffer is gone.
@janabeck, not anymore! the flat spot when you reset is no longer imposed (except for weight loss, and having the flat spot is still the default). thanks so much for helping to convince us to hurry and get that deployed!
I think the other place where the "make it harder NOW" (or a cap on your safety buffer) feature would be useful is when resetting. Correct me if I'm wrong, but resetting forces you back to a flat graph?
I just had to reset (with less than a week of data https://www.beeminder.com/janabeck/goals/parsing, *sigh*) and the problem I see with resetting flat is that anything I log in the next week will give me a safety buffer that I *don't want* because it'll let me drop far below the average rate (of hours of work on a certain project, in this case) that I want to achieve. Now I can see maybe not allowing users to set the exact same rate as they just lost on when resetting, but is there really a justification (that I'm missing) for making it completely flat for the next week after a reset?
I dunno, I think it depends on the kind of goal -- e.g. with weight loss if you're far below the brick road it means you're losing weight too fast, which might be harmful. (With other kinds of goals an arbitrarily large(/small) value could still be good.)
I'm hugely in favour of Yoni's idea of setting a "safety cap". I primarily use beeminder for habitualising behaviours. Being able to skip a day or two is fine, but knowing that I can't bank up a week means I've always got the threat of a fire near my ass.
I'd want the same with other goals as well. If I'm losing weight, or inboxing towards zero, then I don't want to ever make things harder, I just don't want to feel that I can slack off for a week.