I recently took a last-minute trip from San Francisco to India. The best fare in economy I could find was on a sixteen-hour Air India flight, direct to New Delhi. I figured I’d get a lot of work done on the flight and, if not, at least I could catch-up on movie watching. Turns out I was zero for two on this as my in-seat entertainment center didn’t work and I couldn’t get much of my work done either – I guess that means I was two for two on being surprised. Don’t get me wrong, I already knew that my flight didn’t have Wi-Fi, but I’ve got a fairly new iPad with 128GB of storage and full-featured Windows and Mac laptops to keep me busy. As I get stopped by the TSA and every equivalent organization, you’d think I’d learn that one device is enough.
My problem on this trip was that many of the files, email, online podcasts and other Cloud-based content I was expecting to be at my finger-tips just weren’t. There were multiple reasons for this. My email is in the Cloud and I increasingly just double-click on files, view them or push them into iCloud or OneDrive, forgetting to place them on the local system, as it all eventually syncs up. Right? Many of the white papers I read, I don’t bother downloading, as I simply bookmark the direct link to them in PDF on the web. I watch Netflix without ever downloading episodes. And, when I read my beloved New York Times, I click into related articles without ever thinking about the fact I’m being taken back to the Times website.
So, there I was on the flight, trying to work and finding that every other file I needed and therefore tried to access was greyed out or had the two little light blue arrows pointing at each other (computer says no), the key white papers I wanted to read, not downloaded. Oh well, guess I’ll read the Times. Not so fast. All the related articles and the commentary streams on editorials are back in the Cloud, now it’s just day-old news. Boring. The epiphany for me is how much I’ve come to depend on Cloud-based connectivity and how little I realize how debilitating lack of connectivity can be. If you think about it, this has all crept up on us over the last three to five years as most end-user applications and content for everything from entertainment to business productivity have moved to the Cloud. Or, in other cases, things that either were manual and physical like books or paper-based forms for knowledge workers, now have rich front-end web clients that give you the impression that you have something local when, in fact, you’re just as dependent on the Cloud as formerly PC-based apps are now.
How did we get here? When did all these newfound compute resources at my fingertips become essentially set-top boxes that acted as if I hadn’t paid my Cable bill when the Air India flight taxied onto the runway? Simple, Cloud has ushered in the model for distributed and virtual resources that have enabled applications to be delivered as virtual services; but we’ve not fully adopted application architectures and design-considerations to make the applications distributed as well as virtual. We’ve gone from local apps with local files to Cloud-based apps with Cloud-based files – all accessed through a web-based app. This makes it easy to maintain stateless use of the application and associated data, easy portability for systems of engagement, and simplifies subscription models and strengthens revenue streams for service providers, but it’s not always best for end-users.
I’m old enough to remember in the late nineties and early noughties the phrase “there’s got to be an app for that.” And, I’m thinking that’s exactly what was needed here. An app that I configure on any one of my systems that’s tied to iCloud, OneDrive, Office365, etc. that I could set to trigger on an upcoming trip that would automatically download and sync across my user defined setpoints. For example, all relevant files and online PDFs, back X number of days and all articles downloaded by default would also automatically download the top Y related articles and the first Z commentaries associated with that core article download. I don’t know if this app exists but it’s essentially a personal application gateway for all applications and associated data in my list of must-haves for that flight. There would be a requirement for the application to have it’s own local persistent datastore that would cache, at a minimum, metadata associated with an apps local files – for example the mirrors to my iCloud and OneDrive stores on my local drives or the Calendar data related to my setpoint – but, in other cases, this gateway application would need it’s own local database to fetch from various web URLs or even scrape them out of, say my New York Times app and download them for me.
At first glance, this may look like a one-off crazy idea, a personal travel application gateway. It’s not, instead of the three devices and say 10 apps and websites that I want to cover with this application gateway on the plane, imagine it’s a Smart Home gateway across 10 appliances or a Smart Car gateway across the combined apps in the entertainment center and the car’s motor systems. What I’m getting at is all these local compute resources will need to be leveraged locally if not for the individual app then to optimize use across all these apps by individuals. Folks, we’re going to have to rethink what a gateway is and who it serves. That’s the other epiphany I had on the plane. The last one was don’t take 16-hour flights without something to help you sleep.