WWDC 2019 Themes and Insights

Another WWDC has wrapped and this year was a real doozy. I’ve been going to WWDC for long enough now that I’m aware that some years are tune-ups and some are transformations. 2019 was absolutely the latter; it was an inflection point in countless ways for Apple development.

Here are a few assorted themes and insights I gathered over the week:

Watch faces : watchOS :: Emoji : iOS

I had a realization during WWDC this year that I have very mixed feelings about…

Watch faces serve the same utility on watchOS that Emoji serves on iOS. They provide a simple, clear, beautiful mechanism to encourage rapid adoption of the new operating system version. Each new software and hardware announcement is accompanied by a new set of watch faces. These make great marketing photographs and they are a clear way for users to show that they have the new stuff. There are countless new and interesting ones to make, so Apple is unlikely to have trouble coming up with compelling options. In summary, they are the perfect tool to prompt rapid adoption of new versions of watchOS (well that, and the annoying prompts).

Once I had this realization I was of course a bit sad at the implication: 3rd party watch faces are very unlikely to ever arrive. As someone who loves making new watch faces, this makes me kinda sad.

The more I thought about it, though, I realized that is actually kinda awesome. The watch is still a relatively young platform, and in order for it to grow it really needs rapid adoption of the new watchOS releases. This year especially there are countless new, incredible abilities added in watchOS 6 that I can’t wait to add to my apps. The faster we can get increase adoption, the faster developers can go all-in on SwiftUI and Independence.

This is good for the platform, and ultimately good for me.

Between the lines - Independent watchOS apps

Every year at WWDC I try to keep my eyes open for the subtle way Apple often pre-announces features that will be coming in the fall. There are often technologies that Apple is emphasizing but for which their justifications feel a bit weak if based purely on what is already announced. In the past these have been things like the auto-layout push before new iPhone sizes, or safe area insets in preparation for releasing the notched iPhones. Reading between the lines on these and getting Apple’s subtle message is usually a really good idea so that come the fall hardware releases, you can hit the ground running with the headstart Apple telegraphed.

This year that feature seems to be Independent watchOS apps. They are clearly a major technological and policy push for this year. They kept coming up in sessions and labs. Looking through the API changes, there has clearly been a lot of work put into making these possible. But for all that, they only kinda half make sense for the current watch picture. The circumstances where someone would truly require an independent watch app are relatively few.

This kind of guessing is always a bit tricky because when you are reading between the lines, you can read too much into something that may turn out to not really be there after all. But I feel pretty solid about this message and fully plan to make sure all my watch apps are fully independent by September. Either I’ll be right and the other shoe will drop and independence makes more sense…or I will have just made my apps better for the corner cases where they are currently dependent. Either way it’s a win.

Patience is a virtue

While it is often frustrating as a user, I was again reassured this year that Apple listens and consistently improves their products. There was a large number of tweaks and changes made to iOS and watchOS to address lingering annoyances. While I am often frustrated that these tend to get bunched up in the major upgrades, it was good to be reminded that they are listening.

The clearest example of this for me is the new visual option for all the Infograph watch faces that can now support a lower contrast view.. What they provided is almost exactly what I asked for back October when the Infograph faces first appeared. They provide a much less aggressive and easy to read display on what are now some of the best looking and informationally useful faces.

SwiftUI trojan horse

SwiftUI looks really great. It seems delightfully pragmatic, which is by far the thing I look for most in developer tools. It is elegant but not trying too hard. It is also really young.

My usual approach with new tools is to be extremely conservative and only adopt them several years into their life, once all the major bugs and wrinkles are worked out and they stabilize into their longterm form. I must admit I was feeling kinda smug this week for not learning Auto-Layout, Size Classes or Storyboards…all of which are essentially deprecated with SwiftUI.

That wait-and-see approach, however, won’t work for SwiftUI. I’m planning to start using it right away because it FINALLY makes it possible to build Real Apps! on watchOS. A young SwiftUI is so much more powerful than a mature WatchKit.

I can now make fully featured apps without a barrel of weird hacks and workarounds, with features like animation and interactivity! This makes me incredibly excited. So Apple has got me this time, and I’ll be diving in on SwiftUI from the start, which has the side benefit of building the skills to transfer back to iOS/macOS.

My favorite apps to make are on watchOS, even when I had to use WatchKit. I can’t wait to see what I can do with SwiftUI.

Sleeper Feature - Hearing Health

My pick for the sleeper hit feature of this year’s WWDC is the new Hearing Health APIs we got for Series 4 watches on watchOS 6. This continuously monitors the loudness of your environment and records the sound intensity throughout the day into HealthKit. It can also provide alerts when your environmental loudness hits a certain level. What is fascinating to me about this is that it is one of the first times that Apple is pushing what constitutes a “health” metric outside of the body and out into the world, defining something external to the person as “healthy” or not.

I’m not 100% sure yet what uses it will have (though characteristically, I do already have a few ideas for apps to make), but I have observed that ambient data collection is a powerful health tool. This data is always being collected without the user having to manually start/stop recording, which means that its utility can be presented as soon as a user is interested in it. In the same way automatic sleep tracking was possible to build using just the ambient data points of Steps, Active Calories and Heart Rate, I suspect there are a wide variety of uses for this noise data.

Conclusions

You may have noticed that most of my themes from this year’s show related to watchOS. That is no accident. It is the platform I am most excited about for this next year, which is quite something given the diversity of improvement across all Apple platforms. Everyone got something to work on this summer, and wow, what a busy summer it will be.


(Meta Note: This year my conference notebook for the first time wasn’t a Field Notes. I am constantly taking notes and making lists throughout the week and find that pen/paper is way more manageable in the WWDC environment. But this year I found the perfect conference notebook, the Totebook by Studio Neat. It is exactly the right size to be portable, but large enough to capture a full thought on a page…something the Field Notes aways felt too small for.)

David Smith