Open SourceGoogle's Going Native in Chrome With SDK

Google’s Going Native in Chrome With SDK

Developer.com content and product recommendations are editorially independent. We may make money when you click on links to our partners. Learn More.

Google is accelerating its effort this week to bring more powerful and fully functioned applications to the Web with the release of the Native Client SDK preview.

Native Client is an open source technology that enables native C or C++ code to run in a Web browser, bringing more advanced applications to the Web that can run inside of Google’s Chrome browser.

The approach extends the capabilities of Web-based applications beyond the limitations imposed by using JavaScript, and the SDK builds on efforts to promote the technology that Google has had underway since last year.

“When we released the research version of Native Client a year ago, we offered a snapshot of our source tree that developers could download and tinker with, but the download was big and cumbersome to use,” David Springer, a senior software engineer at Google, wrote in a blog post. “The Native Client SDK preview, in contrast, includes just the basics you need to get started writing an app in minutes.”

With the new SDK, Google is providing a GCC-based compiler for C and C++ source code as well as samples to help developers build native-code-compliant applications.

One concern that has been raised about Native Client is its portability: JavaScript is available for multiple browsers, while Native Client is being developed by Google and currently works only for Chrome.

“Native Client seems like a huge leap backwards to me,” a commenter using the alias “Guspaz” wrote in response to the Native Client blog post. “Why would anybody want to use Native Client when it will prevent your app from running on a variety of platforms such as older Macs, smartphones, tablets, and even smartbooks (including ChromeOS) that run PowerPC or ARM processors? I’m just not seeing the point here.”

As it turns out, portability is a key theme for Native Client development, according to Google. Henry Bridge, Google’s product manager for Native Client, responded to concerns about lock-in by noting that Google is deeply committed to building a system that’s platform-neutral. That said, Bridge admitted that Google has yet to ship a neutral-platform format for the SDK, or an ARM compiler either. He added that Google has no plans to build a compiler for PowerPC.

The Native Client effort also runs in parallel to another Google initiative. To date, the company’s developers have spent time and effort on building the V8 JavaScript engine to help accelerate Web applications. In another comment, Bridge noted that Native Client is different than V8 in that it doesn’t interpret JavaScript at all, but rather is focused entirely on native code.

“So why don’t these compete? Because we think there are parts of Web apps people want to build in JavaScript and some parts of Web apps people want to build in other languages,” Bridge wrote. “Take our video editing example. I’d rather build most of my UI and features in JS — it’s easier and will be just as responsive. But when I want to do the actual editing of the video data, which requires bit operations, etc., I’d rather do that in C++: Working with binary data is easier in C++, and will certainly be faster.”

Sean Michael Kerner is a senior editor at InternetNews.com, the news service of Internet.com, the network for technology professionals.

Get the Free Newsletter!

Subscribe to Developer Insider for top news, trends & analysis

Latest Posts

Related Stories