You could call it a revolution. You could call it a capitulation. Either way, when Google quietly started making a few packaged apps available through its Web Store last week, it marked a new and necessary chapter in Chrome app history.
The Chrome OS platform has always had its die-hard fanbase, but it has also suffered significant limitations, including a lack of offline functionality and local storage, and a spotty selection of apps in the Web Store. Enter packaged apps, which run on top of the Chrome OS, act more or less like traditional software, and are developed in common Web languages like HTML5 and CSS.
Packaged apps don't run within your browser window and don't require an always-on Internet connection. As such, they're well positioned to help users get more comfortable with the Chrome ecosysem. UberConference, a teleconferencing app, is one of the first packaged apps to hit Google's Web Store, and if it shows anything, it's that the portability of packaged apps will make it easier for developers to focus resources on product features rather than on the nuts and bolts of platform compatibility.
That's good news for users, as well as for overworked software engineers.
Welcome to the packaged app
A packaged app is actually still a browser tab, albeit one that has broken free of the browser look and feel, and it runs with far more permissions and capabilities. It's also sandboxed in a way that makes it more secure than your typical website. That sandboxing allows you to load the application locally, open and close it whenever you want, and even launch and use it offline.
The bulk of Chrome apps that you "install" in Chrome, on the other hand, simply take you to the website for whatever application you're running. Chrome apps often feel like little more than a favorite or a bookmark. Not so with a packaged app: It's very difficult to tell that it's not a normal installed application.
Uberconference: The trail blazer
Members of the team that worked on Google Voice left the company and started UberConference, the company that makes the UberConference app. By designing the app with a host of advances, including the ability to automatically connect you to your conference based on calling number, and an interface that attaches names and photos to the participants, the company is looking to disrupt the stodgy market of dialing in and zoning out.
During hands-on testing, the UberConference packaged app ran as smooth as butter, with no jarring characteristics that would mark it as a Web application. Its interface is simple and easy to use, without a lot of frills. The UberConference traditional Web app currently has more features, but it's obviously a Web application, restricted to the browser and an online connection.
Packaged apps offer advantages for developers as well as users. Brian Peterson, vice president of front-end engineering and cofounder of UberConference, says packaged apps save his company money and time. "If we were to do native apps for each platform, we'd have to hire or train new devs for each," Peterson said. "The fact that our existing Web developers and even most of our existing code can be used for the packaged app means we save a lot of money on development costs, and still get most of the functionality of native clients for the desktop."
The browser roots of packaged apps make updates more convenient, too, says Peterson: "When a new feature is added to the website, it's extremely quick and easy to subsequently update the packaged app with the same feature." Peterson also noted that there's almost no learning curve for developers, beyond some basic API setup and learning some idiosyncrasies about how to launch the packaged application.
Like a native application, but sandboxed for safety
Of course, with great power comes great responsibility. Peterson noted that Google is strict about what you're allowed to do inside of a packaged app and the way those permissions are communicated to the user. Sandboxing, for example, isolates how local storage is used for a packaged app, so the risk of virus infection is lower compared to native and Web apps. That said, because packaged apps can access local hardware, it's always a good idea to know and trust what you're installing. Prudence, knowledge, and testing will always rule on the Web.
Curious? You can go pick up UberConference's packaged app here. You'll need the Chrome browser to run it. Let us know if you think packaged apps are going to attract more users and developers to the Chrome ecosystem.