Skip to content


Why the Chrome Web Store is Bad for the Web.

Note: I’ve changed a few things that will hopefully make my point a bit more clear

Apple got it right in 2007.

If you’ve read any of the other posts in this blog, you will probably come under the assumption that I’m a devout follower of the Church of Google. Thus it will probably be quite a surprise to read the headline, something which appears downright sacrilegious: it questions the infallibility of the great Google. But I try very hard to maintain some semblance of objectivity and rationality, and this post will be about why I think the Chrome Web Store is bad for the web.

The Chrome Web Store is the applications and extensions gallery for Chrome. It’s Google’s centralized repository and directory for discovering Chrome-related things. Just hearing the name of it, you can probably tell, it’s likely quite inspired by the iOS/iTunes/Mac App Store. It’s not because they aren’t able to innovate (or it might, but I won’t take that view), but it’s probably the result of the huge App Store boom. It’s not that even what Apple did was particularly innovative, but somehow it managed to secure billions of dollars for the company, and all it’s competitors quite rationally want a chunk of it. This however, isn’t about improving the state and future of the web, but rather the indulgence of buzzwords. This post isn’t only about the Web Store, but rather the entire Chrome Applications and Extensions systems. From distribution to installation and the user experience afterwards.

Introduction.

There are two types of installable web applications that exist in the Chrome Web Store: hosted apps, in other words “glorified bookmarks”, and packaged apps. Glorified bookmarks are relatively hard to create, expensive and have no real additional functionality. Packaged applications evade the standardized mechanisms for offline web properties and eliminates many of the advantages of web apps in the first place.

Chrome’s developer overview for creating installable web apps describes the system as a solution to one, rather insignificant, problem. It’s the problem of permissions escalation: some technical detail that hardly seems important. Put simply, it’s that users get annoyed when they’re asked to hit “Okay” to annoying permissions prompts. And so Google’s solution is to invent a certain class of web site which has different security properties, where all the permissions are put into a single prompt.

To users, however, the existence of a web app is a solution to a much different user experience problem: they want to hit nice large pretty icons to go to sites which they frequently visit. But somehow, the solution they opted for creating these large clickable bookmarks is quite terrible. The only user-facing purpose of installable applications is the ability to bookmark with a large icon, something that Apple got right with iPhone OS in 2007.

Apple got it right.

I love those four words in that order, it feels so sensationalist and rebellious. But before the Cult of Apple leaps on that statement, notice the wording “Apple got it right”. It doesn’t strictly mean that whatever Apple’s doing now is right, just that what it did is right. In fact, that’s exactly what happened. Apple got it right, then made it different, and Google made it wrong.

First, we need to recall the distant year of 2007. It was quite a while ago, and I won’t pretend that my memory is that great. But it was a long time ago, a full year before the first beta release of Google Chrome. The iPhone was released with it’s plethora of eight apps and no ability to install more. The App Store didn’t exist, and the closest semblance was the Installer.app for jailbroken devices (Cydia came later). A few months later, Apple released a series of updates, and Steve Jobs signaled what he believed to be the future of iPhone applications: The Web. It doesn’t come surprising that Apple’s Mobile Safari was and likely still is (more or less) the best browser for any mobile device.

The important aspect is the way these web applications were installed. You went to Mobile Safari, and browsed around. You found a web app, and you used the web app the way the web was intended. No installations, you just navigate to a URL and start using it. You find the app useful and/or awesome, and you “bookmark” it. But, instead of actually doing the browser “bookmark”, you hit the button right below: “Add to Home Screen”. It asks you for a name for that application, automatically prepopulated with the document page title. You hit “Add”, and you now have a nice, shiny icon on your home screen. You can hide the browser chrome and it becomes indistinguishable from the normal native application experience.

That app icon is just an image URL specified with a single meta tag. It’s totally decentralized in every way, and represents the openness and simplicity that simply makes sense for this platform. All a developer needs to do to enable their web site to turn into a fully fledged web application is to add a <link rel="apple-touch-icon" href="/customIcon.png"/> in the head section of the page.

Contrast that with what Google requires: creating a Google checkout account, entering credit card information, navigating to the Chrome Web Store page and clicking several links in the footer in order to navigate to the page where you have to pay $5 for creating an app, create several icons, copy the manifest.json template and editing some values pointing to the icon locations, going to chrome://extensions, enabling developer mode, adding the unpacked app to make sure that it works, then going back to the original directory, zipping it up, and uploading it to the Chrome Web store, where you have to write a description, add screenshots, reupload an icon, publish, wait ten minutes, and then spam the internet with that link and edit your site’s code to point to that page. It’s an awful much to go through in order to just create a bookmark.

Apple turns evil.

This subtitle is intentionally misleading. I don’t really think Apple’s evil, but that loaded four letter word is much more concise than the more appropriate phrase “Apple adopts a new platform and shifts ideologically to favor a system which is ultimately in conflict with and entirely inapplicable to the web in its current state or in the foreseeable future”.

Apple’s prescience of the power of the web was sadly a bit anachronistic. The web technologies that would enable their vision were not yet ready. The second browser wars haven’t really even begun, and the jailbreakers, despite handicaps, still managed to develop that platform more than the officially sanctioned web developers could. Browsers were too slow, hardware was to slow, there weren’t enough features, not enough could be done, and the paradigm was not well understood.

Apple followed the lead set by the jailbreak community and launched their own native application development and distribution system: The App Store. It was a hit, and soon became a super huge buzzword. It an all that it represented: centralized one click micropayment driven mobile advertising funded indie developer weekend novelty apps.

Google gets it wrong.

So there was an App Store craze, and everyone wanted one. So it logically follows that Google built an App Store. But the web had no notion of apps. There were web applications, but they weren’t rigidly defined as apps. This is where Google got it wrong. The Chrome Web Store needed to sell apps, and had to create a dichotomy out of the web in order to do so. It created a distinction between web apps and websites where none had existed and shouldn’t have ever existed.

The false dichotomy.

Steve Jobs said that on Mobile, people want Apps, not websites. Before blindly mimicking the concept of apps on another platform, one should probably explore why users like apps over websites. It’s because the mobile app offers a better mobile-optimized interface to whatever they’re doing.

Websites aren’t generally designed for mobile, they are often slower, and can’t make use of persistent user interface elements like a tab bar. Apps aren’t popular because of the existence of the App Store. It’s because there’s additional value provided in having those apps, that users use the App Store to get them.

However, web apps, just like websites are optimized for normal computers. Web apps are no better than web sites, and when web apps really have nothing to provide, their respective web stores are useless.

One purported reason for creating the distinction between apps and websites is to give developers the opportunity to charge for the application in the web store. But why should the ability for an author to receive money for his or her respective works be exclusive to web apps? Why not all web sites?

While it’s quite clear that if anything meant to supplant a desktop application and is built for the web can be considered a “web app”, nearly everything else exists in a sort of gray area. Facebook, Twitter and the other social networking are predominately content focused, but have some app-like characteristics, and so they could be considered “web apps” too, despite how there aren’t really desktop equivalents. But what about sites like the New York Times? Pure content sites would logically seem to be the farthest one can go from the concept of an “application”. It’s clear that any web site can be considered a web app.

Since anything can be considered a web app, the Web Store is a mere directory of a certain number of websites. It’s a limited subset of the internet with terrible discoverability properties restricted only to sites where the owner (or a particularly devout fan) is willing to pay $5 in order to allow a subset of users to bookmark the site. It’s proprietary, no other site can have quite the same properties as the web store because Google has the Web Store URLs hard coded into chrome somewhere. Searching in the web store really isn’t that great either, with no ability to search reviews, no pagerank, no search operators, no ability to search within the content of apps. You would figure that if Google were to clone a subset of the internet, at least they would get search right.

This closed, exclusive and excessively tedious process for creating mere bookmarks attacks some of the web’s traditional benefits and ideals.

Packaged applications.

The above sections dealt with how the “glorified bookmarks” are useless and downright harmful. There is a second class of applications which are similar to the former in that they also get a pretty large prominent and clickable icon, but different in that they actually provide functionality that is different from mere ordinary websites. Its virtues include that they tend to work offline and have the ability to do certain things that normal web apps can not do. However, it pretty much stops there.

Packaged apps work offline, but their mechanism evades the standardized system of HTML5. Rather than promoting the use of standards, they promote the use of a proprietary and nonstandard signed zip package.

As they’re “packaged”, they aren’t really “true” web apps, because they don’t actually operate in the scope of the web. They are much closer to desktop apps, practically. They have no URLs, and thus can’t be linked to, evading the very first two letters in HTML and HTTP: “HyperText”. One of the greatest things about web sites is that they can be linked to, and they almost always share that universal identifier to share with people. It’s universally accessible and one of the few things that actually enables intra-site interoperability.

Conclusion.

While the “glorified bookmark” class of applications, which make up the vast majority of the Chrome Web Store, can be quite easily fixed by implementing something akin to the iPhone OS home screen web apps, the “packaged applications” are a bit more interesting. They are the source of that problem which the applications system was meant to resolve: permissions. In the current state, there is no system for handling multiple permissions on the web, aside from flooding the screen with infobars, when even that only partially works. What the web needs is a user friendly, informative, and useful system for giving additional permissions to web sites.

Along with that, the Web Store handles the selling of applications. Accepting money is a two part process, consisting of authentication and payment. Browsers should handle user identity, since they have the resources to do it right, in a nuanced, secure, efficient and user friendly way. Once that’s done, payment would be a logical extension to that. A developer could drop in a Google Checkout widget to have one-click in-app-purchases by tying into the secure browser identity system.

The Chrome Web Store should be reduced to a community maintained directory of useful web applications, something like a wiki, and there shouldn’t be a $5 fee to add applications.

Some people have expressed the idea that the Chrome Web Store is useful because it allows Google, a trusted party, to take down dangerous or malicious applications quickly. And while this is true, note that the Web Store is not actually the sole means to install chrome applications, and a malicious party would most likely exploit those alternate channels, and the only way to combat those is to institute a sort of Kill Switch, much like the kind that iOS, Kindle, and Android already implement.

Posted in Chrome Extensions.

Tagged with , , , , , , , , , , , , , , , .


23 Responses

Stay in touch with the conversation, subscribe to the RSS feed for comments on this post.

  1. Toby Jungen says

    I think there’s a bit of misunderstanding about what the Chrome Web Store really is (and Google certainly hasn’t communicated this well!).

    The Web Store tries to offer a service that takes some of the common pain points inherent to web apps out of the equation. Namely, it handles basic permission checking and a simple payment system out of the box. It also lets developers have deeper integration with the Chrome browser, and even access some of the extension APIs. An app on the Web Store can even be distributed as a package (i.e. crx file), and function fully offline.

    See these links for more:
    http://code.google.com/chrome/apps/docs/index.html
    http://code.google.com/chrome/webstore/docs/index.html
    http://code.google.com/chrome/extensions/apps.html

    However, at present the majority of apps in the Web Store seem to be only glorified bookmarks, which definitely calls the whole idea into question. Personally, I think you’re right that the browser-specific nature of the store is rather counter to the goal of an open web, but at least everything is based on open technology that could be potentially implemented by other browsers as well.

    (Disclaimer: I work at Google but don’t speak for my employer)

  2. SquareWheel says

    I agree with you 100%. I think the web is the best platform we have, and we should set up standards that browser vendors can conform to for unified-login and payment systems.

    Native apps are only better because we focus on them. Let’s get the same APIs out to the web and build a platform that works on all devices and isn’t owned by one large company.

  3. Mirek2 says

    I’ll agree with you on the need to keep an open platform for web applications, but I disagree with your interface suggestion for getting applications.
    There are several advantages to an app store. First of all, as you said, it puts applications into categories and makes them easily discoverable. Second of all, it filters out malicious applications (or at least it’s supposed to). Third of all, and this is probably the most important point, it provides you with loads of user feedback about an application — it gives you a rating and some comments, which is quite important, especially when it comes to paid applications.

  4. admin says

    Mozilla’s Add On gallery is absolutely amazing because of how they somehow manage to source-code audit every single submission before it’s approved for distribution. I think that’s absolutely amazing, albeit incredibly annoying. Google doesn’t have nearly the same requirements, and doesn’t quite have to because they offer a more fine-grained permissions system.

    I think a better idea would be to have a Google Kill Switch. Because Chrome still allows for non-google-hosted extensions, and those are more likely to be malicious and users still deserve to be protected by it.

    Google tried this thing a while ago, called SideWiki which I sort of tried to do a few years earlier, but anyway, both were failures. Something like SideWiki or some browser widget which aggregates tweets/comments/etc around the internet would be a much more interesting solution for this. Because it doesn’t really make sense that the ability to be rated and commented upon should be restricted to apps.

    Even before search engines were discovered, there were things called directories which categorized the internet.

  5. admin says

    But packaging it as a .crx sort of defeats the purpose of the already standardized HTML5 offline features and has the dreaded consequence of making the app essentially unshareable by removing the URL. So the two types of apps in the chrome store are the packaged apps and the glorified bookmarks. It’s already established that glorified bookmarks are essentially useless because they’re just expensive ($5 is relatively expensive) and harder-to-discover and hard-to-create (for a user). Package apps run contrary to many of the notions of the web.

    I know the web store and the applications platform is quite a big group of things and It’s quite hard to attack it all as a single entity.

  6. Seth Ladd says

    I think your heart is in the right place, but you’re not seeing the big picture.

    A web app store gives developers a safety net. They can publish modern, awesome HTML5 web apps without having to worry about old, legacy browsers. This lets me push forward with HTML5. And yes, the app should work great with Firefox 4, Chrome, etc.

    A web app store helps to solve the browseability issue that many users face. Take, for example, recipes. I can of course search for a recipe with Google, but sometimes I go to Epicurious.com which is a site optimized for browsing recipes. I browse when I’m not sure what I want, or when I need someone else to curate my experience. A web app store is another way to browse for apps.

    BTW +1 for crx-less apps and browser based identity.

  7. admin says

    Most browsers nowadays have some modern version. IE9 is fairly modern, as is Firefox and Chrome (i don’t know anything about opera).

    The web store is chrome exclusive and holds a very special position in the chrome browser. It would be much nicer if the web store was nothing more than a directory of useful apps that work well in chrome.

  8. triune says

    If you think of the Web Store as an experiment, Google did get it right. It is an experiment in turning desktop applications into web applications and its succeeding MASSIVELY. Millions and millions of people are giving up the desktop apps in favor of web applications. They are giving up their URL bar so that they can click on a link on their new tab page.

    Google knows this is only the first step as is evident from the research they are doing with their browser, 2 examples: 1) the URL is disappearing, 2) they are allowing you to install applications (web store-ish type apps) from outside the Web Store itself. All you have to do to see these two things is to download and try out nightly builds of Chromium or Chrome Canary. The options are right in front of you: 1) hide the URL bar, 2) allow the installation of web based .manifest files.

    My gut theory is that they will eventually HTML5ify a standard for the installation of a web application, but at the current point in time, they are simply research how to define the standard before proposing it. They’d be stupid NOT to be doing this! I think Google does realize they will never attain the 99% share of the browser market that IE had at one time, so all these great web apps will eventually have to come to other browsers. I think that support is coming, however, not soon enough : it would be great if Google made some extensions for other browsers that allowed them to participate in the Web Store. This may or may not happen before an official W3C spec evolves for what defines a web application.

    Nevertheless, I feel the title of your article should be corrected, it is slightly wrong. It should read:

    Why the Chrome Web Store is Bad for the Web Today, But in the Long Run How it Will Eventually Turn Us All into Devout Web Application Users

  9. Sriram says

    Even i accept all of your points, i could not see anything wrong in it! There is nothing wrong with Web Store (except few) i am expecting more APIs from them.

  10. Seth Ladd says

    “It would be much nicer if the web store was nothing more than a directory of useful apps that work well in chrome.” is exactly the vision. Note: I tell everyone that their apps should work great in all modern browsers that support HTML5, WebGL, and the greater Open Web Platform.

    I look forward to the day when more of this is standardized. I’m glad we didn’t put the cart before the horse, and I’m happy to see Mozilla also think about the concept of installable web apps.

  11. admin says

    The URL bar is one of the only reasons the Web is so great (Hide URL bar is only a minimizing-chrome thing, the URL bar is still there). It’s the instant shareability of documents that makes the web and web apps so enticing. When the chrome “web apps” get rid of this, is there anything that really makes the web apps any better than desktop apps?

    There’s no point of defending the web when there’s nothing left to defend.

  12. Anonymous says

    I think half of the battle is an approach offline web applications that isn’t quite so clunky. I proposed an alternative here:

    http://blog.stateless.co/post/6246070973/how-offline-web-apps-should-work

  13. Sam Dutton says

    Offline usage is another good thing about the Chrome Web Store — especially for those of us who live or work in places with dodgy connectivity.

    When you’re offline, it makes far more sense to click on the icon for an installed packaged app (that works offline!) rather than clicking on a bookmark or entering a URL in the address bar for a website that happens to have offline functionality. URLs and bookmarks for offline-enabled websites are confusing to users — am I ‘going’ somewhere or not?

  14. louboutin shoes says

    I抦 not that much of a internet reader to be honest but your sites really nice, keep it up! I’ll go ahead and bookmark your site to come back later on. Cheers

  15. Dr Slow says

    well i found this page after running into the whole chrome packaged app thingy and it was demonically confusing as to why Google would produce something that cumbersome, so i decided to find out if it was just me being lazy or too stupid to recognize a brilliant idea when i saw one but thank God i found this page now i know am not. The whole thing just reminds me of windows 8 and the whole metro nonsense. As a wannabe web developer this packaged thingy seems like deploying an application on a server, as if that’s not hard enough why would i bother with this

  16. iphone development java says

    Aw, this was a really nice post. Taking the time and actual effort to produce a really
    good article… but what can I say… I procrastinate a lot and don’t seem to
    get nearly anything done.

  17. http://www.elga.net.id/cont/members/bandung/cook.php3?a=a+hrefhttpswww.Facebook.comjailbreakiOShowtojailbreaka says

    Nice post. I was checking continuously this blog and I am impressed!
    Extremely helpful information particularly the last
    part :) I care for such info a lot. I was looking
    for this particular information for a long time.
    Thank you and good luck.

  18. Christoper says

    You’ll see a warning pop up, which you’d have to press enter for.
    The unlock Apple apple iphone 4 is straightforward to respond
    for a application program assisted by Cydia. The good news is, there is a way about Apple’s limitations.

  19. cydia apps download says

    This is the best Iphone unlock service on the marketplace, and is
    the simplest as well. Will examining out at WalMart get simpler following the Apple
    iphone 5 launch day? This Iphone situation is priced at $29.95.

  20. penalty for dui in arizona says

    I absolutely love your blog and find most of your post’s
    to be what precisely I’m looking for. can you offer guest
    writers to write content for yourself? I wouldn’t mind composing
    a post or elaborating on a lot of the subjects you write in relation to here.
    Again, awesome blog!

  21. cash for cars service las vegas nv says

    I read this post completely on the topic of the resemblance
    of newest and preceding technologies, it’s amazing article.

  22. dedicated .net developers says

    Hello! Quick question that’s totally off topic. Do you know how to make your site mobile
    friendly? My weblog looks weird when viewing from my iphone4.
    I’m trying to find a template or plugin that might
    be able to resolve this issue. If you have any suggestions, please share.
    Thanks!

Continuing the Discussion

  1. Meta Analytics – DEVNULL linked to this post on March 25, 2013

    [...] 1307064165.0 , 2011-06-03 01:22:45 , 2180 http://antimatter15.com/wp/2011/06/why-the-chrome-web-store-is-bad-for-the-web/ 1277922545.0 , 2010-06-30 18:29:05 , 2319 http://antimatter15.com/wp/2010/06/wave-embed-api/ [...]



Some HTML is OK

or, reply to this post via trackback.