I regularly get pitches from companies touting the importance of using their technology on mobile devices: for better UX (user experience) design, for access to APIs and other back-end microservices, for big data analytics integration, for QoS monitoring, and so on. They see mobile as separate from and unrelated to the desktop.
I also get blank stares or uncomfortable pauses from many major software vendors when I ask why a particular application is not available for mobile or not available for the desktop -- they too often see the two as different and separate.
This division reflects an already obsolete mentality, where mobile and desktop are separate silos of computing. It's not true, except when IT, vendors, and others make it true. Those artificial divisions will hurt those who maintain them.
In the early 2000s, the functional capabilities of a Palm, BlackBerry, or Windows Mobile device were indeed a wholly separate, inferior world than what a Windows PC or Mac could do. That reality started changing in 2010 with the debut of the iPad and apps such as Apple's iWork suite. Today, a tablet or smartphone has the same processing capability of a PC from five or so years ago, and a mobile device can run very sophisticated apps -- simply use Microsoft Office for iOS or Android or any of the specialty apps relied on by the music industry for proof.
There are definitely UX differences that mobile devices impose on applications and Web services, and there are capabilities limited mainly to mobile devices, such as a fingerprint reader, touchscreen, or accelerometer. However, those differences rarely mean an application can't be effective across the desktop and mobile worlds.
In fact they need to be, because it's now the same world. Take a simpler example: Microsoft's Outlook. Why is it so less capable on iOS and Android than Windows or Mac? It's because Microsoft's product group doesn't see mobile as real computing, not because mobile devices can't handle the full Outlook. (Apple's and Samsung's Outlook equivalents prove that they can.) By contrast, the Office group at Microsoft sees mobile and desktop as (nearly) equivalent when it comes to its productivity applications, if not for its collaboration apps.
Welcome to the postmobile world. Just as the distinction between cloud and on-premise is fading, so too is the distinction between desktop and mobile. People will use whatever device is most convenient at the moment. They'll even use multiple devices at the same time, in sort of a "multiple windows" approach to computing. Computing won't be mobile or desktop; it'll simply be computing.
User platforms are now fluid, so apps must be too
Yes, apps and services need to adjust to the devices they're running on, dealing with the real differences among them. But at their core the logic and capabilities should be the same. That doesn't mean the apps should be identical, but the core capabilities are the same, and the differences (both what is removed and what is added) make sense for the device's special context.
A cloud service, API, microservice, data center server, certificate, or data source shouldn't care much about what device is consuming it. Ideally, it would not care at all, and instead let the local app handle any local transformations or restrictions required.
Still, this is clearly a hard concept for many to grasp, both for vendors and within IT. It's not simply an issue with Outlook.
Take mobile banking, which is increasingly the default approach to banking. If you use a tablet, you know that many banks' apps are inferior to their websites -- yet the tablet can run both versions. There's simply no reason for the native app to be less capable than the website -- in fact, it should be more capable. Even the smartphone version should not feel crippled; UI changes can address most of the actual platform differences due to the smaller screen and virtual keyboard, as opposed to stripping out features. The mobile app should do more than the desktop or Web app when that makes sense for the device's capabilities, from using fingerprint readers to location data. Some apps do, but many do not.
Think about how you use services like online banking: You likely gravitate to the most capable instance you can get for the device at hand, with the tablet usually being where that choice is clearest. Ditto for any app, from Google Apps to Outlook Web Access, from Slack to a game.
Why would you not expect your users to do the same?
A common objection is that supporting all those platforms is too hard. That was a major argument for the notion of making all apps into HTML5-based Web services that would allow a nearly one-size-fits-all approach. But the truth is that browser differences are worse than platform differences in many cases, and browsers are much less capable than native apps. There are four platforms to develop for, all of which have facilities to deal with size and other form factor differences: Windows, iOS, Android, and OS X. Cross-platform IDEs are no cure-all, but they can help.
In a sense, it doesn't matter if it's hard to develop across platforms, because that's the world we and our users and customers live in.
Hardware differences get in the way
This is about more than apps, of course. But it's mostly about apps, because there are hardware differences -- some natural, some vendor-imposed -- that mean a smartphone or tablet today can't yet scale up to become a PC through, say, Bluetooth and Wi-Fi Direct peripherals. (Hewlett-Packard says it'll try to deliver that on Windows Phone; maybe that'll fare better than previous attempts in the Android world.)
But I bet that in the next four to five years we'll see many of the hardware barriers disappear. Many of the barriers are artificial, such as Apple not wanting iPads to replace MacBooks but instead keep supplementing them. I don't believe we'll end up with only one device, but that the overlap among them will be greater -- and the ability for a device to scale up or down will also be greater, so you have more flexibility when not in your regular environments.
Systems management points the way to unity
Another domain where the postmobile world is emerging is in systems management. Four years ago, Apple largely unified the management APIs between iOS and OS X. Microsoft is doing the same now with Windows 10 and Windows Phone, in a way that also would allow PCs, Macs, iOS devices, Android devices, and Windows phones to be managed centrally using the same core API-driven technologies. Basically, they're all devices, so manage them all that way.
The bottom line: Stop thinking of the technology world as a binary mobile/desktop dichotomy. It's becoming one world where different devices do the computing you're providing via apps, services, APIs, and -- one day -- peripherals. The sooner you accept that, the sooner your wares will be used in all those devices.