In a world where device fragmentation is increasing, taking a mobile-first approach is yesterday's thinking.
There's no doubt that the smartphone has changed the way we all engage with the world around us.
We're all glued to apps on our mobiles (Flappy Bird anyone?). And website owners have seen the steady, inexorable rise in mobile traffic to their sites, which spawned the inevitable rethink about how web experiences are delivered on mobile devices (yes, I'm looking at you responsive design).
So it isn't surprising that the world is talking about making sure you take a 'mobile-first' approach. But I disagree.
If you're adopting a mobile-first approach, you're in danger of soon coming up against the same problems that you faced as your audience started the move from desktop to mobile – namely an experience that isn't optimised for the device that the user is using.
Why? Because before you know it, your audience will be accessing your services on devices you've not even thought about yet.
And if their experience isn't optimal, they'll quickly find your competitor, who does give them an optimal experience.
Separate the service from the user interface
Software engineers have long understood the benefits of separating form from function, i.e. how something looks from what it does. By separating the two, it is possible to adjust one without (always) affecting the other. Need to reskin something due to a brand refresh? Just change the 'how it looks' part
Need to make a search function more intelligent? Just change the 'what it does' part.
It's a service, not a website
When you're next thinking of creating a website, stop for a moment. Don't think of it as a website. It's an opportunity to engage your audience with a digital service.
The way in which your audience engages with that service will change over time. They might want to engage with it using a tablet, a smart watch or even an in-car console.
So build the service and then think about how you'll give people access to that service on the many devices that they'll want to use.
Each one will have a user interface that is optimised to that device, ensuring the user has the best possible experience. If you can give them that, they're more likely to use it, come back to it more often and share it with their friends.
In technical terms, we make services available to devices through APIs (Application Programming Interfaces). These are simple, well-defined building blocks that encapsulate the functionality that the service provides.
Delivering the service on a device is then just a case of building a user interface on top of the API.
Think API first
So, the future isn't about thinking mobile first. It's about thinking API first. Only by thinking this way will we be able to efficiently deliver services across the plethora of connected devices (in the widest sense) that is coming down the track.
Are you thinking API first yet?