Saturday, August 30, 2014

Push-up Experiment: The Nerdy Parts

I wrote The Push-up Experiment earlier and got enough responses asking about the nerdy parts that I'm now writing this one. So, buckle-up and hold on, this could be a long nerdy ride.

Tools

Here are the tools that I used with links:

Collecting the Data

Google Drive allows you to build surveys and send them out; it's called "Google Forms". Your drive options might look a little different than mine but here's the gist of it. Create a new form and make a question for it. For the push-up survey I simply asked "How many push-ups did you do?" and left it as a "Text" type question. When you do this it shows up as a simple text box on the survey and when opened on the phone brings up the keyboard. One other thing I did was only allow for numbers to be entered into the text box because obviously I can't do "abcxyz" number of push-ups. This also has the added benefit of simplifying the Android keyboard so that it only displays the number keys; a simple thing but it makes life just that much easier.
When you're done with your form click the "Send Form" button in the top right and copy the URL from the dialog box, you'll need this later. Google will now take any results from this survey and drop them into a sheet that has the same name as the survey with "(Responses)" after it. It will also time stamp every response. It's inside this sheet that I set up the graph. I chose an easy to read area chart but you can play with that to make it fit with how you want it to look. After your chart looks good you can publish it which gives you two options "Interactive Chart" and "Image". I'm a fan of the image option but it doesn't really matter which one you go with honestly. Now that you've done that you can copy/paste that embed into any web page or you could probably get creative tweet it out or whatever, sky's the limit! Alright, now that we've got this all set up there is on more important thing to do, remind yourself to do push-ups and make it easy to record that I used IFTTT for this.

Reminders and Magic

This part isn't too hard but it could vary greatly depending on a couple things: 1. Android or iPhone and 2. the notification service. I've got an Android phone and I'm using a notification service called Pushover but IFTTT works with a lot of notification services (they even have their own app for Android and iOS) so you don't have to use Pushover. Regardless the steps will be basically the same.

If you're not familiar with IFTTT be warned, it can be a little overwhelming at first but once you dig into it a lot of wonderful uses start to come to mind. Basically it is a simple service that says when "ABC" happens on the internet trigger "XYZ" to happen. It has a list of triggers and a list of actions for all kinds of services like Twitter, Facebook, RSS feeds, Reddit, so many more. As a silly example you could have it post a tweet on your behalf every time a Craigslist ad goes up matching the search term "shopping cart". Enough about that, let's get back to the task at hand: reminding us to do push-ups.

Using IFTTT I created a new recipe that triggers every day at 6:45 and when that fires it sends a Pushover notification with the URL to the survey we created earlier. The trigger is under the "Date & Time" channel and I selected "Every day at..." then just put in 6:45 and go to the next step. Select the Pushover channel (or whatever notification service you're using) and in the step after that paste in the URL for your survey. Finish off your steps for creating the recipe and you're done! You'll now get a notification every day with a link to your survey and the results from that survey will go into your Google sheet to be graphed and automatically published wherever you included the publish code.

Conclusion

Yes, this is a bunch of work and a lot of weird tools that may or may not have been created to work with each other but it was a fun problem to solve and now I have an image that I put anywhere and it will always show my most recent push-up progress. What other things can you think of that this might be useful for?

Post a Comment