Water Reminder (my first StickyBits app)
When I registered last week at SXSW, the most intriguing item I found in the customary goodie bag o’ shwag I was given was a postcard from a startup called StickyBits attached to a stack of barcode stickers.
Bar code scanning and object hyperlinking aren’t new ideas. Just as microblogging wasn’t by any measure a new idea when Twitter was created. But what instantly intrigued me about StickyBits was that like products such as Twitter that have successfully crossed the chasm to mainstream adoption, StickyBits isn’t pitching features. It’s pitching an easy way to “tag your world” with a playful and inspired design.
In fact, one of the few flat-out complaints I have about the simple StickyBits app in the Android Marketplace is the unfortunately phrased “you have no friends” message that is presumably shown to all new users:
(Hint: never tell your users that they don’t have any friends!)
Twitter for the Real World
Just like Twitter was able to blossom from a simple app asking “what are you doing?” into a massive coral reef of users and use-cases, StickyBits has the potential to become the Twitter for the real-world, allowing us to add discussion, insight, analytics, and incentives to our interaction with a broad assortment of real objects.
But the Twitter comparison will only go so far, since apps that help us interface with the real-world are much more than analogues to their purely digital counterparts. Search engines for barcode content are bound to have some unique traits, as are social networking functionality for barcodes. When designing these apps, we might be able to take some cues from Tokyo’s barcode-savvy culture or draw from known UX best practices, but there’s bound to be many competing and complementary ideas and approaches. I’m fairly sure that there are a number of killer apps for barcodes that will challenge our intuitions and expectations, and that’s what should make the StickyBits developer community a fun, rewarding place to be.
Water Reminder
On several occasions during this year’s SXSW Music Festival, I saw concert-goers collapsing from dehydration. By Friday, bands were reminding their audiences to drink plenty of water.
On my plane ride back to the Bay Area, it occurred to me that it might be interesting to build a “water reminder” that could serve as a minimum viable product for a health-activity service built on StickyBits. The health-activity market is quickly growing, led by the success of Nike+ and the “Calorie Tracker” niche of mobile apps. Most purchased food and beverage products have barcodes, and you could perhaps barcode your containers for whole and bulk foods, making StickyBits an appealing platform for nutrition-tracking services. After all, if you can tell when someone sleeps by analyzing their tweeting patterns, you can probably infer a great deal more information by analyzing your nutritional consumption patterns.
The Water Reminder is a mobile-device compatible webapp with the simple utility of reminding you to drink water. Call the Water Reminder hotline (provided courtesy of Twilio), and choose the number of days you’d like to subscribe to the Water Reminder. From the hours of 11am-6pm, if you don’t scan a purchased or refilled bottle of water for more than two hours, an SMS message is sent reminding you to get a drink of water. If an additional half hour passes without a water check-in, you’re sent a phone-call reminder.
Water Reminder was mostly written at 30,000 ft. and needs to be integrated with the still-unreleased StickyBits API. But it seems to be working pretty well after just a couple hours of work, and the core application functionality is implemented in just over 100 lines of code.
Here’s the main view for incoming calls:
(see the Twilio documentation for details on the request arguments)
My first attempt at scheduling checks for subscribers via App Engine’s Task Queues was ridiculously inefficient. The solution for my predicament was the task object’s “eta” property, allowing the task creator to specify an absolute time for a task to be executed.
How I’d Like to Improve the Water Reminder
Here is my list of ponies for Water Reminder:
- Scan your other drinks (a sports drink, a coffee, etc.) to re-calibrate your expected current hydration level.
- Instead of subscribing for a set number of days, users can configure a temperature threshold. For example, the Water Reminder could be configured to activate on days where the user’s location exceeds a local temperature of 90 degrees.
- Access to the right StickyBits API endpoints. I think it’s only a matter of weeks (or days?) until a limited API is made available, and I’m keeping my fingers crossed that the first API release will make it relatively easy to disambiguate product information from a commercial barcode so that I can easily tell which barcode scans are associated with bottles of water.
- Leverage the ability to share and view comments and multimedia attached to barcodes. I’ve thought of some gimmicky uses of this feature, such as adding a promo for charity:water. An integration of comments should ideally enhance the app’s core functionality of helping people stay hydrated.
The Water Reminder concept doesn’t do a great job of taking advantage of the content-attaching component of StickyBits, so once I have access to the API I plan on making a few more open-source apps demonstrating the range of uses for the StickyBits platform.
Do you have any other ideas for how I could enhance Water Reminder, or suggestions for StickyBits apps I could work on? Leave ‘em in the comments!





