Or, I can’t see the emperor’s new clothes…
More than a decade ago, Sun bet its future on The Network Computer. We were supposed to see a fundamental shift in computing away from powerful local desktops to powerful centralised servers, with desktops being little more than multimedia capable terminals. The obvious advantage to this was that it would enable you to transfer your session to wherever you wanted in the world, just by unplugging your session identity from one terminal and plugging it into another.
Indeed, I had direct experience with this, since the previous company I worked for bought into this “session goes with you” mentality and invested in a bunch of Sun Ray terminals. And indeed, you could yank your session card out of one Sun Ray and shove it into another Sun Ray without any loss of data or session state.
Sun bet its future on The Network Computer and it lost. It’s now in the process of being subsumed by Oracle, who by all accounts were very disinterested in the hardware side of the business and would have preferred to have just got a hold of selective chunks of the software business. Of course, there were more reasons for the failure of Sun than the Network Computer, but let’s be brutally frank – that hysterical monoculture being proposed was at the core of Sun’s direction for far too long; it distracted Sun from their true core capabilities (server and operating systems), and by the time they started to correct the course, the rot had already set in.
In the end, people didn’t buy into the Network Computer. More importantly, IT departments didn’t buy into the Network Computer. Why? Conspiracy theorists would have us believe that Microsoft somehow ‘tricked’ the industry into heading in the wrong direction. Much as I prefer to avoid Microsoft solutions wherever possible, even I’m not so blinkered to either (a) lay the blame at Microsoft’s feet, or indeed (b) lay the blame at anyone else’s feet. It wasn’t because Microsoft somehow convinced the world that Network Computing was wrong, it was because the world knew that Network Computing was wrong. IT departments knew that Network Computing was wrong – and still, to do this day, know that Network Computing is wrong.
People voted against NC because they wanted the speedy and zippy response that can only be had by sufficiently powerful desktop machines.
Now, let’s consider the main differences between NC and cloud computing, shall we?
NC is:
- Keeping processing with the servers.
- Keeping storage with the servers.
- Keeping desktop state with the servers.
- Allowing “anywhere” (that is network accessible) access to the desktop state.
Cloud computing is:
- Keeping processing (or just data) with the servers.
- Keeping storage away from the desktop.
- Allowing “anywhere” (that is network/internet accessible) access to the processing (or just the data).
So let me ask you this. If the world voted against NC because it was a fundamentally flawed model that pushed all processing to the back-end and left the desktop as some abhorrently useless piece of parts without the presence of the back-end, what makes everyone on the Cloud Computing bandwagon think its going to be any different? (Indeed, studies such as this would suggest that cloud computing advocates have a very rocky road ahead for them.)
A large part of the rebellion against NC was that performance was just never good enough. That was with (for companies that deployed NCs) processing and storage being done on the LAN, but just not locally to the desktop. If that was seen as a bottleneck, how can the first line of data access in the cloud – i.e., on the internet and subject to internet level speeds – be seen as anything other than a bottleneck?
There’s an argument that cloud computing is simply the (inevitable) commoditisation of IT; rather than every business needing local IT infrastructure, they’ll just rent processing and storage capacity from specialist cloud based computing services. To me this is yet to wash true – it just sounds like NC++*.
If this were all that cloud computing had to refute, it might be able to mount compelling arguments for a systemic migration of IT processes to the cloud. But that’s not the only issue at hand with cloud computing. You see, in addition to being NC++, cloud computing has to contend with a plethora of other issues, covering privacy, data protection, transfer of services, cost of bandwidth and provisionor viability**.
If the various vendor bloggers and industry commentators want to convince the world that cloud computing is the way of the future and not NC++, they need to understand that they have a long hard road ahead of them.
Come to think of it, I can’t even hear the emperor’s new clothes rustle as he walks past.
If you think there’s a good reason why Cloud Computing isn’t just NC++, let me know. Whenever people start talking cloud computing I feel like someone who doesn’t get a joke while everyone else is laughing … clearly there’s something to be excited about, but, …, I don’t get it.
—
* For readers who don’t know C, C++, Perl, etc., languages and their derivatives; “++” means “add one” in these languages; hence, NC++ = “Network Computing Plus 1”. (Or, “the next iteration of network computing”.)
** I acknowledge, I use Mozy, an online backup system for certain personal backups, but I always have other access strategies – i.e., it’s a 100% last resort. There is a significant realm of difference between targeted personal cloud use and business cloud use.
Quite agree – most people i see talking about deploying cloud computing solutions are actually talking about a shared hosting service ….its quite funny.
Every once and a while someone brings up Linux or Mac desktops as alternatives. Then another person counters with: it’s not the OS that matters – it’s the applications!
Cloud computing, per the current definition-of-the-week, is about outsourcing the IT department, not getting rid of the fat desktop. About foisting data center management on another company rather than cooking a custom solution of your own. As it is talked about now, Cloud Computing is not Citrix on the Web 2.0.
Ten years ago the corporate desktop was Excel + Word + Outlook. These monopoly winners of the ten years before that were and are fat, slow heavy-weight tools. You wanted video games that didn’t look like bad ’80s cartoon art? You got a gamer rig. You want to run an office? You visited the Microsoft Store (aka anywhere that sold “Personal” Computers.) Then you printed anything worthwhile out.
Today the network is not the computer – the network is the application. Websites. Webmail. Shared everything. Applications that have ‘mini-batch’ style processing. Do the AJAX dance on the desktop, but bulk load the data in the background. Or alternatively, train the user to expect a batch process: draft the document *then* share it.
A company computer without a netork connection might as well be a boat anchor. It may be not so important that the corporate drone can write a new spreadsheet. It can be more important that he gets one from another office, processes it and submits it to a third. Or fills out his helpdesk tickets via a website. Or checks his team calender on the web. Or reads his boss’s boss’s internal blog. (Or Ironically and far too often, visits a webpage to print it out.)
Supporting the required infrastructure for that is expensive. Companies are looking to reduce that cost. The recent ACM round table on Cloud computing had one resounding theme: if your apps and docs are on the network anyway and which network it is doesn’t matter *cough* security *cough* why not make supporting that network somebody else’s problem?
It’s naïve though to think that all computing is business computing, or even that all business applications can be moved to a cloud computing environment.
Not only that, companies looking to completely shed themselves of an IT department are likely to be in for a nasty surprise; they’ll either still need to maintain more IT staff than they cared for, or their running costs when factoring in lost productivity every time the internet access runs slowly (something everyone on the cloud computing bandwagon likes to forget about) from staff sitting around twiddling their thumbs (or shouting at their screens) while applications go unresponsive due to lack of access.
I don’t buy the notion either that cloud computing is about making “the network the application” instead of “the network is the computer” that Sun espoused. There’s no practical difference, so again, cloud computing remains NC++.