Request: Provide a non circular option for Extra Large Complications

The announcements of watchOS 7 have generally felt like Christmas Morning to me. As someone who has been working heavily with complications for the last few years, Apple resolved nearly all of my outstanding complaints for the platform. I can now implement nearly all of the ideas I have for watch display and do so in a more power efficient and clean way.

There was, however, one tiny lump of coal in my stocking. One of the many improvements to the complication system was the introduction of a new “Graphic Extra Large” complication. This is a modern update of the classic “X-Large” complication that allows for full color rendering and use of the new SwiftUI complication system.

I really like this watch face as it provides a large clear time and then a substantial canvas for complications…except in their current state in Beta 1 all the complications that are shown here must be masked to a circle. ☹️

This seems like a huge waste of the screen space of this watch face and limits what data types can be effectively displayed here. There are certainly many data that fit well into a circle, for example all the gauge based displays. But many data types just don’t fit well into this constraint.

As an example, here is a mock-up of a data type that I think would be wonderful on this face, but currently isn’t possible, Calendar.

There clearly isn’t a total prohibition against rectangular complications as the Modular faces received an ever larger canvas in this update…but it appears that for this face in particular there was a stylistic choice to only permit circular complications.

I have filed this desire as Feedback #FB7798509. Fingers crossed this might change in a later beta of watchOS 7.

David Smith




The Gentlest of Sherlockings

This week Apple introduced sleep tracking for the Apple Watch with watchOS 7. This was a day I’ve long expected since I introduced Sleep++ way back in September of 2015 alongside watchOS 2. I wanted to try out Apple’s approach for a few nights before I commented on what impact I think this will have for Sleep++.

In short, I think this will be an overall boost for 3rd-party sleep trackers and lead to a broadening of the Apple Watch sleep tracking ecosystem.

We call it ‘sherlocking’ when Apple takes a feature or capability of a 3rd-party app and elevates it into the main OS. The impact of this can take a wide range of forms. It can be utterly destructive and eliminate the market for the original app, or just as often, it can elevate awareness of the features and be a boon for developers.

Over my more than a decade of being an Apple developer I’ve personally experienced both ends of that spectrum.

For example, when Apple introduced 3rd-party keyboards I created Emoji++. Which provided a more intuitive way of finding emoji. A similar design was later adopted by the iOS keyboard and with it all interest in my app evaporated overnight.

But I’ve also had the opposite experience. When Apple added a motion co-processor with the iPhone 5S they provided no mechanism for reading the data it tracked. So I made Pedometer++ which was the first app to surface this step data to users. A year later Apple introduced the Health app as one of the built-in apps which included step tracking as one of its features. The net result was a dramatic up-tick in Pedometer++ usage and downloads.

What I saw happen with Pedometer++ was that by adding step tracking to the Health app Apple provided the most powerful marketing tool possible. They introduced countless users to the idea that they could use their iPhone to track their steps and that awareness then overflowed into the 3rd-party ecosystem.

So often the biggest challenge I face as an indie developer isn’t just making customers aware of my products, but making them even consider that the capabilities I provide are even things that their iPhone can do. When Apple takes on a feature and makes it a 1st-party experience they also take on the burden of that communication and educating customers about what is possible.

Often the experience Apple provides is tailored to support the widest possible audience, which by definition will work for most customers. However, there will always be customers who want more than a basic experience. Which is where the overflow to 3rd-party developers can begin. I hear countless stories of customers who started off tracking their steps in Health but then later switched to Pedometer++ when they wanted a richer, more powerful experience.

Having spent a while exploring Apple’s sleep tracking design I’m increasingly confident that I’ll see a similar effect this fall.

The biggest challenge I face in marketing Sleep++ is convincing potential customers that sleep tracking is even possible with an Apple Watch. They read an Apple Watch review with a long list of pros, but then always finish with “No Sleep Tracking” in the cons list.

I suspect this fall Apple will heavily market sleep tracking as a feature of the Apple Watch (and if I were to guess introduce a new sensor or capability with the Series 6 watches that makes it even better). Apple’s approach to sleep tracking that they announced this week seems to fall firmly in the “designed for a wide audience” bucket. It is thoughtfully designed and I’m sure their data analysis is first class, but there is only so far they will go.

My goal for Sleep++ is to provide approachable, intuitive display of your sleep patterns to help you make better sleep choices. For example, Sleep++ provides things like this advanced visualization of your typical nightly patterns:

This intuitive display of complex data is the main reason that I hear people like and stick with Sleep++ rather than one of my varied competitors. I believe this approach will continue to provide value moving forward.

If anything Apple providing 1st-party analysis will improve what I can offer by allowing me to leverage their advanced data collection into my own sleep analysis algorithms and improve the accuracy of my data. All the data Apple is collecting is stored in the Health app so I can start pulling it into Sleep++ and boost my own accuracy too.

I suppose a good summary of my expectation is that right now (say) 1% of Apple Watch wearers think to try sleep tracking. After this fall, most Apple Watch wearers will be aware of it and (say) 50% will try it out. Apple’s approach will be sufficient for 90% of them, but 10% will want more. Leading to now 5% of Apple Watch wearers looking for a 3rd-party app to augment their experience…so I end up way ahead overall.

This is entirely speculative and it is possible that the market for Sleep++ will completely evaporate, but I’ve been doing this for long enough and have seen this pattern repeat itself often enough that I really don’t think so.

I suppose you could say I’m not losing sleep over it (sorry I couldn’t resist).

David Smith




Building Maps for watchOS and Watchsmith 1.3

WWDC 2020 is right around the corner and with it we will likely see the introduction of watchOS 7, but I’m not quite finished with watchOS 6. Today I’m rolling out Watchsmith 1.3. Which includes a completely custom mapping system which brings interactive, dynamic maps to watchOS.

Since the first Apple Watch a built-in Maps app has been included with watchOS. This provides turn-by-turn directions and point-of-interest search. This functionality, however, isn’t available for 3rd-party apps. For us all we have had a basic map component that provides for static display of a map with optional pin annotations.

These are useful but limited in their capability. So once I wrapped up my major work for Watchsmith I left myself a little ‘dessert’ project to see if I could leverage the capabilities in watchOS 6 to build my own fully dynamic mapping system. My goal was to provide something comparable to what customers would be used to on iOS, with full interaction, dynamic zoom, and rich overlays. I wasn’t aware of any other app that has done this so I wasn’t really sure if it would be possible.

I was delighted to eventually to get this to work, which is a testament to the great work the watchOS team has done with bringing SwiftUI to the Apple Watch. Even more exciting is that this can run smoothly on a variety of Apple Watch hardware (including the Series 3).

Radar Map

The first place I then took this new capability was to add interactive weather radar. This augments the existing forecast displays with a visual view of the weather. You access this in the Weather area of the app and it provides an animated view of the last hour’s precipitation. You can pan this view by swiping your finger, use the Digital Crown to zoom in and out, or double tap to quickly zoom in.

This is showing data from the RainViewer system which has some of the best global coverage I could find.

Live Workout Map

I’ve also now added the ability to view a live map showing your current position during outdoor workouts. This is includes a route track showing where you have been so far. This view also indicates your current direction of travel.

Workout Route Map

For any workout that includes route tracking (whether recorded in Watchsmith or not) I now also show you a full map of your path. If you tap on the summary map you can then also get a fully interactive version should you want to zoom into any part of it.

Conclusion

I’m really excited that things like this are now possible on watchOS. For so long I have felt that there were so many ideas I had for features that simply weren’t possible to create on watchOS.

Getting mapping to work has been a delightful departure for this kind of limited thinking. It is clear to me now that I am only limited by my imagination not by my tools anymore. I suspect this will become even better in watchOS 7, I can’t wait.

Watchsmith in the App Store.

(Radar Map, like all weather data display, requires a Premium subscription)

David Smith




Choosing Fitness

Today I turned 37 and I am the strongest I have ever been.

I can say that with certainty, because this morning I tested my deadlift and lifted 300lbs, which is the heaviest weight I have ever lifted in my life, ever.

I’m not much of a ‘fitness is something that starts in the gym and ends up on your social media’ kind of person, but this milestone is very significant for me as the culmination of a three year long journey. I think I’ve learned a few lessons from this experience that I wanted to share in the hopes that they might be useful to someone else. None of these are particularly ground breaking but they the honest assessments of where I’ve done well or poorly over this process.

I find it really tricky to talk about fitness. It feels so hard to not come across as boasting or insensitive, so please know that’s where I’m coming from.

Three Years Ago

Three years ago I decided that I wanted to take my health and fitness seriously. I was 34, and while in good health I was beginning to feel the effects of age. I could get away with not really working out or being too thoughtful about what I ate in my twenties, but as I entered my mid-thirties this lack of intentionality was perceptible.

Mostly in small ways. Like how I’d feel after running up the stairs, or helping a friend move a couch, or over indulging at a meal. But I didn’t like where this path would end up leading me, so I decided to change.

For me this looked like starting to go to the gym 5 times a week and becoming more conscious of my diet. The result is that 3 years later I am in the best shape I have ever been. Better even than when I was 18 and ran cross country.

Here are a few assorted notes from along the way.

Find something that you will consistently do

The more I have gotten into fitness, the more I am aware of the incredible diversity of methodologies, approaches, gyms, influencers and media there is in the fitness space. Deciding on a direction is incredibly overwhelming.

The key thing I have found is that is more important to find something that you will do consistently than it is to find the ‘perfect program.’ The results from a good program, followed consistently, will always outpace the result of a great program followed intermittently.

The fundamentals of change in fitness are universal. If you want to get strong, you must lift things that are heavy. If you want to get flexible, you must stretch your muscles. If you want to get endurance, you must raise your heart rate. If you want to acquire new skills, you must practice. If you want to lose weight, you must eat fewer calories than you burn.

There are meaningful differences between programs, but they vary in terms of the coefficients of your change, not the fundamentals. So find a program you will follow that is honest about the work you need to do in order to get the results you desire, and then don’t worry about if it is perfect.

Set Goals

The reason today was such a big milestone for me personally is that a 300lbs deadlift was the last of the five goals I set for myself when I began working out in earnest.

My whole life I’ve been thin and scrawny. My body type is the classic distance runner. Which was useful when I ran cross country, but if I’m honest I never really liked. I used to say that I was ‘wiry’ to make myself feel better, but to tell you the truth I was weak, and I didn’t like that.

Goals are a powerful framing tool, to help you navigate towards the desired end state. Three years ago I set out five goals for myself, in five different areas of fitness.

  1. Run a sub-6 minute mile (Short Endurance)
  2. Complete Murph1 in less than an hour (Long Endurance)
  3. A bodyweight clean-and-jerk (Technique)
  4. A 200lbs clean (Power)
  5. A 300lbs deadlift (Strength)

Over the last three years, I’d reached all the others, but raw strength has always been my sticking point. But I set it as my goal and then worked towards it.

I will say that I have found that the best kind of goals are the ones that involve a ‘transformation’ - where you are looking forward to something you want to be able to do but can’t now. All of my goals involved an end state that, while desired, felt almost impossible when I started. What is great about that kind of transformational goal is the sense of pride you feel when you attain it. It is incredible. You are literally doing the impossible and that just feels cool.

Additionally, I have found it helpful to have an ‘emotional’ goal as well. Something that tugs at my heart and helps me through the challenging times in the gym. For me that is the thought of picking up my daughter (8) in my arms. Every morning, whenever she first sees me, she runs towards me and leaps into my arms. She has done this since she could first run. I want to remain fit and strong enough so that for as long as she wants to do this I will able to catch her. I never want to have to say “Oooph, sorry my love, but you’re getting too big for this.” The feelings and emotions that pierce me if I think of having to say that have gotten me through many a tough workout.

These types of transformational and emotional goals are in contrast to the kind of goal that is doing more of something you can already do. For example, setting the goal of running three 5K races in the summer after you run your very first one. This might be a good means to motivate you in the day-to-day, but I personally struggle to have goals like that really drive me. I’m not different at the end of it, just more of the same.

Similarly I’m not the kind of person who is really motivated by streaks. I can see how they are powerful for some personalities, but for me the challenge is always that once I miss a day then all the past work feels somehow worthless. In contrast, a transformational goal is entirely built on steady progress over the long term, where missing a day or week doesn’t matter overly much.

Don’t get hurt

While perhaps an obvious thing to say, avoiding injury has turned out to be one of the most important lessons I’ve learned about fitness. Yet nearly everyone who starts taking their fitness seriously will inevitably encounter it at some point. But it doesn’t have to be the inevitable result of exercise.

The best bit of advice I ever got on this was from a coach who would always introduce heavy lifting days with the phrase “Be Ambitious, but Not Greedy.” That so clearly summarizes the mindset that makes progress but avoids injury. You want to work hard, do the difficult work of improvement, but do so in an honest, humble way. Greedy exercise involves taking our abilities for granted and letting our ego make decisions for us.

In my own experience, injury occurs when “Capability exceeds Preparation.” You get hurt when you are physically capable of something (otherwise you couldn’t have performed the action that hurt you), but you weren’t ready to do it. This can be in the micro, like failing to adequately warm-up. Or this this can be in the macro, where you are not listening to your body and overworking yourself.

The tyranny of relative change really hurts us here. If we take a step 10% backwards by getting injured, we don’t have to do 10% of forward work to catch up for it. We have to do 11% more, just to break even again. But, if you only ever takes steps forward, no matter how small, you will always be getting closer to your goals.

Variety

Another essential aspect I’ve found is that it is really important to have variety in your workout program. Both for your interest and motivation, as well as to help you avoid injury, doing lots of different things is highly desired.

Before I started exercise, I did what I think every legal disclaimer at the start of a workout video says and I “Consulted my Physician.” He said something that I have kept in the back of my mind the whole time.

“You only have so many repetitions in each of your joints, so the more you can spread out the load on them, the better.”

Before my current regime I would run, just run. This worked fine when I was a teenager and into my early twenties, but eventually my knees and hips started to hurt. So I’d stop running for a while, then when I’d start again they’d feel good for a time, then again they’d hurt, and the cycle would continue. This was unsustainable and unproductive.

Instead, what I do now is seek out exercises that are widely different and complementary. I might run one day, lift heavy another, do HIIT the next, and so on. This is better both for my enjoyment of the activity and has been dramatically helpful for keeping my joints happy.

For me, I have found that following a program with this built-in is really helpful (with something like CrossFit), but just about any approach judiciously mixed up will do.

Recovery is more important than intensity

I remember listening to a fitness podcast early on and being stunned by someone observing that lifting weights doesn’t make you stronger, indeed each rep actually makes you weaker…it is recovering from lifting weights that makes you stronger. This is a subtle but essential distinction to make.

I have found that I can crush it in the gym, but if I don’t take care of myself in my life, all that work isn’t actually doing me much good. I need to sleep well. I need to stay hydrated. I need to eat well. I can’t out-exercise a poor lifestyle.

Thankfully I have found that there is a virtuous cycle between working out and a desire for healthy choices more generally. If I make poor sleep or food choices the night before working out, my performance will be affected in a tangible way. I will feel sluggish, weak and not able to do what I am typically capable of. This is an awful feeling, and after experiencing it enough times I found that if I draw this connection consciously I am much more likely to make good choices each night.

Comparison is Poison

There will always be someone faster than you, someone who is stronger than you, someone who has a better body than you, someone who is more athletic than you. This is universal and both depressing and freeing at the same time.

When I first started going to the gym I found myself constantly comparing myself to the other people there. This never led me anywhere useful. Everyone of us is on our journey and has a different body.

We tend to assume our own strengths and be embarrassed by our weaknesses. If I can run better than someone else then I just chalk that up to being built like a runner…but if someone else is stronger than me that’s because I’m weak. Neither is particularly helpful. We cannot control other people, or how they rank compared to ourselves. We can only be better than our past self - that is something we can control.

Fitness Tracking with the Apple Watch

Of course I couldn’t finish this discussion without mentioning the Apple Watch. It should come as no surprise there has been a steep increase in my interest in health and fitness app development over the last three years. This is no coincidence. I have found that the Apple Watch is a really compelling tool for assisting me in reaching my goals.

This comes in several forms. The most straightforward of which is the “Observer Effect” - simply by measuring something we perform better at it. If I go out for a run and just start running, or instead I hit “Start Workout” on my wrist, the later case will result in a better run. There is something deep down in our brains that just works harder if it knows it is being watched.

This reminds me of the experience I’ll have at the gym if a coach walks past me. All of a sudden my form gets better, my pace increases and I feel more capable…just by being watched. The Apple Watch is a smaller version of that feeling that we can have with us all the time. It can always be there to watch and observe.

I’ve also found it to be really helpful to have a objective measure of my performance. This can take both sides. Either I can be encouraged by how tough this workout feels is being proven out in my heart rate or pace. Or alternatively, I can look down at my wrist and see that I can push things a bit further. In both cases I can do better because I’m not basing my choices purely on how I feel, which can often be misleading in the moment.

I also have found that I just love making this kind of app. The countless stories I have received from users of Pedometer++, Activity++, Sleep++, Workouts++, and Watchsmith are really incredible. Stories of how people are using my apps to help them on their own fitness journeys. That is more impactful than any other kind of work I’ve ever done.

Straightforward but not Easy

Writing this kind of thing feels a bit weird. I don’t want to be preachy, I don’t want to be boastful, I don’t want to make anyone feel badly. My goal is quite the opposite. I know that if I’d read this myself a few years ago I would have very mixed feelings about it. “Oh that’s great for him, but that’s not for me.”

I overcame my reticence to write this with the thought, however, that for someone it might land the other way. That if an un-athletic, scrawny programmer can double his deadlift and become strong then maybe so can they.

The most universal truth I’ve found is that fitness is “Straightforward but not Easy” - anyone who says otherwise is trying to sell you something. It takes deliberate, intentional, challenging work, but the process is reliable. If you want to get strong, pick up heavy things. If you want to change your body shape, eat better. If you want to have endurance, get your heart rate up. If you do, you will see the result. It won’t be easy but it will happen.

  1. Run 1 mile, Perform 100 pull-ups, 200 push-ups, 300 air squats, Run 1 mile. Partitioned as desired, all while wearing a 20lbs weighted vest.

David Smith




Opportunities for watchOS 7

As I write this it is 38 days away from WWDC. I suspect the features we will see in watchOS 7 is all locked in at this point and the engineers are working furiously to get it ready to show the world.

Nevertheless, I’ve found myself thinking a lot this week about where watchOS is heading. Mostly because I just wrapped up the last ‘major’ update I have planned for Watchsmith before watchOS 7 is announced.

So now I am turning my attention towards the future and what might be possible for the Apple Watch.

The right amount of sherlocking

Many of the features I’m going to discuss below exist in some way or form within 3rd party apps (many of which I myself have written!), and so by suggesting that Apple promote them into the OS itself I’m also suggesting that they ‘Sherlock’ some developers.

The concept of sherlocking is something that I’ve given a tremendous amount of thought to. I’ve had many of my own apps sherlocked in some way or another over the years. The emotional journey that ensues follows a predictable pattern. At first it always feels a bit rough, like something was stolen from me. Then it feels really cool to have built something that Apple chose to emulate. Then it usually ends up being a good thing for my app.

This experience is not universal, certainly some features or ideas when pulled into the OS completely obviate the need for a 3rd party solution. However, that shouldn’t in any way restrain Apple from doing it. In doing so they would be explicitly choosing to make their platform worse, which is never going to be a viable design guide.

I believe Apple’s goal should be to provide the best, most capable experience that suits the needs of the majority of their users. They should pull up the features that resonate with their customers in 3rd party apps. They then provide the 80% solution, that works for most people but is less flexible or tailored. Then the 3rd party ecosystem continues to cater to the 20% of users who have specialized needs, continuing to push the limits of the feature, discovering the new frontiers and ideas along the way. Then the cycle repeats and the platform gets better.

I want to make apps for the best platform in the world. Period. If that is my desire, then I’ve long since learned that sherlocking isn’t a bad thing, instead it is an essential thing.

Complexity vs Utility

Another thing worth saying up front is that I am fully aware of the constraints of the Apple Watch. I’ve spent the last 6 months pushing the limits of what is possible for it and have seen all the corners of its use, where it completely falls apart.

Nearly every one of these ideas or features involves a tradeoff. Either between battery life and capability or between complexity and intuitiveness. I suspect Apple’s own internal list of ideas and possibilities far outstrips my own. The reason they haven’t built a feature yet isn’t because they haven’t thought about it.

Instead it is quite the opposite. They have chosen explicitly to not do it yet. This is the tricky calculus involved in evolving a platform. If they push too fast, too soon on the capability side then they may end up destroying the battery life of the device. Or if they add too many features then they might end up with a jumbled mess that users can’t understand.

I don’t envy the leadership that has to sit down and make the hard calls of what to do, when.

Assumptions

I’m guessing that watchOS 7 will drop support for the Series 1&2 watches, but retain support for Series 3. Indeed, I think the Series 3 watch will be with us for a very long time. It currently accounts for ~31% of my customers and that proportion continues to grow as it sells at the low end of the Apple Watch price range. I honestly wouldn’t be surprised if it got another price drop this fall and stuck around for another year.

Since Apple stopped making the Series 4 it isn’t there to assume the slot as the low end model. While I’d be overjoyed for the Series 5 to get a $200 price drop and become the $199 watch, that seems like an awfully big jump to make. I’d guess moreover that it will get a $100 drop, then stick around with the Series 3 & Series 6. Then in 2021 become the low end model.

All this to say that whatever watchOS 7 includes it will need to be relevant to the older 38mm and 42mm watches too.

Opportunities

Recovery/Sleep Tracking

By far the most overdue feature for the Apple Watch is sleep tracking. Every year at WWDC since watchOS 2 (and doubly so since I made Sleep++) I’ve gone into the keynote waiting to see it. My current theory is that Apple’s intentions for this feature are far more robust than the basic tracking 3rd party apps like my own can offer. In the course of my development of Sleep++ I’ve experimented with a variety of other sleep tracking devices and there is a tremendous level of opportunity here. Deeply analyzing your sleep quality and using it to determine how rested and recovered your body is.

This level of robustness, however, must necessarily bring with it a battery life cost. Firing up the heart rate sensor for long periods of the night would eat into the battery life of the device. I suspect Apple has had this feature ready to go from a technical level for a while now, but have been patient to actually ship it until the hardware and OS software were efficient enough to allow them to do sleep tracking at their level. It seems from leaks and rumors that the Series 5 watch might have almost had it, but its battery life story was much more challenging at launch and so I could see it having been shelved for another year as a result.

If this is the year of sleep tracking on the Apple Watch I’m hopeful that they will tell a really compelling story with it. Not just telling you how much or how well you slept, but also how recovered your body is. How much stress it appears you are under, and as a result how much strain you should undertake today.

I can imagine another ‘ring’ for this where your Apple Watch lets you know how rested/recovered your body is and even provides you with recommendations for actions to take as a result. For example, getting a notification like “It looks like you are getting run down, maybe consider an early night tonight”. This fits right into their existing Activity coaching model and would round out their fitness offering nicely.

Custom Rings/Goals

Something that never sat well with me is how inflexible most of the Activity Rings are. While you can choose your Move goal, the Stand and Exercise rings are absolutely fixed. This never really made sense to me. While they are reasonable starting goals for a ‘typically’ active person, and are probably a good default starting point, they don’t apply for everyone.

One of the most rewarding aspects of writing health and fitness apps are the stories I hear from my customers about how they use my apps to achieve their own fitness goals.

In Pedometer++ I let you specify whatever goal you like for your daily steps. I have heard from countless users who tell me about how they have then used it to help motivate them during their recovery from an illness or injury. Where they can drop down their goal all the way to 500 steps a day, feel good each day that they achieve that, and then gradually build it up as they become more capable. This sense of progression is a powerful tool and one that it feels odd that the Activity rings don’t allow for.

This is just as much an accessibility issue as it is a design issue.

Furthermore, I could see giving a few options for what your rings are. While Move, Exercise and Stand are a great starting point they don’t cover the wide range of possible personal fitness goals. I think about the great app Streaks and how wide a range of goals it contains. Letting people determine what they want to focus on would help make the device more motivating and broadly applicable.

Rest Days

I really wish the Apple Watch had some concept of a rest day. All of its streaks, badges and coaching assumes that you should be closing your rings each and every day. From my understanding of physiology and my own life experience that is often not advisable. Some amount of periodization between activity and rest is beneficial.

For example, in Pedometer++ (and My Trends++) I have the concept of an earned rest day where if you reach your goal for 6 consecutive days then you gain a rest day that you can take without loosing your streak. I’ve found this concept to be really helpful and well understood by my customers.

I could see this tied into the ‘Recovery’ ideas I mentioned above, where it might even suggest when it would be a good idea to take a rest day.

Automatic Workout Detection

The Apple Watch has started to take steps towards automatic workout detection, but I’d love to see it do more here. Similarly to sleep tracking the hold up I suspect is battery life. They don’t want to fire up the full workout tracking mode any time they think you might be working out, but if they did it would provide a much better user experience.

I recently used another fitness tracker that does continuous heart rate monitoring and while overall I didn’t end up preferring it to an Apple Watch, I will say that not having to think about when I start/stop a workout was delightfully freeing. All the data was just always there.

This is the kind of feature I could see being very easily tied to new hardware where they spend their yearly battery budget on more aggressive data collection.

True Independence

watchOS 6 included the early stages of making watchOS apps independent from their iPhone counterparts. You can now install watch apps via the watchOS App Store and not even build an iPhone component. This is great and seems like a telegraphed step towards true independence.

The Apple Watch won’t be truly independent until you can buy and set one up without an iPhone. Or perhaps only use an iPhone for initial setup. There are still several things that you simply can’t do without firing up the Apple Watch companion app on your iPhone. This reminds me of the original days of the iPhone where you’d still sync via iTunes for certain abilities.

Towards this end I really hope that Apple introduces a new iPhone/Apple Watch syncing system in watchOS 7. WatchConnectivity is without a doubt the worst part of developing an Apple Watch app. I’ve developed more than a dozen of them so I feel pretty justified in making that assertion. It also doesn’t feel like a good fit for a truly independent Apple Watch where you want it to be just as capable when near an iPhone and when it is miles away.

My current hope is that we see an adapted version of CloudKit added to watchOS. Where it does local, fast syncing with your iPhone when you are near to it, but then transparently switches to using the internet for sync whenever they are out of range. This would provide the benefits of seamless sync when you are right near your iPhone but not rely on it.

Multiple Complications

I wish, wish, wish that I could export multiple complications for a particular type from my applications. This is already done by Apple’s own system apps (weather & timezones). This is most obviously useful for an app like Watchsmith, where I would want to be able to provide different complications installable into (say) each of the corners of a single watch face.

This would also be great for simplifying the configuration of a watch face, by moving it to the point of use rather than as a detached activity performed within the app itself. If you want to configure your weather app to show the rain % rather than temperature, you’d just choose it as such in the complication list.

Complication Refresh System

There is no good way to provide reliable refresh to the complications of an Apple Watch app.

That is a an absolute statement and I tend to avoid making them, but having spent the better part of the last 5 years trying to find a reliable system I feel pretty justified in saying so. Watchsmith includes no fewer than five distinct approaches/hacks to provide reasonably reliable refresh, but it will still not always work.

The most problematic situation is for complication data that isn’t predictable. For things like weather, dates or times I can provide the system with a long list of data to show in the future which usually smooths over the lack of reliability. However, for unpredictable data like your Activity ring progress or battery status I am stuck. All I can do is show the current value and then hope to be asked for updated data again ‘soon’.

I would love a system much like we have on the iPhone for background delivery of Health data. Where you can subscribe to a particular data type and specify the granularity of refresh you need. So I could say I’m displaying the Activity data and then I’d get woken up for a refresh whenever their Stand hour increased, their Exercise minutes increased, and maybe every 15 minutes for their Active Energy.

SwiftUI

I love SwiftUI for Apple Watch development. Watchsmith is entirely written in it and I would never have been able to create as complex and robust an application in the old tools. It provides a more rich set of display tools and animations, but more importantly its declarative nature is a perfect fit for the ‘glanceable’ interactions of the Apple Watch.

I’m really excited to see where SwiftUI on the Apple Watch goes next. The initial set of components was more than adequate for getting started and surpassing WatchKit, but it still has a tremendous range of possibility ahead of it. I’d especially like to see improvements for how it handles continuously updating data (like we have during a workout). I’ve worked lots of little performance and liveliness issues there that would be great to be fixed at the system level.

Always-on During Workouts

I want to be able to show something to the user during a workout when their “Always-On” display is dimmed during a workout. Right now they get the time and a blurry image of the last thing shown on the screen, but this is in many ways worse than just freezing the last snapshot of what they saw. In many workouts types I’m displaying information that is tactically useful to the athletes action.

I get that there are (again) battery life constraints for this, but it seems like something where SwiftUI could really help out by transparently limiting the view rebuild interval when ‘dimmed’. That plus adding a special ‘time’ text component for showing durations in an optimized fashion would seem to get us far enough down the road to be workable.

And hey, we know it is possible because the built-in Workouts app does it already.

More than Just Breathe for Mental Health

I would love to see Apple expand their offerings into the mental health side of health and fitness. Breathe is nice and easily understood, but I feel like they could do more here. I think of apps like Headspace with guided meditation. Or journalling apps with guided prompts and encouragements. It seems like a wide open area for the platform that in the current global situation would be especially useful.

Nutrition

While I don’t see the Apple Watch ever being a full blown food tracker, I do think it should do more on this axis of fitness. Basic things like encouraging you to drink water or similar would be a welcome inclusion. What we eat/drink is probably more important to our overall health than our daily exercise, yet it isn’t touched at all by watchOS yet. Which feels like a missed opportunity for our “smart health guardian”.

Smart Alarm

watchOS 6 got the ability to do smart alarms for 3rd party apps, where you can specify a time window in which you’d like to be awoken and then app can try and find the ‘best’ time within that window to actually wake you. The way this is implemented (where you can’t have recurring alarms) dramatically limits the utility of the feature. It really only works for things like naps where you don’t mind manually setting it for each use.

I suspect this limitation is due to concerns of abuse by 3rd party developers who would want to constantly be scheduled to run the in background. If that’s the case then I’d love to see this brought up into the system where it could be safely implemented. This is an obvious tie in with the Sleep Tracking features.

One of the truly transformative uses I have for the Apple Watch is waking me up in the night without disturbing my wife. If this could be even smarter, all the better.

Dynamic Status bar

At the top of each Apple Watch face is an area that shows a variety of status indicators. This area has become the de-facto status bar for the Apple Watch. I would love to see this role embraced more fully and enhanced to show more information here. The most obvious thing that comes to mind is showing the time remaining on a currently running timer. This sort of transient data is really awkward on the Apple Watch right now. Either you’d need to keep the Timer app running or add it as a full blown complication. Neither is really great. This seems like an area to display this type of information.

More Customizable Watch Faces.

I really don’t expect 3rd party watch faces to come to the Apple Watch anytime soon, but given that, I really wish the Apple Watch provided more flexibility for is watch face designs.

It is a bit of a Model-T situation, where you can display the time however you like as long as it is nautilus analog hands or top-right corner digital. This lack of flexibility really is starting to wear on me. I want more fonts, more hand types, more aesthetics, more choice. watchOS 6 took a few welcome steps in this area but there is still a lot more design room to explore.

There was a period in the Apple Watch’s life as a product where it was useful that there was a ‘same-ness’ to all the faces that helped develop its brand. But now that the watch is 5 years old it just feels stale to me. They keep adding more faces, which is great (I really love the California face), but within each face there are still certain immovable design anchors that I would love to see loosened.

Conclusions

What is most exciting to me going into WWDC is that there has yet to be a watchOS release that didn’t make me audibly gasp at least once during its announcement. They are on a great run and I wouldn’t expect this year to be any different. Whether it is something on this list or something beyond my imagination I’m really excited to see what they have in store for us…and then to spend the summer building out my own interpretation of it. Doubly so now that I have Watchsmith as a playground to fill with new ideas.

David Smith