« Beeminder home

Beeminder Blog

A bee thinking about fractions

Bethany previously described this basic idea at the end of my old Bucketminding post. Malcolm Ocean of Complice invented it.

Here’s what we mean by fractional beeminding: If your metric for your Beeminder graph is a big chunky thing — say, number of blog posts — you can set your graph’s precision (number of decimal places) to show values like 0.05 and then report to Beeminder whatever fraction of your next blog post you feel you’ve done.

Wait, whatever fraction you “feel” you’ve done? Have we lost our (bee)minds? Don’t we sing the praises of bright lines and objective metrics from morning to night around here?

Yes but!

I absolutely scoffed at this idea when I first heard it. It sounds like such a slippery slope. Without objective criteria for the fractional amounts you’re logging, you’d gradually get weasellier and weasellier until you were entering a 0.99 for 30 seconds of work, right?

Well, I no longer think that! Or, rather, even if you slid down that slope with abandon, you’d run into a wall that makes it no worse than normal non-fractional beeminding, where you only enter a “1” for actually publishing the blog post or whatever.

“You can’t get to the next integer without finishing the Thing”

Here’s how it might play out. Say your graph shows 42.75 blog posts published, because you’ve published 42 and are deluding yourself that you’re 75% done with the upcoming one. Now say it’s a beemergency and the bare minimum that Beeminder is demanding is 0.1 blog posts, for a total of 42.85. [1] You open the draft, stare at it for a stupid amount of time, add a comma somewhere, and convince yourself that it’s totally 95% done now. So you tell Beeminder “+0.2” and forget about it till Beeminder yells at you again in a couple days. When Beeminder next yells at you, it’s saying you’re at 42.95 and need +0.1 again for a total of 43.05.

Now the squishy delusional weaselliness is over. You absolutely can’t tell Beeminder you’ve written 43-point-something blog posts unless exactly 43 blog posts are actually published. [2] So today’s beemergency is to actually publish that draft, plus make some token progress — what you’ll call 5% ha ha — on the next blog post.

The key is the hard rule that you can’t get to the next integer without finishing the Thing. So you get some extra nudges with the fractional entries but you still have to hew to the overall rate. The graph can only ever be wrong by less than one unit. In the weaselly extreme it may say “42.99” when reality is more like “42.01” but it can’t be any worse than that.

The math of the bright red line says that if you’re maximally weaselly about it then allowing fractional datapoints is equivalent to having started with one more day of initial flat spot than you really did. I think the biggest reason you might reject this idea (other than your metric already being plenty granular) is that, even though it’s not a slippery slope you can slide down very far, the whole thing could easily become kind of pointless. Unless you can keep yourself honest with “I’m entering a 0.1 because I truly estimate I did 10% of the Thing”.



[1] Pro-tip: Click the amount due above the graph to toggle between the delta due and the total due. (And thanks to William Ehlhardt for pointing out that this wanted mentioning.) The fact that no one knows about that toggling — not even William, who resorted to finding the total in the Statistics tab, which also works — is basically a bug for us to fix. In the meantime, if you’re scouring footnotes for obscure Beeminder features, you’ll probably like our list of the 17 most obscure Beeminder features we could think of.

[2] Why couldn’t you? Because then your graph would be verifiably false. Which brings me to another pro-tip: Show off your graph to friends and family for extra accountability. If you’re actually beeminding blog posts, put your graph in the sidebar of your blog (like we do!). The point is that “how complete your draft is” is subjective but “draft → done” isn’t.


Image credit: Faire Soule-Reeves