The story of our weather app
I recently helped launch a different type of weather app, Skyline Weather, for iPhone and iPad. I came up with the design concept in my sleep.
Lots of things have been invented in dreams. Paul McCartney is said to have written Yesterday in a dream. He spent weeks, the story goes, asking everyone he knew if they had heard the song. Eventually, after enough people he asked hadn’t heard it, he decided it must have been his own original, subconcious, composition.
Elias Howe was said to have invented his version of the sewing machine in a dream. Howe dreamed he was captured by a “primitive” tribe. As they tied him up to cook him alive, he noticed that their spears had holes in the end, which was the missing detail he needed to make his machine work.
In my case, I was bedridden with the flu, and decided to check the weather forecast. I launched each of the handful of iPhone weather apps I had on my phone. In my hazy state I found it difficult to read the current weather conditions, and had trouble interpreting how the weather would change over the next few hours. I felt there must be a simpler way.
I went back to sleep.
I woke up with the basic concept:
• Display the weather as an hourly timeline, with each hour rising and falling with the temperature.
• Concentrate on how the weather will change, not how it is.
I sketched the idea quickly, and went back to being sick.
My work as a designer involves a lot of sketching. Often when I return to them I find flaws. Ideas that seem great in the middle of the night often lose their lustre in the light of day. When I returned to this weather sketch, however, it made a lot of sense.
This idea allowed the weather to be read in a visual way, more akin to looking at an image than reading text. Although used, timelines rarely make up the main part of the app. Many of the competing weather apps are full of little snippets of text, fiddly symbols and numerical values which need to be parsed by the user.
Text Vs. Images
When you read text, you read each word one by one, assembling the big concept in your head at the end. It can communicate more complex information, but is also slower for the user to digest. With an image you get the greater concept right away and then hone in on the smaller details.
Skyline Weather is designed to be read at a glance, like an image.
You can drill down to the details, if you need them, by tapping on the screen. For the app to be read quickly, we needed to hide or omit certain bits of data and sacrifice some density of information.
Hard to please
Some beta testers clearly wanted to see lots of dense information. Some lived in a rainy climate and just wanted to see percentage chance of precipitation. Others surfed regularly (yes, even here in Montréal) and wanted lots of data in a raw format.
Other beta testers understood the concept and supported the vision of clarity and simplicity. It became apparent we couldn’t please both the people who wanted raw data and the group who wanted something simple and visual. We had to choose, even if it meant saying ‘no’ to potential customers. Neither approach is inherently better, but we purposely chose the set of problems we wanted to solve.
Design is a system of relationships … It is the relationships between all the aspects of a problem …
— Paul Rand
Paul Rand, celebrated graphic designer, didn’t really use computers. They weren’t very useful for graphic design, at least during most of his career (from the ‘30s through ‘90s). When they did become useful, Rand let his underlings do most of the work that required them. Yet his comments on design apply as much to software design today as they do to the graphic and industrial design of his time.
A balancing act
Design is about balancing—at its core it’s about identifying who you want your users to be, the problems they have, and the solutions they need. The smaller your audience, the more targeted a design can be, but it often means excluding certain users.
Many, like John Gruber of Daring Fireball, have called weather apps a “UI Playground” for design ideas. Weather apps are such an interesting space to explore because they are so diverse, and people’s needs vary a lot based on what they do and where they live.
A few weeks after Skyline Weather’s release, we got a bizarre real-world demonstration of how similar design approaches can converge. Enter Weather Line, a handsomely designed weather app from Ryan Jones and design shop Pacific Helm. On their website, Jones expressed the same dismay I felt about the visual complexity of existing weather apps: “Current weather apps [show information] with tables and lists. Leaving you to parse, then digest, and then mentally build a forecast in your head.”
Broadly speaking, Weather Line and Skyline Weather seemed almost identical. It wasn’t surprising that our two apps were conceptually so similar. We had similar goals and solved the problems other weather apps had in a similar way:
• Both apps focus on hourly weather.
• Each data point is shown as an icon representing the weather state.
• The vertical position of the weather icons represent the temperature, giving the day’s weather a clear narrative.
• Tapping on an hour reveals more details about its weather conditions.
• Both use the same data source (forecast.io), and show a virtually identical set of information.
The similarities go all the way to the names. Their chosen name, Weather Line, was also a finalist in our own naming process. We never had any contact with Jones or his team, but we ended up making all sorts of similar choices — and accepting many of the same tradeoffs.
The designs of Skyline Weather and Weatherline both began by identifying the same problem. We both knew we weren’t going to make a solution that pleased everyone—that’s impossible—but with some luck we could solve a very real problem with existing approaches.
No design can be perfect, because ultimately you’re just balancing relationships. There is an economy in place, where often adding one thing disturbs a balance elsewhere.
— Paul Rand
When talking about the merits of a design, it’s important to always keep in mind the tradeoffs it chooses. There are objectively bad designs out there, but often times shortcomings can be explained by a balancing force elsewhere.
Just as human beings can’t claim to be more “evolved” than cockroaches, an object that purports to have “good design” can’t always claim to be truly better designed than its cheaper counterpart. An expensive designer teapot might look and feel better than the Walmart equivalent, but it’s not necessarily “better designed”. The fancy version might have better materials and better ergonomics, but that doesn’t mean the cheaper version hasn’t reached its goals. They each fit into a different niche, and neither would succeed in all contexts.
From Skyline Weather’s initial dream logic to the subsequent months of fine tuning, we worked hard on every aspect of our app’s design. Responding to very similar design goals, Pacific Helm designed an app that shares many of the same interface choices. Even still, neither Weather Line nor Skyline Weather will be an ideal solution for thousands—or even millions — of umbrella-carrying iPhone users.
No design can ever be perfect in all situations for all users. We have to make difficult choices about the audience we want to serve, and the problems we want to solve. If we try to satisfy everyone, we will end up with a string of compromises—products that are not the best, but are merely the least-worst. By concentrating on who our users are, and how best to serve them, designers can find solutions that don’t merely look useful — but that actually serve.