The problem with web applications is that they’re underpowered. They have access to only a tiny bit of the computational power afforded by modern computers. Google announced the released this week of a new open source research project called Native Client that aims to change that. Native Client is a set of technologies that will let developers create web applications that can run native x86 code in the browser.
Native Client consists of a runtime, a browser plugin, and a set of GNU Compiler Collection-based compilation tools that allow the creation web applications that have access to native code modules. Google is aiming to create a technology that can boost the power of web applications while maintaining the “browser neutrality, OS portability and safety that people expect from web applications.”

Above: screenshots of demo applications running in browser on Native Client.
For now, Native Client will run in Firefox, Safari, Opera, and Google Chrome on any modern Windows, Mac, or Linux system that has an x86 processor. It’s also definitely a developer aimed demo at the moment. Native Client’s runtime clocks it at about 88MB and requires Python to install — so, not for the faint of heart.
Eventually, though, Native Client could evolve into Google’s answer to Flash, Silverlight, and Java. This is definitely a piece of their Web OS strategy, which also includes Chrome (our coverage) and Gears (our coverage). Used together, the three form an impressive foundation for Google’s stake in the Web OS race.
Chrome allows web applications to be launched in a separate window using their own, independent process; Gears gives those applications access to local data store; and Native Client allows them to tap into the power of the CPU for things like improved image processing.
The biggest hurdle for Google, other than driving adoption of yet another runtime+plugin, will be keeping Native Client secure. Everyone remembers the nightmare that was/is ActiveX. Google says that one of the reasons they’re open sourcing Native Client is so that the research and security communities can help make it more stable and secure.
Related posts:
- Why Google Should Not Give Chrome the Go-Ahead Google has ambitious plans for Go and are considering implementation...
- Google Chrome Leaves Beta Just 100 days after launching their Chrome browser, Google has...
- Google Turns its Back on Firefox As we predicted last month, Google has begun to slowly...
- Mozilla’s Relationship with Google “Complicated” It'd be wrong to say that the relationship between Google...
- Poll: Flash or Silverlight? Adobe's Flash reaches 98% of all net connected computers, whereas...







This is brilliant. I was ecstatic when I saw quake game running in ‘Flash 10′ seminar. This step by google can really make a difference.
December 10th, 2008 at 11:45 am
Interesting. This is not only the answer to Flash, Silverlight or Java. This is even more. With this system you can actually have an application that pops out of the browser. What I mean to say is that you don’t need to install applications locally ( Adobe AIR still requires you to do that, Java also ). This is a lot better than having your applications run in a browser. Browsers are just not meant for that.
December 10th, 2008 at 6:28 pm
@dansergiu
You still need (and WILL need; even in the future) to install Native Client, which itself is the runtime, makig Native Client just like AIR or JAVA.
And if Chrome includes it (which is likely), it would become a direct competitor to ActiveX, only it will be be available as a plugin for other browsers.
December 10th, 2008 at 8:58 pm
88mb for a runtime is pretty big
December 11th, 2008 at 5:45 am
Damn google is so one sided when it comes to code.
Google needs to get off its high horse and support other languages. Not everyone wants to code in python and java.
December 11th, 2008 at 12:40 pm
After a long time of boreness that felt like Java had thrown in the towel and that Flash had secured the dominant place as a RIA platform, interesting things finally happen.
First Silverlight, then AIR, then Chrome and WebKit and Mozilla all speeding up Javascript, then JavaFX, then Flash Alchemy and now NativeClient! Look at all these new toys we have to play with :) The war is heating up and I couldn’t be happier.
Personally I am most excited about Flash Alchemy and Native Client because they allow the use of C. I use Java, Javascript and Actionscript every day as my work is primarily RIA development – and I love them. Up until today I couldn’t excersize C for a living. When these tools shape up a bit I will.
December 11th, 2008 at 6:56 pm
@slaction: Adobe does the same with ActionScript. At least knowing python can serve you in other areas. Unlike Actionscript, which is useless outside of Flash.
December 11th, 2008 at 7:23 pm
I hope the native client integrates well with WINE on *NIX and is able to run Windows apps in browser without any installation required.
December 12th, 2008 at 2:37 am
Can it play quake?
December 12th, 2008 at 12:11 pm
Is there a good IDE for writing those x86 codes which will be running with this native client?
Why other major competitors, such as MS, Sun and Adobe, are using managed codes with their plugins? Why MS would not just release a sandboxed ActiveX to fight back?
It is Google’s all on web, non-OS strategy which actually triggered a fierce competition on RIA platforms and that competition has turned back to threaten Google’s position in the market.
That’s why there is such a native client story.
December 14th, 2008 at 11:25 pm
Creating a XHTML friendly Rich Internet/Web like application that can “run” inside the desktop is a cool thing, as long as the creator/developer need not know all the internals of how to write C/C++ based cross-platform plug-ins. Making Interpreted Code run as “Native Client” application, within the browser runtime, is a very good choice, since most of the Phyton/Perl/Ruby/Erlang/JavaScript are all interpreted languages with interpreters ported to most of OS environments.
I would be happy to uninstall the web browsers, when Chromium comes out with this feature and can run in both Windows and Linux.
Venkatraman
January 18th, 2009 at 3:07 pm
Why not Java?
February 4th, 2009 at 7:22 am