I’m starting to work on automating my goals, and the first one I want to automate is my email-zero goal. It’s very simple–I enter a 1 when I clear out my email inbox. I’d like to figure out how to reproduce this behavior using the Gmail integration, but I’m having trouble grasping how to go about it.
Requirements:
automated
prevents number of emails from growing indefinitely
prevents any one email from being ignored indefinitely
supports weekends off
compatible with additional breaks (so no auto ratcheting )
My understanding is that the Gmail integration only provides the number of emails in a given label (read, unread, or both). Ideally, then, I’d like to use an aggregation method that would result in a 1 for the day if the minimum data point posted was zero, and 0 otherwise. But I don’t believe this aggregation exists.
How can I create an automated goal that meets my requirements?
Note: The Gmail integration has a aggregation that’s essentially locked to min right now.
I beemind basically what you’re asking for, except I don’t use weekends off. I’m not sure if any of my techniques are incompatible with weekends off.
I have a Google Apps Script that beeminds the age of the oldest email in my inbox. I can share it. It does something either clever or stupid where I beemind the epoch time of the email, rather than the relative days old. I have a post about that technique here on the forum but I am on mobile and it’s tricky to link right now. You don’t need to borrow that part, but you could do your 1/0 thing there, and use nonzero aggday.
I also use the Gmail integration to beemind read messages in my inbox.
Between the two of these, I have been on top of my email for maybe five years!
You seem to want the road to go up rather than down, so I would edit my Google Apps Script to do the “1 if any zero datapoints” requirement. I would personally have it post a 0 if you have read messages in your inbox, and 1 if you have none, and then set the aggday to nonzero.
If this sounds useful, I can post my script, but it will be Monday or Tuesday.
It should be modified to support searching by label, as it would remove a lot of the code, but alas. (The datapoint submitter should also not submit a datapoint if it’s identical to the previous datapoint and the previous datapoint is from today.)