Google’s Bet On Native Client Brings Chrome And Google+ Photos Closer Together

Google is betting big on photos on Google+. Indeed, most of the innovation on the company’s social network so far has been around photos, including the #AutoAwesome launch at I/O. Last week, Google stepped up its efforts and launched a set of new photo-editing tools, including the ability to fine-tune Google+’s Auto Enhance feature, apply new filters and selectively adjust parts of an image. Just like the rest of the Google+ photo tools, these new features are a step ahead of the competition, but there’s also an issue: they only work in Chrome (and in the native iOS and Android Google+ apps).

The reason for that is simple: the new tools use Google’s own Native Client technology that no other browser vendor has adopted. The tools themselves are based on the technology the company acquired from Nik Software, the makers of the popular photo-manipulation app Snapseed. Snapseed never existed on the web, so the easiest way to port these features to the web, Google’s engineers must have decided, was to go the Native Client route.

photo_editing_chromeAs you’ve probably heard a thousand times now, it’s virtually impossible to build great photo apps that can rival the likes of Photoshop in HTML5. That’s where Native Client comes it. This technology allows developers to execute native code in a sandbox in the browser. It can execute C and C++ code at native speeds and with the ability to, for example, render 2D and 3D graphics, run on multiple threads and access your computer’s memory directly. All of that gives it a massive speed bump over more traditional HTML5 apps (Native Client apps basically run at the same speed as they would in a desktop app, after all) and makes tools like the new Google+ photos editing features as fast as they are.

Native Client works in Chrome on Windows, Linux, Mac and Chrome OS, but other browser vendors are not supporting it. Mozilla, for example, is trying to get JavaScript to the point where it runs almost as fast as a native app (something they are getting very close to thanks to the asm.js project). Microsoft, on the other hand, is betting on hardware acceleration (and WebGL) in IE11 to make web apps run faster in its browser.

As Google’s own documentation for Native Client notes, this technology offers an easy migration path to bring existing desktop applications to the web. Until now, it’s mostly been the domain of game developers — who already write most of their code in C or C++ — but now it looks like Google is also getting on this bandwagon itself. We know that the company is working on a port of QuickOffice to the browser, for example, and some of its document preview web apps already use Native Client in Chrome, too.

All of this, of course, leaves Firefox, Opera and IE users with just one choice: don’t use Google+ photos (or live with the fact that you can’t edit them) or switch to Chrome (or, as somebody will surely point out in the comments: don’t use Google+ because it’s dead or something). Photos, however, are quickly becoming the focal point of Google+, so keeping a large chunk of web users out just doesn’t feel quite right.

We all want a faster web and better web apps. Google’s rationale behind developing Chrome has always been its drive to improve the web. Sadly, with Native Client it is only improving the web for Chrome users.