For well over a year now, Google has been hyping up something called Native Client. It’s an open source technology that allows a web browser to run compiled native code. In other words, it’s a potential missing link between native apps and web apps. And now it’s finally getting baked into Chrome.
Native Client apps use Pepper, a set of interfaces that provide C and C++ bindings to the capabilities of HTML5. As a result, developers can now leverage their native code libraries and expertise to deliver portable, high performance web apps.
This work has been a long time coming. It was in May 2010, that Google first started talking about the potential of Native Client at their Google I/O conference. This past February, Google noted that Native Client was getting close to reality when they announced a new SDK for developers to play around with. At this year’s I/O, the company reiterated their hope that it would be ready to go this year, ushering in the future of Chrome.
While Native Client is an open source project, it has been heavily driven by Google. Not only have they done much of the Native Client work themselves, but they’ve done much of the work on the Pepper Plugin API (PPAPI), which is an evolution of the Netscape Plugin API (NPAPI) which most current web browsers use (except IE, which naturally has their own technology). PPAPI offers better performance than NPAPI, which is key to making Native Client work.
All of this could add up to the next generation of web apps, if developers take advantage of Native Client. Intensive code will now be able to be run on a local machine (with native code) while being accessed in real-time by the browser. This should lead to better web-based gaming, media, etc.
Google also notes that Web Audio API is a part of Chrome 14 beta as well. This too will help with the development of immersive gaming done through the browser.