Calendar Hack click to try

Often, the biggest challenge in running a marathon is finding the time to train. Having a good training plan is key, but understanding how your running life intersects your non-running life is even more important. After all, you're not likely to kill that Sunday long run if it follows that Saturday night Phish show. Your training needs to work despite travel you do, work deadlines you face, kid schedules, doctor's appointments, election days, Maker Faire, visits from out-of-town friends, baseball games, dates, gran fondos, colonoscopies, court appearances—whatever life throws at you is easier to manage when it's on a calendar.

Each time I gear up for a marathon, I search Google for a way to marry a training plan to my calendar and I'm surprised when nothing comes up. Instead, I do what you probably do: I enter each training run by hand. It's a collosal waste of time and an easy way add or remove a few miles with a careless fat finger.

So to save myself this mundane ritual as I lock in a training schedule for the 2016 Boston Marathon, I hacked together a single-page web application that lets me:

  1. Choose the date of my goal marathon race
  2. Choose a training plan
  3. Specify miles or km (Hello non-Americans!)
  4. Download an iCalendar (.ics) file with the right training runs on it

If you're not familiar with iCalendar files, what you need to know is that you can import them into Google Calendar, the OSX Calendar app, and any other calendar app worth using. If you do use Google Calendar, I recommend creating a new calendar to import into so your training schedule gets its own color and so you can show/hide it as needed. My current training calendar is called "Boston 2016" and it stands out in a lovely purple color.

The app knows about a few popular marathon training plans:

I've read these books and have trained with programs from them in the past. The plans will make little sense if you don't take the time to read the books they came from. So, seriously, understand what you're getting yourself into so you get the most out of your training and don't hurt yourself.

The scope of this app is intentionally narrow—it helps get a stock marathon training plan onto your calendar. Once it's on your calendar, by all means adjust the scheduled runs as necessary so your running life doesn't wreck your non-running life and vice-versa.

There are many additions and improvements I'd love to make to this app and I'd also love to build a other missing tools for runners. My time for extra-curricular programming is limited but, with some luck, I'll keep moving these run hacks forward. Thanks for reading this far. If you have questions or feedback feel free to get in touch via Twitter.