Review: Google Chrome wants to be your OS
The Chrome Apps architecture enables native-like apps, written in JavaScript with platform APIs, that load fast, run quickly, and work offline
The assortment of Chrome apps you'll find in the Web Store is not quite what you might expect. I thought I'd mostly find productivity apps, especially ones that use Google infrastructure. I did find those, but I also found plenty of image editing apps, music playing apps, news and weather apps, and games. I also found numerous office applications and utilities, including several remote desktop apps. The latter are suddenly even more interesting now that Google and VMware have teamed up to make Windows VMs available for Chromebook users.
There is also a good assortment of business applications in Chrome App form, many of which are also available as Web apps. Examples include QuickBooks, Zoho CRM, Staff Squared HR, SEO SERP Workbench, Clever Elements, and Salesforce.
I expected Chrome apps to be slow to load and run, but I was wrong. The ones I have used load faster than many native applications and run nearly as quickly. Chrome apps tend to be smaller and more focused than many native applications, but that isn't necessarily bad.
Chrome apps are a hybrid between normal desktop applications and Web applications, coded in HTML, CSS, and JavaScript -- and in some cases, C/C++, Flash, or Flex. The user downloads the app from the Chrome Web Store, and it installs on the local computer. The app launches locally in an app container, not in a browser tab, and loads its first page locally -- not from a remote URL. The app container is blank, and it does not have the typical omnibox of a Chrome browser page. Subsequent pages can be loaded from remote URLs, but the developer has to guarantee some minimum functionality for an app that launches on a computer that isn't connected to the Internet.
The app has an event page that runs in the background and handles user gestures and system events. The Chrome Content Security Policy enforces stronger security than you'll typically find in a Web application, and it provides the ability to set up privilege separation on a per-window basis. Sandboxing for Chrome apps is even stronger than sandboxing for Chrome extension processes.
Services available to Chrome apps include push messaging, several different storage APIs, drag and drop, and access to Google Drive. Chrome apps can use USB, Bluetooth, and serial devices, and they can act as network clients. A developer can use Native Client (C/C++) code in Chrome apps but should structure the package hierarchy to reduce the size of the user download.
Best among browsers
Recently, Chrome has been blowing all other browsers away in almost every conceivable speed test. (The most recent public results I can find are here.) I say "almost" because Microsoft has posted some tests in which the latest version of IE beats all comers. I have seen accusations that the Microsoft test site is rigged, but I haven't investigated them. In any case, those Microsoft test results don't correspond to my real-life experience.
Chrome is fast for multiple reasons. One is that its JavaScript engine is efficient; another is that it uses the SPDY protocol when it can. I installed a Chrome extension to display the SPDY status of Web pages, and I wasn't surprised to find that many of the sites where I normally see the biggest speed improvement from Chrome are also the sites that support SPDY. On a geeky side note, sites typically support SPDY by using Nginx, which also speeds up the Web server.