Sunday, December 11, 2005

Gym Log

I was in the local KMCSC gym this afternoon on the ski machine, listening on Tanya's ipod, watching Ashlee Simpon on the TV and apparently somehow still was bored and my mind started wandering. I got to thinking about a software project idea I had back in 2004. At the time I was working out at the gym and thought it would be really handy to have a tool that could log my performance. People have been logging their stats for years on paper for years to track improvements, and motivate to set new records. A standard pen and pad of paper doesn't cut it when you're a computer science student though. I thought, hey it would be neat to have an application for a PDA that I could log my workout; what exerices I did, how much weight I lifted and for how many repititions. It would be able to present the user with their personal best for each exercise and possibly even automatically set new goals for increasing weight to lift. It could advise the user that they are overtraining one muscle group or totally ignoring anothe muscle. Once the stats are inputted into the PDA the user could plug their PDA into their home PC and upload their latest gym log to their PC and use something like Excel to draw graphs of performance over weeks, months, years, etc. So I imagine the technically inclined would find this pretty useful, but why didn't I follow up on it? Well I shelved for two reasons really:
  1. Not many people own PDA's, heck even I don't own one and I was going to write this app for one!
  2. Those who have a PDA might not want to carry an expensive PDA into the gym.
  3. Coding for a memory limited platform isn't all that fun (to me).
Fast forward a year and the idea has crossed my mind many times. I really want to track my performance, primarily as a motivator. It's easy to get into a rut and keep doing the same exercises and lifting the same weight week after week. Once your body adapts to a certain limit it no longer continues to build muscle tissue or increase your lung capacity. All you are doing is really burning calories.

So I'm revisiting my gym log idea from a slightly different angle. It's inspired by this very Blogger and Gallery 2.0 that I installed the other day on my website. The combination got me thinking about how a web based interface for a gym log mightwork. Like Blogger anyone could register to have an account. The user could log-in and have a variety of choices:
  1. Input their latest workout stats
  2. View their workout history; graphs, pesonal bests
  3. Set new goals
  4. View their friends logs
  5. Overlay a friends stats on top of their own graphs (competition!)
  6. Edit preferences ( add activities that aren't in the gym log by default i.e. dutch bike tossing)
Now I haven't even mentioned anything about my original idea of having a device to take into the gym like a PDA to replace the pen and paper. Why? Well my reasons haven't changed for not wanting to write an app for a mobile device. But! The mobile device still has it's place in this latest plan. You see...the web interface would be just one way to make input. When desiging the software I would make available a public API so that anyone could write their own application for inputting to the gym log. This would open the door for other software developers to write apps collecting data on PDA's, cell phones, Ipods, etc. The data could then be imported into the gym log using the public API! This relieves me from supporting the vast number of mobile devices out there. I figure that I will focus on making the web based side of the gym log as useful as possible and let the users write applications for their favourite cell phone or latest ipod, or whatever. These mobile apps that interface with the gym log will be the gravy that really make this thing useful. I can't wait for that day when I can take a mobile device into the gym, log my workout as I do each exercise, come home, plug it into my PC and then view the results on GymLog.

No comments: