Apple Watch Application Development: I-70 Traffic App

When we first set out to build I-70 Traffic for iPhone, we knew that one of the key features would be access to easily glance-able data. We wanted to build something very simple, free from the shackles of complexity that typically deliver traffic information in other apps.

We’ve spent a lot of time building user interfaces that you could immediately understand without a lot of visual parsing. The app has to work well in the car (but not while driving, please!) so we added support for the otherwise rarely included ‘portrait-upside-down’ mode so that the phone could sit in a cup holder while being plugged in to charge. That’s just one example of improvements made after dozens of hours of ride-testing.

It took a lot of sketching and iterating but we eventually landed on a design that both we and our users love. The app provides travel times to all popular destinations and a one-look, birds-eye view of the whole road showing all the hot spots. If you want a lot of information at a glance on your way to or from Vail, I-70 Traffic is your reliable travel companion.

Back in September of 2014, when Apple announced their upcoming Watch product, it was clear we had a new opportunity to wow users. Imagine – you wouldn’t have to grab your phone to plan your trip, you could just look at your wrist – especially useful if your phone is three-layers deep inside of zipped jacket pockets. Bringing our app to the Watch seemed like an obvious choice.

Well, we’re happy to announce that when Apple Watch ships on 4/24, you’ll be able to download a new version of I-70 Traffic that expands our experience onto your wrist.

New platforms are always an interesting challenge and Apple Watch was no different. Not only does the device have a very small screen (two different sizes, actually – 38mm and 42mm) but the whole concept is different – interactions are measured in seconds instead of the minutes you might see in an app on your phone.

We knew we had to build simple and yet useful views of our data for our Watch app and to do so, we started out by trying to miniaturize our ‘traffic snake’ (the two-lane ‘Summary’ screen available on iPhone). After a half-dozen iterations, it became clear we weren’t making progress – the screen was just too small to make it fit. So we started in a new direction and built a custom UI entirely for the wrist.

Without the benefit of a real, live Apple Watch on which to experiment, we had to do research online. I must have watched the introduction video a dozen times, trying to get a sense for how Apple has implemented their built-in apps. This process reminded me of the early months of 2010 between the introduction and launch of iPad – poring over screenshots and videos with rulers, magnifying loupes and a stopwatch. It might sound crazy but it’s the only way I can think of to properly match the platform experience out of the gate.

In addition to creating a new simplified user interface, the app itself had to be re-architected to allow for the sharing of data between components. I-70 Traffic started out life on iOS 6, long before the introduction of frameworks or extensions (which both arrived last Fall in iOS 8).

Watch ‘apps’ are simple and specialized creatures that live inside an iPhone’s app bundle. To properly support Apple Watch (as well as our new ‘Today’ widget, introduced in v2.1), an internal framework, TrafficKit, was born. Now, all of the code for networking and traffic analysis lives in this shared core with the main app, Today extension and now a WatchKit app as visualizations of the data through deliberate user interfaces each designed for their specific context.

… and just because we didn’t already have enough going on, all of the code for Watch support was written in Apple’s new programming language, Swift.

We can’t wait to bring more products to Apple Watch and to see what other folks have done with their apps when the product ships in a few weeks.

We’re excited and proud to make this update to I-70 Traffic available on opening day for Apple Watch. If you have a chance to give it a try, please let us know how it goes and if you’re looking to build amazing software for Apple Watch, iOS or the Web, let’s talk.

Tweet at Hunter

Share this post!