To Serve Apps

It’s been well over a decade since I started writing about technology here, and it’s funny how things change.

Take the site’s name, for instance – there is, in fact, remarkably little written here about the Mac these days. I still rely on Macs to work, but the nature of work itself has changed dramatically over time and, to be perfectly honest, the Mac doesn’t feel like the end all and be all of computing anymore.

In fact, I’m a little bored with today’s industry – telecommunications is now all about commoditization and cost cutting, content is (remarkably) still on a race to the bottom as far as quality or innovation are concerned (largely thanks to the social malaise), and computers, for all their improvements, still fail to address basic needs in a consistent fashion – just look at the noisy and counter-intuitive hodgepodge of apps people have to deal with, on any platform, to do something as simple as exchanging messages1.

But it’s not all bad – I think we’re finally at a point where things have changed far too much for the actual end-user hardware to be relevant, at least as far as 80% of users are concerned.

This may seem horrifying to, say, developers (who will cheerfully believe everyone can handle managing their own computer) or Adobe Creative Cloud users, but just about anything ordinary people need to do can be done better and cheaper with cloud services accessed via halfway decent client hardware – and it’s good to remember that something that can do a “limited” amount of local processing these days is twenty to a hundred2 times faster than a high-powered workstation was back when the term was coined.

Remember when people scoffed at network computing? Well, they were right – that vision was an almost complete bust, but largely because the technology was hideously overpriced, clunky and simply not up to scratch. Not to mention that it was the Dawn Of The Age Of The Laptop and people were enjoying their newfound freedom, while things like the Sun Ray (which I toyed with) were desktop bound and hideously expensive.

Today’s Chromebooks (which are the “tightest” vertically-integrated solution right now) are a fair cry from Larry Ellison’s pitch, but they work. Surprisingly so, and well enough even when offline as to make no practical difference for most consumers – or even businesses3.

Note that I’m not talking about the browser as an OS here – that, as far as I’m concerned, is still mostly a pipedream for any kind of really complex user interaction.

After all, if HTML5 was suitable for everything, Google wouldn’t be pushing NaCL so aggressively. A great (and timely) example of the kind of “app” I’m talking about is this IPython integration. Or, in a business context, Office 365‘s mix of resident apps talking to tailored cloud services.

But to build those services effectively without reinventing the wheel, we need to create whole new models of computing – I’ve been investing a fair amount of time in fiddling with things like Hazelcast, Mesos, Google App Engine, Docker and whatnot (a lot more than I let on here) because there’s a whole computing Renaissance going on in the datacenter that goes way beyond what most people are currently aware of, and simply providing infrastructure (VMs or otherwise) isn’t going to cut it – there’s a lot to be done in terms of orchestrating resources and providing all sorts of building blocks for people to run their businesses upon, and we’re not talking about spreadsheets here.

Consider this: there are things in the making that are about to make the PaaS/SaaS hype of the past few years about as relevant as the original network computer concept.

And the fun part is that they’re just beginning in earnest.

  1. Other than e-mail, of course, which is, disturbingly, still the most important (un)productivity tool in the modern enterprise. ↩︎

  2. It’s sobering to come across 3-year-old academic material and realize that if you factor in GPU developments and the newfound prevalence of solid-state storage in consumer devices, overall performance improvements are vastly greater, especially in consumer-level devices. ↩︎

  3. Realistically, the ARM-based Microsoft Surface fixes most issues a business might have regarding this kind of device (and is much easier to get hold outside the US than any Chromebook, to boot), so I expect IT managers will eventually stop sacrificing people and cash at the altar of Intel compatibility. ↩︎