Of all the announcements at WWDC, iOS8’s extensibility feature excites me most.
A quick introduction in case you don’t know it — Apple is finally allowing apps to communicate with one another. For example, let’s say you’re on the Facebook app and you upload a photo; there might be a button to launch Instagram and use Instagram’s filters for that photo while still on the Facebook app. Instagram’s interface appears like a pop-up over Facebook.
Android actually already has a version of this kind of extensibility, but on first impression I like Apple’s implementation more.
(Isn’t that Apple’s real magic? Not actually being the first, but being the first to enthrall the press and technorati about something.)
The reason I like Apple’s more is because it provides context; the user still feels like she is on Facebook, whereas on Android the app being called would take over the screen. With Android’s implementation, the user feels like they exited the previous app for the new one even though technically they haven’t — tap the back button to prove it. Apple’s implementation is less confusing to the user.
Excuse the voice over, this is the closest video I could find.
Extensibility doesn’t quite solve the discoverability problem for apps; a user must still have both Facebook and Instagram for the above use case to occur.
But it does solve another important problem — the lack of systemic, relevant, contextual triggers to remind users when to use the right app. The cognitive load required to remember what each app does, and how it does it.
Check out the second page of my iPhone home screen:
There are nine apps I’ve downloaded but never even tried. Dozens more that I liked enough to keep but today don’t even remember what they do. The cognitive load required to remember all the apps I downloaded and what each does and how is simply too much; even for a tech enthusiast like me. This is precisely what extensibility will help solve.
In the old world, app developers relied on users knowing, remembering and caring enough to use their apps. In the new world of extensibility, app developers rely on each other to remind users what apps they should use in conjunction with their own.
User knowledge -> unreliable
Developer knowledge -> more reliable
This makes sense as developers have more incentive, time and ability to find what apps are complementary to theirs. Users are generally too busy with cute cats and Internet memes to remember non-essential things. Extensibility puts responsibility back into the hands of developers and this is a good thing.
Let’s use feecha as an example. feecha provides a content feed about a city or neighborhood: news, events, attractions, things to do, food reviews, etc. for that particular location.
Maybe you’re on TripAdvisor trying to decide which neighbourhood to stay in for your holiday. In a perfect world, you’d remember you had downloaded feecha, recall it’s purpose, still know how to operate it and care enough to take the actions required to get the content you want. You’d have to then open the app, get the relevant neighborhood before finally getting what you want. That’s five pre-conditions and three actions, or cognitive overload. You can see why the app situation is so problematic.
Apps are like islands, where so much work is required to get from one island to another. (Websites by contrast are like buildings connected by roads, where it’s so easy to go from one webpage to another.)
Extensibility helps address the island problem. When you’re on TripAdvisor trying to decide which neighbourhood to stay in, tapping on a button calls the feecha app that then automatically displays the relevant neighbourhood feed for you to browse. One pre-condition, two actions.
You don’t have to recall you’ve downloaded feecha or remember its purpose. You don’t have to know how to use it or where to find what you need in it. TripAdvisor and feecha already did the work for you so that when you need feecha’s content while on the TripAdvisor app, it’s just magically there. (And vice versa.)
This is a much, much better world.
Now if only we can somehow convince TripAdvisor to work with us… Anyone from TripAdvisor reading this? 🙂