Hi, newbee here (this is my first forum post). I’m really liking Beeminder so far.
What I Want To Beemind, In One Statement
“Across all active (non-archived) goals, if any goal stays within 48 hours of derailing for more than 4 days in a row, I will pay $5”.
Values like “48 hours” or “4 days” can of course be changed as needed.
Elaboration
I have a few (private) goals created already. My question in this post is not specific to any particular goal, but just as an example I’ll discuss one of my goals: joshrg/go_to_bed (+1 for each time I go to bed on time, daily rate of 6/7).
Problem: My akrasia often causes me to use up the safe days that I have. Let’s say that I have a little over 3 days before derailing on my go_to_bed task. From experience, I know that there’s a risk that with just a little external pressure, I might not go to bed on time tonight, so on the next night I’ll have 2 safe days left. The same thing might happen again the next night, and again etc. until I have < 24 hours before the next derail.
I don’t want to burn through safe days solely due to akrasia. I want to retain safe days for last-minute changes/emergencies when I actually need them, so I can skip “doing the thing” that day without immediately derailing.
Any advice on how to implement this (meta-?)goal would be greatly appreciated. My guess is that something like IFTTT might be needed (haven’t used it before, but willing to look into it if required).
Thanks in advance (and apologies if this has been asked elsewhere before )
Hello! Your stated commitment reminds me of what I wrote to the founders forever ago. Something like “If I derail and don’t resume the goal within 48h, I’ll pay you $$”, which triggered the epiphany that goals should continue by default. That doesn’t answer your question though.
I do suspect that scripting skills are going to be needed, particularly to manage it goal by goal and to handle your varying parameters (48h / 4 days).
A few features that may be related or helpful:
You can connect two goals with the metaminder feature, so that one goal enforces a frequency while the other enforces a rate of progress
The same webhook URL configuration that makes metaminder work can be used to send goal data (including safe days, iirc) to a service like make.com or zapier.com (and IFTTT?)
There’s an aggregated field in the API known as ‘urgency load’ that you can also see on any goal’s statistics tab on the website
‘Urgency load’ is a measure of the safety buffer on all of your goals (lower = less urgent). Some people have meta goals that keep the urgency load below a certain total.
That doesn’t tell you anything about individual goals, and the acceptable amount of urgency will change as you create more goals. But it might be close enough for your purposes, and you may get value out of beeminding that value manually and noticing which goals are the regular culprits.
Hi, welcome to the forum!
I have been tracking something similar, through it’s not as specific as noticing that a specific goal has been in the blue for several days in a row. What I track is the sum of “safe days”, or “days until derailment if nothing is done” across a number of goals. This way I have a choice of what goals to work on more on a specific day but this meta goal takes care of me not burning through the buffer due to acrasia and not ending up with all goals in red every day. I described my setup here, so I won’t spam your thread with too many details in case this is too far from what you are looking for. Will just add that at that moment I was still calculating the sum manually but since then I set up a python code to get the relevant info and post the resulting datapoint via API. I don’t know how comfortable you are about coding solutions - but I must say that while I had prior experience with python, API always seemed too intimidating to me, but now ChatGPT is a huge help, so I didn’t even have to get to the intricacies of the syntax at all.
Thanks for letting me know about metaminder and the urgency load field! I might have to look more into urgency load and how people have been using it; this may in fact be the more typical way of achieving what I want more generally (“beeminding safe days”). Any solution that I don’t have to come up with from scratch is always welcome
Thanks for referring me to your setup; I’ll try and have a look when I have the time. Also, I’m quite comfortable with Python (and ChatGPT), so I don’t mind coding-based solutions at all