Fail and You After a tech company has been making money on its own for a while, it will inevitably embark on a web enhancement project involving a browser plug-in that includes some sort of runtime or virtual machine so that the browser can do more that just render html. It's practically a coming-of-age experience in Silicon Valley.
Google is no exception to the rule. Last week, they released Google Native Client, which is an organic quinoa and self-satisfaction flavored rehash of the same shit we've been seeing for years. We already have ActiveX, Silverlight, Adobe AIR, Java Applets, and Flash – all which do essentially the same thing as Google Native Client – so why do we need another runtime? In a strict hunter/gatherer sense, we don't. But Google's libertarian-when-it's-convenient corporate culture sees market competition as a way to benefit users, ignoring the side effect of enraging developers.
Native Client is still very much in development - which means one of two things. Either Google is genuinely trying to appeal to freetard developers as the superior platform or - and this one is much more probable - Google has absolutely no cohesive direction, and a couple of engineers were working on a neat project that looks an awful lot like a PhD thesis and wanted to open source it to swing their dicks around. There wasn't much fanfare out of the company around the release, no stupid comic book that shows us all in a playful manner how passive aggressive Google is when it comes to competition, so I must conclude that this is the culmination of some engineers' "twenty per cent time" and that it means absolutely nothing to the company's bottom line.
Adobe's Flash is installed on 99 per cent of all computers connected to the internet. If you're a developer making a business decision about what platform to target, choosing any other platform will likely result in failure. In fact, Google itself made this very decision when it developed Street View, which runs as a Flash program inside of Google Maps. Trying to release a browser enhancement plug-in in a market that's so heavily dominated borders on masochism, and the bitch of it is, Google already has such a plugin: Google Gears. Gears is widely considered to be a dud, so maybe Native Client is another stab at it. I wouldn't count on it, though. Google's track record here isn't spectacular:
- May 2007: Google releases Google Gears. Tech media insists this is the end of Microsoft. Nobody else gives a shit.
- September 2008: Google releases Chrome which includes Gears. Tech media insists this is the end of Microsoft with the first appearance of the Googasm. A few people give a shit, and Chrome's market share scrapes one percent. Internet Explorer team has a good deep-chested laugh over it, then goes out for beer and expensive cigars.
- December 2008: Google releases Native Client. Tech media starting to catch on that nothing Google can make will spell the end for Microsoft. Some writers fake a Googasm and manage to fool an inexperienced few readers, but those of us in the know can spot the act.
A lot of people think that Google is slowly revealing pieces of its puzzle, with a spectacular endgame that will involve the razing of Microsoft headquarters and a free, contextual-advertising-supported pony for everybody delivered personally by Barack Obama. It's not going to happen. Wikipedia lists 144 Google products, and I'd challenge Eric Schmidt to name ten. Where, within this fail yard, is the secret to world domination buried? If you have a complex and powerful strategy toward some ultimate goal, that's wonderful, but you can get far more mileage out of simply convincing people that you do and that they're just too stupid to put the clues together. Like a Nostradamus believer asleep at the wheel on September 10, 2001, a Google believer has wonderful hindsight.
So what, then, is the goal of Google Native Client? There is none, as far as I can tell. It was birthed unto the world so that a few engineers could add “public product launch” to their CVs, as most Googlers' stock options are underwater now, and there's never been a better time to jump ship.
Technically, Native Client is nothing astounding. It runs x86 code with some security enhancements. Can you feel the revolution? If history has taught us anything, it's that users don't give a shit about security. If they did, PGP, Inc. would be releasing a web search and contextual advertising product on the side of their multi-billion dollar e-mail encryption business.
In the true Web 2.0 spirit of reimplementing functionality we've had for years and selling it as better because it runs in a browser, one of Google's examples for Native Client is Quake. No, not the GPU-heavy Quake III Arena. I'm talking about the original version ... from 1996. It's been twelve years, and computer graphics has advanced just a wee bit. If Google were trying to impress developers with Native Client, you'd think they could come up with a better example. You know, show us how Native Client adds value, and why it's not just another me-too browser plug-in?
This, again, points to Native Client being something left behind by the cat herd. If left to their own devices, the vast majority of engineers will invent things that are academically noteworthy but practically useless. That's where the businesspeople step in: They know about things like market share and demand and don't really care that you've figured out static x86 instruction analysis to run untrusted code. If this were a real project with real goals, we'd all be installing the plug-in so that we could check out a kickass demo, instead of reading a fourteen page research paper that feels like it was written by Professor OldCrusty von Boring the Third.
Now, how long will it be until Google discovers that you can actually use the web as a distribution medium for installable software? It's what we've been dancing around for a few years now – coming full circle back to the way things used to be. It would be great to have the speed of native code execution and the efficiency promised by automatic software updates over the network. Now imagine if you combine this with a unified way to manage locally installed software. Now that's innovation.
Funny, though. It sounds suspiciously similar to something Microsoft has had for years: Windows. ®
Ted Dziuba is a co-founder at Milo.com You can read his regular Reg column, Fail and You, every other Monday.