Use Complice to Beemind Arbitrary Tasks

How about some way to track percentage of starred outcomes completed? :mask: Then (with starred tasks modeled as Coveyian ‘big rocks’ that need to be prioritized else Bad Things happen) items that really aught to get done today can be akrasia-proofed a little more.

This would be sort of like that one must-do task technique that Ms. Harris ‘shamelessly stole from Beeminder co-founder Danny Reeves @dreev’, except flexible in the number of must-do items each day. Just beemind the percentage of starred outcomes completed, setting the rate to something like 95%. Instant must do, or else.

The ability to do something like this would be especially handy with repeat tasks that—for some reason or another—keep being squished out of your (arguably?) correctly tuned system.

1 Like

After thinking some more, it might be more useful generally (as in, applicable to a wider selection of use cases) to stack on the capability to track outcomes un-completed, instead of outcome-completed percentage.

That would allow Complice to make use of Do Less goals, which I otherwise can’t think of a way to integrate, given the current implementation. Plus it’s simpler to add; just another ‘What To Track’ mode rather like “track tasks marked complete”, except “track the number of tasks not marked complete” with maybe an X or the No symbol.

1 Like

Very exciting! Thanks, Malcolm. One question: does the data get sent to Beeminder upon marking a task complete, or based on the day’s submitted outcomes?

1 Like

Good question: task completion.


I’ve encountered a problem.

I have a Beeminder-linked task as follows:

My task for today reads

But when I mark it complete, Complice doesn’t update the associated Beeminder goal.

(This is actually iteration 4 of this problem; I originally had “stomp” as my text filter, then “stomp-jumps”, and neither of these worked, either, for the associated task of “6) stomp-jumps 50”. Ditto on “stompjumps” and “6) stompjumps 50”.)

Any idea why this is failing? For comparison, other similar task-Beeminder links are working fine (text filter “Kegel” and task “6) Kegels 10”; text filter “pushup” and task “6) pushups 4” <— don’t laugh, I’m 5’3", 52 kilos, and female, just starting out doing the real-man version :wink: ).

1 Like

You found a bug! (It’s fixed now).

The regex I use to sum numbers was getting tripped up because it was matching the - in the middle of “stomp-jumps”, and then trying to add 50 to "-", which produced NaN (not a number).

Huh, though that doesn’t explain why stompjumps would have been failing. Unless the task itself had the hyphen the whole time, because that’s what matters for this bit.


Awesome! And thank you.

I took another look at all the task permutations I’d tried and indeed, the one for stompjumps just appended stompjumps to the original stomp-jumps 50 task, so it’s likely you’ve found and fixed the whole problem.

I’ve already manually entered the data point for today, so I’ll report back after tomorrow’s entry.

1 Like

Update: Problem solved! This worked perfectly today.

(There’s a hyphen in stomp-jumps, to test it properly.)

Thanks, Malcolm!

More unexpected behavior:

I entered this task as 6) pushups 4 . I later appended -4 rest day to the task, then marked it complete. I expected Complice to send a 0 to the associated Beeminder goal with the text "2016-06-26 CompliceArbitrarySum for (6) pushups 4 -4 rest day". Instead, nothing got sent.

Not a make-or-break-er, since the net tracking result is the same, but it’d be really nice if this worked as I’d expected, so I can record why I didn’t do an intention (rest day, forgot, too busy, whatever) at Beeminder for later reference.

I’ve hit another snag. I have these goals:

And this task:

When I marked the task complete, it updated the first Beeminder goal, but didn’t update the second one. The hover help on the regex box says it ignores case, so the problem shouldn’t be Mandarin vs mandarin… What am I missing?

(For context, I have additional links like the second one to record data points for other languages; the first polyglot link records whether I worked on any language.)

1 Like

Ahh yeah, the rest day thing is I think working as designed, because in
general it doesn’t make sense to send zero datapoints to beeminder. I see
the argument in this case though, so I’ll see if there’s a reasonable way
to code it.

The issue with the regex is you don’t have it enabled! click it and it’ll
turn orange. If not orange, it’s doing substring matching.

Oh, excellent! I love simple solutions.

1 Like

I just started looking at using Beeminder from Complice. On the Complice Beeminder Integration page at the very bottom the widget is showing an old state of an archived goal (I think). Anyhow, as of this instant my Beeminder dashboard has no goals in it but the Complice Beeminder widget on the Integration page (and now on my Today page) is showing an obsolete goal state (a derailment). The Complice Beeminder widget says “fetched 0 min. ago”.

1 Like

Complice is now correctly showing no goals. So perhaps there was a housekeeping process that had to tidy things up. Anyhow, things are fine right now.

I want to beemind accomplishing prioities!

@grayson, your Complice and Beeminder accounts are inspiring (in the literal sense; they’ve inspired me to switch up some of my goals). I hope you keep them up, and keep them public!


Thank you, @henryaj, for such rewarding feedback!

After some initial issues I seem to have gotten this working properly (thanks for the online support!)

One remaining niggle, however: when I complete a task or assign a pomodoro, Complice always records it in Beeminder using Beeminder’s idea of what the current day is - so for example, if I have beeminder goal that has a morning deadline and I complete a related Complice task in the afternoon, it logs it in Beeminder with tomorrow’s date (even though the Beeminder datapoint comment has today’s date on it).

I can sort of understand why it behaves this way, but for the record: after thinking through how I use Beeminder and (so far) Complice, I can’t think of a single case where I want it to work this way. I always want data recorded in Beeminder with “today’s date” (i.e., possibly yesterday’s date, if it’s after midnight but I’m still awake), even if the Beeminder daily deadline is past.

1 Like

Great feedback! This has been an issue for @mary in the past too, though I think we found the best of both worlds in her case by including the calendar date in the data export.

I think Beeminder needs to stick to its guns on this – the deadline marks the end of that day as far as Beeminder is concerned because other things get confusing in worse ways if we try to be smarter about that.

I wonder if @malcolm could address this on the Complice end by giving you an option to submit the datapoint for the previous day if it’s (a) after the deadline but before midnight or (b) after midnight but before the deadline. (We call case (a) an earlybird deadline and case (b) a nightowl deadline.) Or actually if Complice just gave the date explicitly (as a daystamp, as we call it) I think that would work fine.

Yeah I think I just need to include the day explicitly, which is easy since
I already have it :slight_smile:

…and… done!