It actually looks like the ‘count’ aggday I found in a recent forum thread implements what I need. Unless that method is deprecated?
The docs (linked above) say that count is just
lambda x: len(x). Does tag time issue a data point with value 0 when you don’t select the tag? Because
count won’t do what you want unless tagtime only issues data points when the tag was selected.
It doesn’t seem to. The do-less TagTime goal which I’ve been minding recently has had pessimistic presumptions when I didn’t select the tag in Android, which seems to imply no data is being sent to that goal when I’m pinged and don’t tag it.
Oh ok, cool, then yeah if you set aggday to
count you should be all set.
Thanks for your help, this has been an eye-opening morning. Finally subbed to a premium plan and the mind-boggling array of settings that entails. (@dreev no action needed here)
<3 <3 Eager to hear what you think of the custom goal craziness, things that don’t make sense, wish list, etc!
And I agree that aggday=count does what you have in mind given how Android TagTime works.
But I’m skeptical about your plan. First of all, why degrade the data by making it binary? You could just have a Do Less goal for the actual amount of time spent nailbiting and keep pushing that down. Behaviorally the same but the graph is a bit more meaningful.
More fundamentally, I’m skeptical that this will work. Nailbiting is so… habitual. I fear that even Beeminder’s sting isn’t immediate enough to keep your fingers from mindlessly wandering to your teeth. Here’s what I recommend, in increasing order of ridiculous over-the-top-itude:
- Paint your nails. Or get an 8-year-old girl to do it for you. That’s what I do. Might be just enough of a reminder.
- Paint your nails with gross-tasting nail polish, marketed for this very purpose. I haven’t tried it but seems like it would work. And it’s clear, in case you’re embarrassed to have colorful nails.
- Pavlok will shock you into submission.
PS: I’m also in love with your use of “apiology” [fixed link]. Was the double entendre (API/bees) intentional? Either way, I’d like to reward that kind of cleverness with stickers. Just let us know your snail mail address if you’d like them: email@example.com (I think @drtall already has some but jumping in to help newbees is definitely sticker worthy so say the word if you want more!)
@dreev you might be right that this isn’t immediately binding enough. Since I made the goal this morning, though, I’ve found that I definitely feel a pressure or obligation surrounding the act of nailbiting which is serving to make me more conscious of it, and a little bit more guilty than I otherwise would be.
No word yet on whether internal guilt substitutes for electric shocks.
My next idea if this isn’t motivating enough is to step through the pledge schedule with derailments and make the financial incentive bigger. If that fails, start wearing a rubber band which I can snap as an analog pavlok-like device.
I’m a bit skeptical of using TagTime to track the total time spent biting nails, because that’s such a short event (for me) that I don’t really like TT’s odds of catching me in the act even once per week, especially with my average ping interval set to 45 minutes.
The apiology wordplay was absolutely intended. I waffled for a few seconds whether to capitalize API but thought folks here would get the joke without me needing to put up a neon sign
Oh, but then how does your version help with that? Isn’t it just as unlikely to catch you? Maybe I misunderstood your version…
Dammit, apparently Merriam-Webster has turned evil  and tricks gullible people like me into linking to ads. That’s especially sad because their definitions are often superior to what Google uses. (Not in this case though.)
 I think Google claims to punish sites for that, showing different results to people searching on Google. Or maybe it’s just if you show different results to the googlebot.
My thought was that it’s more broadly punishing – if at any time between pings I bite my nails, I have to tag my next ping as ‘nb,’ which will increment the count on this goal.
What it appears to be doing in practice is creating something which I remember every time I bring my hand to my mouth, associating that action with the thought of being charged. I’m a bit surprised that it’s working out as well as it is in the first hours, to be honest.
I’ve set it to allow myself 5 failed pings per day, which seems to be low enough that I’m starting to approach the horizon and might be in danger of a derail in the next couple of days. I kind of want this to happen, since I’m not a Beemium subscriber and can’t short-circuit at will, to increase the mental pang I get whenever I start the habitual action.
(Regarding the habitual-ness of it–I was able to get an irritating “skin
and cuticle picking” habit under control with Beeminder, after years of
The trade-off here is between data granularity (entering a point manually every time I bite, which is a bit more immediate but higher friction) and ease of use (since I already use tagtime and it takes seconds to report when I’m pinged).
Yeah, this is really clever (sorry for my denseness in not understanding at first!) and I’m excited to hear how it works.
Note that there’s a 1% chance that when you bite your nails the next ping will take over 3.5 hours to ping. Will you remember for that long? Does it mean you need to write it down and does that defeat the point of removing the friction of tracking?
Ooh, a flip band would work well for that.
Which reminds me that another approach is to just count the times you bite your nails. With an abacus bracelet it’s pretty frictionless to keep count throughout the day and then tell Beeminder the total each night. Or use a physical button. There’s also the tally counter built in to the Beeminder Android app.
Yeah, I’ve been writing this scenario off as “lost data” if I ever don’t remember, but I find that longer ping intervals mean that I’m more likely to record the next ping as failed because I want the default to be harder on me. If I can’t remember whether or not I bit my nails, I fail. This means that I approach derailing faster, to be sure, but it also incentivizes me to be more sure about having not bitten, which I feel like is a net positive.
[quote=“dreev, post:17, topic:2117”]
Ooh, a flip band would work well for that.[/quote]
I really like the idea of a flip band. Will have to check those out and possibly actually buy one. I think that tagtime + flip band would allow me to have the niceness of constant accountability throughout the day without the losses due to faulty memory, which is a middle ground that I’m really happy with.
Sounds to me like you’re a really excellent nail biter…
I can think of a chain of goals that might work for counting things via TagTime.
- send your TagTime pings to a Beeminder goal
- use IFTTT to copy the comment from one goal to another, using the macro
- set the aggregation function of that second goal to
- report your nail-biting with a tag that includes a number, e.g.
Because the default question of tagtime is “what are you doing right now?”, I often forget my (intermittent) intention to record meta-data. e.g. level of happiness, quality of focus since the last ping, or nail biting.
I’ll be really interested to hear how complete your dataset is, how you build this habit of remembering to record it at the point of ping.
update: forgot to include the core element; make sure there’s a number in your tags.
This is like how “evading the police” shouldn’t be a crime because if you get charged with it you obviously didn’t? More like “failure to evade”
Update on the nailbiting:
It’s been 250 days and I still haven’t gotten the habit under control, but I definitely see improvements in my nails and cuticles. What I ended up doing was installing the IFTTT DO Button app, which lets you put an icon on your Android homescreen which will add data to a beeminder goal. It’s only 1 second less frictionless than an actual physical button I can press every time I bite my nails.
Further, I’ve set the nailbiting goal to autoratchet to 8 units before derailment, so I’m in some kind of constant danger. I’m considering decreasing this in the new year, and resolving to more regularly actually enter data. The IFTTT button sometimes fails and I don’t always have my phone on me, but I’ve seen definite improvement with the threat of a $90 sting.
Another update, another year later:
I’ve bought a Flic button that I keep on my ID lanyard at work and it’s been perfect at letting me enter data every time I accidentally bite my nails at work. Flic’s interface isn’t the most intuitive but IFTTT works great with it, so it’s really easy to hook into the Beeminder API.
Another change I just started trying is using the Flic to charge myself immediately. I’ve started with one dollar, so this isn’t quite as bad as a hard shock from Pavlok, say, but it’s as close to frictionless as possible and I’m hopeful that it will actually work.
So I currently have 2 of 3 actions on my flic set up to do something about biting nails:
double-click means "add a datapoint to my goal"
long click means “charge me one dollar”
- I can never let anyone know what the button does or else be a very easy practical joke victim
- I don’t always have the button on me, but I hope the inertia from not biting nails at work helps me stop in other situations. I also have a DO button widget on my phone that lets me charge myself. So it’s just a little more friction when I’m at home or out and about.
My road on the nailbiting goal also still doesn’t quite do what I want it to; I have it set to only ever give me maximum of 4 instances of nailbiting per day but that’s too many.
I think the next step if the immediate charge sting doesn’t work is to make the road even stricter, then up the charge, and maybe alternate until I find something that is super motivational.
My cuticles are the best they’ve been in years thanks to adding an action on my Flic and Do button apps to immediately charge myself a dollar when I find myself nailbiting. Funny that this is the thing that finally seems to be working, when snap bracelets and various hacky data entry schemes with the threat of a big punishment didn’t do anything.
@austinely: I am glad that you found something that worked. I think that it works so well is that you are making the charge/consequence immediate v. waiting until midnight for standard Beeminder do less goals. Your way also helps prevent binging because you can charge yourself for each instance.