Android and Beeminder and Tasker
We released a 2.x version of the Android App in the last couple weeks, and we’re so excited that we just cannot hide it! Things have improved immensely since we officially released our smartphone apps over a year ago and we figured that not only is this latest release  worthy of some considerable fanfare, but also that it would be a good idea to let people know what’s possible with it. Because it’s probably more than you think.
Improvements and Changelog
Most importantly, for those who’ve been using this since the 1.x days, the slowness and frustration and uncertainty about whether it was showing stale info or whether datapoints made it through is gone. Proper push syncing is implemented so changes usually show up in the app in real time, and when you submit datapoints via the app they show up red until they they make it to the server. Just make sure you get your device online once in a while.
We won’t bore you with the full list of tweaks and fixes but you can see the complete changelog in the app itself — under Settings → About Beeminder → ChangeLog. It’s pretty impressive. And all thanks to Uluç Saranlı, by the way, who has put in close to 700 hours on it at this point.
Aside: Uluç is my friend from grad school, now a professor of robotics, tied with David Yang for most brilliant programmer I’ve ever met, and we’re ridiculously lucky that he got excited enough about Beeminder to dive in with us by taking on the Android app. He’s helped with some of the trickiest graph plotting bits as well, not to mention the Mathematica to Python/Matplotlib port. Next, of course, is our robot drone army.
Tasker / Submission API
Possibly the most exciting thing about the Beeminder Android app now, for supernerds anyhow, is that it exposes a submission API to other apps. This is sweet if you want to build your own custom widnozzle to submit your nozz-whuts to Beeminder. We’ve open-sourced our Beeminder Android API library — still rough around the edges. Let us know if you want integrate Beeminder into your own app.
“Do things like automatically mind your sleep based on how long your phone’s display is off at night.”
Or if you use Tasker, you can already do this, no programming required. Tasker is like IFTTT for your Android. It exposes triggers and events that you can string together kind of like a recipe. It lets you plug in Beeminder as the event portion of a recipe, and so you can do things like automatically mind your sleep based on how long your phone’s display is off at night, or start a timer every time you launch Candy Crush Saga, and stop and submit the datapoint every time you quit the app. Beeminder actions currently appear under the “Plugin” section of Tasker’s task editing screen. Beeminder conditions are soon to arrive so you can trigger actions when your goals get within their panic time.
Apart from Tasker, we have an integration with one other Android app, namely, our own TagTime. Every time you answer a TagTime ping, it can send that to Beeminder.
Manual Data Entry
We need to figure out how to make this more discoverable but since you’re reading this we can now tell you: By swiping at the data entry box, you can use different methods to submit data to Beeminder.
- Direct entry
- This is the default at the bottom of the goal details view. Pro Tip: if you press the date or the value you enter them directly, instead of just using the + / – below them.
- Tally entry
- Swipe the data entry area right (see the narrow yellow rectangles?) and then tap the counter. Now you can increment the count by touching anywhere on the screen. I use this to do pushups by putting my phone on the floor and touching my nose to it on each pushup. Use the back button to submit the data.
- Timer entry
- Swipe the data entry area again. Tap to start the timer. Tap again to stop and submit the data. You could use this for tracking time sleeping to Pomodoros to planking. Pro Tip: you don’t have to stay in the app — if you leave the timer keeps running, use the notification item to get back to the timer and stop it. (Or of course set up a Tasker task to automatically stop it when you, say, leave the house, or put your phone down on its face or whatnot.)
The timer in particular is new, and it is useful for so many things! You can track time spent: sleeping, walking, working, cleaning, studying, running errands, and pretty much anything else you can think of.
You can add as many Beeminder widgets as you want to your home screen, showing you what color your goals are and how much more you need to do for each. When you add a widget to your screen, you can also set a default value for it, so that when pressing on it delivers you to the goal page, the default amount to be entered is pre-filled. We think the widgets are pretty great as a sort of personal dashboard, or ambient aweness of the state of your goals. Seeing a lot of red on your home screen should, rightly, induce some unease, and lots of green means party time.
Other Goodies You May Not Have Noticed
- You can view the entire list of datapoints, edit, and delete them. Use the menu button (or three stacked dots) in the goal details view.
- Long press on the goal in the gallery list to skip straight to settings or road dial. 
- Toggle auto-comments in the app’s settings.
- Log in to multiple accounts, inspect their goals, and create widgets for all of them in parallel.
- Send feedback via the app, with diagnostic info (if you encounter a blatant bug and send feedback with diagnostic info included there’s a good chance we’ll be able to figure it out and fix it).
P.S. To our iPhone users: We hate to say it, but the Android app is currently far superior. Andy Brett says we can put his reputation on the line here and put him publicly on the hook to release a new version of the iPhone app by New Years.
 If version 1 of the Android app was Marvin the Paranoid Android, this one is like Data… or C3P0! Version 3 will be Optimus Prime, and version 4 will be Skynet.
 We’ll probably drop the road dial from the next version of the Android app. Holler if you use it a lot and would find it annoying to have to go to the website to dial your road!
Image credit: trampt.com