Google coding tool advances cloud computing

Google has released a programming tool to help move its Native Client project--and more broadly, its cloud-computing ambitions--from abstract idea to practical reality.

The new Native Client software developer kit, though only a developer preview version, is designed to make it easier for programmers to use the Net giant's browser-boosting Native Client technology.

"The Native Client SDK preview...includes just the basics you need to get started writing an app in minutes," Google programmer David Springer said Wednesday in a blog post, a week before the developer-oriented Google I/O conference. "We'll be updating the SDK rapidly in the next few months."

Native Client, or NaCl, is designed to let browsers run programs at nearly the speeds of those compiled to run natively on a computer system. It's fast enough to handle tasks such as video decompression and first-person shooter video games, and it's designed to handle adjusted versions of existing software, not just programs written from scratch.

Native Client is one of several efforts at Google to weave the Web deeply into the fabric of computing. That mission that will be on center stage at the company's Google I/O conference next week.

That conference will feature a host of related projects embodying cloud Google's fervent belief in cloud computing: its Chrome browser, Chrome OS browser-based operating system, App Engine foundation for Python and Java programs on the Net, its higher-level Google Apps services for word processing and the like--even things as nitty-gritty as the Google Web Toolkit and Closure Tools for Web-based JavaScript programming. Another Google I/O centerpiece, the Android operating system, is designed to make mobile phones first-class citizens on the Net, though the Native Client SDK doesn't yet support the ARM processors that dominate the smartphone market.

To let people download Native Client modules from Web pages without security problems, NaCl prohibits various operations and confines NaCl program modules to a sandbox with restricted privileges. NaCl lets programmers write in a variety of languages, and a special compiler converts their work in to the NaCl modules.

The ultimate promise of NaCl is that Web-based applications could run much faster than those of today that typically use JavaScript or Adobe Systems' Flash. If Google can attract developers, the Web and cloud computing generally could become a much more powerful foundation for programs.

Google argues that it profits by increased use of the Web, since that drives more search traffic and therefore search-ad revenue. But Google also has a growing Google Apps subscription business to support--a service CEO Eric Schmidt calls Google's next billion-dollar opportunity--and more powerful tools for Web-based word processing, presentations, spreadsheets, image editing, and the like could help that business grow.

Google has been working hard on fleshing out the NaCl promise. One step has been expanding from 32-bit modules for x86 chips only; NaCl now supports ARM processors used widely on mobile phones and NaCl modles also can take advantage of 64-bit x86 processors. Some of this work has been through a project called PNaCl, or Portable Native Client.

Another move was adding NaCl support for OpenGL ES 2.0, a standard interface for tapping into hardware-accelerated graphics. That could help modules such as games that use 3D graphics.

A software developer kit could help NaCl become more useful, but only if there's a way to run the modules. Google early on released a Native Client browser plug-in, but potentially more interesting is its work to build Native Client into Chrome and into the browser-based Chrome OS it plans to release later this year on Netbooks.

Indeed, projects like NaCl illustrate why Google is so interested in Chrome. With its own browser, it can push its agenda much faster, even if it's only through projects such as Gears or O3D that didn't live beyond the experimental stage.

To use the NaCl developer kit, programmers need a browser with a new plug-in technology called NPAPI Pepper. (Nomenclature nuts will note that NaCl is the chemical symbol for sodium chloride, or salt. NPAPI just stands for Netscape Plug-in Application Programming Interface.) Guess which browser is the only one to support Pepper? Chrome, of course, though Adobe and Mozilla are backing the project, too.

The NPAPI Pepper project and NaCl SDK show one of Google's biggest challenges in bringing its cloud-computing vision to reality, though: getting others to come along for the ride.

To make NaCl real, it must convince programmers to use the software, convince browser makers to include it or at least support it as a plug-in, and convince the general public to upgrade their browsers to use it.

With Chrome and Google Apps, Google can ensure its technology is used in the real world. But especially as Google's dominance brings it into competition with more computing companies, extending its ideas beyond its own products and services can become tougher.

print this article

Return to internet news headlines
View Internet News Archive

Share with: