Apple Watch Workout with smart workout training plan

Jelle De Laender
6 min readFeb 4, 2020

I started running couple of years ago now. I’m running mostly for fun, to clear my head, work on my condition and train for events like half marathons, the 10 miles of Antwerp and Urbain Trails in fancy cities.

In the beginning, I was running with the iPhone and Runkeeper for iOS. It worked pretty well, but running with an iPhone is not optimal due the size and weight. Some years ago, Apple did release the Apple Watch Series 2. The first version with stand alone applications and an embedded GPS. It worked pretty well, except that Runkeeper managed to mess up some of my runs when syncing. For example, saving my runs in miles versus kilometers without converting it, messing up my paces completely... Some runs where lost in the process as well… but I think I ranted enough about that in one of my previous blog posts.

Image Source: CultOfMac.com

I did switch to the by default installed Workout application of Apple, which is still my preferred way of keeping track of my runs and activities. Especially with the latest Apple Watch series 5, with the always-on display, running is a lot more practical. The Apple Watch is also allowing to listen to some music or podcasts if you have the Airpods. This means you can go out running, only with your Airpods and the Apple Watch, to keep track of your effort and to listen to your favourite podcast or some music. No need for a heavy iPhone or other device anymore 🥳

One thing I was still missing however were workout schedules that Runkeeper was providing on iOS. Those workouts are however always pretty static. You set a start date, number of times you can run every week, a target, and they generate a fixed schedule. If you miss a run, due other priorities, bad weather, or just lack of motivation, you are behind of the schedule. The schedule is not taking care of this and is not adapting. You see the missed runs and the original planned future runs. Sadly, those applications are not really helping or motivating in those cases. In stead of motivating you, you can only shift the schedule for a full week versus some days. Not really motivating, and I often failed to complete a schedule fully due lack of motivation as result.

I was looking for a new application and challenge, and ended up with an idea related to running: A small and more importantly a super simpel basic app, with a smart algorithm using some Artificially Intelligence or Machine Learning. Taking as input your target, a run, at a specific date, at a specific pace. This combined with input from Apple HealthKit, which contains all your last workouts, runs but also other workouts, recorded by Apple Workout but also other fitness applications, like running applications. The application would then answer the one magical question: I want to run today, what do you suggest… which could be a rest day, or a specific type of run, based on your history, target and a set of approved workout schedules. The algorithm should find the best fitting schedule plan based to your run history and your target, so it could suggest the next workout.

Missing a day due bad weather, less motivation wouldn’t be a problem, as the algorithm would cope with this and change the next workout when you are ready for it. Resulting in a harder training day, or a more relaxed one. All related to the target, current condition and remaining time.

I did a market research and tried a lot of applications. My objective was to find an independent tool. I want a the tool is using data from the Apple HealthKit and is not forcing me to use their running/record app. This way, I can decide which app and hardware I use for running, as long as the data ends up in the HealthKit.

I tried Nike Training Club and Nike Run Club. However, I couldn’t find a way to get workouts from the HealthKit being included in the dataset. I only saw runs from 2010 that were still linked to my legacy account 🤷🏻‍♂️. “Formyfit: your personal coach” looked promising, but was failing as well. Same for MyFitnessPal sadly.

I did install more applications, like Runcoach, My Run Plan, Map My Run by Under Armour, Freeletics running, Freeletics - Personal Trainer, Adidas Training by Runtastic. None of them did meet my requirements… did I found the holy grail? Let’s build it right?

Source: TrainAsOne website

When I was about to fire up Xcode and start making a basic app reading the HealthKit data, I stumbled on TrainAsOne.com. Checking the website, it is describing exactly the idea I had, and the features I wanted.

TrainAsONE’s unique AI technology does the thinking for you. Re-evaluating your plan after every run, missed run, or preference change, ensuring that your training is always optimal for your goal(s).

You can define one or more run targets (date, time, pace). Based on your last workouts, an AI algorithm will try to find the best next workout. It is a bit different as my idea, as I wanted a simpel application showing your ‘suggested run/activity for today’ while this is building a full schedule, and is adjusting and rebuilding it for every new activity being added. The interface is a bit outdated but it is doing what it’s promising, which is of course the main reason of using an application.

Source: TrainAsOne website

The last missing piece of the puzzle was ensuring I could use any run application without being locked in. The key here is HealthFit. A paid but cheap iOS app that can sync your HealthKit dataset to multiple services, like TrainAsOne 🤗. There are other alternatives like RunGap, but HealthFit looked the best tool for me in my quick research. And so far, it’s working pretty well. I encountered one bug, which I reported to TrainAsOne and they fixed it quickly while working with HealthFit for a more longterm fix 🙌.

HealthFit for iOS. Image of HealthFit

TrainAsOne is generating me a running schedule, adjusted to my targets and current condition. HealthFit is allowing me to sync HealthKit to TrainAsOne as input data. As the data is loaded from HealthKit, I can run with any application as long as the workout ends up in HealthKit. TrainAsOne is showing me the suggested next run, and the current schedule for the upcoming month. However, this schedule is being updated and adjusted after every workout, or when you miss a workout 🙌.

TrainAsOn workout reminder

The app is sending an email with the upcoming workout and details, and as bonus, giving a deep insight in your latest workouts via detailed graphs 👍.

I’m still using the default Apple Workout app on the Apple Watch, but nothing is holding me of using a different workout application to track my runs like RunKeeper or Strava, as long as the application is saving the workout in the HealthKit database. Apple Workout app is working nicely, but is sadly still missing support for custom workouts like interval training 😞. It is also hard to get your TrainAsOne workout suggestion mapped on the Apple Watch (as standalone app), allowing you to run offline without an iPhone. There are some apps available though… To be continued…

Fun sidenote: Seems once you install ‘Nike Run Club`, you are unable to remove the app anymore. Every night, it gets re-installed by magic… 🧙‍♂️ Anyone an idea how to get rid of this app for real?

Update: 2020–01–15: Seems Strava is now also allowing to import activities stored in the Apple HealthKit, recorded by the default workout app. More info

--

--

Jelle De Laender

Founder of CodingMammoth. Developer of Semonto, our Server/Website Monitoring Tool. Head of Security at Sketch 😎👮‍♂️