Dear Google, let’s talk about webapps.

screenshotI threw together a little hack project last weekend, called Subwalkway. It’s mobile-only, and it’s a bit of a mess- part UI experiment, part subway navigation tool, and rough around the edges. But if you’re on an iPhone, try adding it to your home screen. It looks right, doesn’t it? An icon (with an easter egg!) that seamlessly blends with the phone interface, a splash screen when you launch it, and no navigation chrome when you’re using it. If you squint a little,  you could almost imagine that it was a native app.

Now try doing that on an Android phone. Actually, don’t bother, I’ll save you the effort- it does precisely none of these things. If you’re using Google’s Chrome browser you can’t even add a site to your home screen*. So, today I ask: Google, what the hell? From email to entire office suites, you’ve spent years trying to convince us that the web is the future for software- you even went as far as to create an entire OS based around it. We could be making responsive webapps that work great on ChromeOS and adapt to being perfect first-class citizens in Android- if you let us. Instead we’re forced to provide sub par in-browser experiences, or wrap our apps up in a clunky WebView frame and lose all of the performance and automatic updating that HTML5 can provide.

Screen Shot 2013-05-10 at 10.34.07 AMOther phone manufacturers are catching up to the game- even though WebOS is dearly departed, Blackberry 10 lets us make HTML-based apps. Firefox OS makes them a first class citizen. Even Microsoft allows you to write apps in JavaScript. Why has it been left to Apple- who have every incentive to trap me in the sickly embrace of their Objective C App Store- to be the pioneer in webapps?

I want to make cross platform apps using HTML technologies, and I want to make them great. How can it be that Google is the one standing in the way of me achieving that?

(Hat tip to Peter Nixey, whose blog post title I shamelessly ripped off)

* As pointed out in the comments, it actually is possible. But it’s little wonder that I never discovered it, given the steps required.

  • Mark

    “If you’re using Google’s Chrome browser you can’t even add a site to your home screen” . . . is wrong: http://bit.ly/13mOxwu

    • alastairco

      “To place a shortcut on your home screen, you simply need to view your bookmarks in Chrome for Android. Pick the bookmark you want to add, and then long-press on the icon. You will then see a menu pop up, with the last option being add to home screen. Select that option and then go back to your home screen. That’s it.”

      That is a painful, painful UI flow. It’s a step backwards from the Browser app, where you can choose “home screen” when creating a bookmark- in Chrome you have to create it first, then go to the Bookmarks section? It’s light-years away from Apple’s implementation.

      • Kevin

        Thats some serious nit-picking right there. Sorry you cant spare the extra 3 seconds…

        • alastairco

          It’s not about the time involved at all, it’s about how intuitive the action is. On iOS the only action you need to learn is to press the “share” button on the navbar. It takes you the rest of the way.

          On Android you need to know that you have to create a bookmark, *then* go back to that bookmark and long-press it. There’s nothing obvious about that interaction.

          I’m not talking about whether I, as a developer and tech nerd find it easy- I’m talking about whether average users would.

          • Kevin Norris

            Wait, you have to press the “share” button to make a homescreen bookmark on iOS? I have never used iOS, but that sounds *deeply* unintuitive. “Share” should relate to social networks, not the layout of my phone.

            (NB: Not the same Kevin)

          • Simon

            To be fair, it’s not strictly the ‘share’ action it’s the ‘take this page elsewhere’ action. It’s for bookmarking, sharing, pinning… the same icon is used in other apps for ‘send to pinboard’, for example.

          • prognosys

            It’s not labeled share, it’s a rectangle with an arrow pointing outward. It’s the general ‘do something with this in another application’ icon.

          • Peeteegee

            And pressing “Share” when you are trying to put a link on your homescreen is intuitive? It’s the most un-sharing thing you can possibly do, that alone would make me not consider looking in a “Share” menu.

          • Dan Gooch

            That’s actually not necessary, either. Having never tried to add a website to my home screen on either my Galaxy Nexus OR iPhone 4S, I decided to see how intuitive it was as soon as I saw you complain.

            On Android, I tapped the apps icon at the bottom of my home screen, where I normally add things to my home screen from. I then tapped “widgets,” and “bookmark,” and then selected the site. Anyone used to Android’s interface could easily figure this out in seconds.

            On iPhone, I had to go to the website (I couldn’t do it from the bookmarks area), and then “share” it to the home screen. This took me longer than I’d have expected to find, and I only did because there are so few options in Safari. Share is usually for social media or email, the idea that it would place a bookmark on the screen never occurred to me.

            Incidentally, having the site as a bookmark seems totally logical to me in my “UI flow” – having to visit the site is not. Sure, it’s subjective. But so is your complaint.

          • LT

            It’s all about being true to the platform. Obviously a long press wouldn’t make sense in iOS, but they are commonplace in Android.

      • Andy

        Light years? mm hmmm.

      • Chaoticmass

        I hate to say it but Apple got it right. I picked up on the Apple way intuitively from playing with a friends iPhone for a few minutes but never figured out the Android way until now and I have only owned Android devices.

    • Aidenn0

      Any action that requires a long-press doesn’t exist for the majority of Android users.

  • Alec Lanter

    Personally, I consider that a feature. Apple has seamlessly integrated apps to the point of being annoying. Not all of the web apps I use require data, but a web app won’t work without a network connection, and if a web app installs itself as a home screen icon I don’t have an easy way to tell that it won’t work when I’m on an airplane or otherwise outside of data coverage.

    • Felix

      you can create offline web applications in Html5. For storage you have localstorage, indexdb or websql.

      • Your mom

        Not entirely accurate. Yes you can create offline apps but those storage choices are NOT always available depending on the platform. Also WebSQL is a now abandoned standard that Firefox has now dropped so I wouldn’t bet on that for long.

        localStorage should be available on practically everything but it has an incredibly small amount of space which makes having advanced, offline apps nearly impossible without the native app and an embedded web view.

        • Tore Julø

          Appcache is available everywhere except in opera mini (and IE, but that goes without saying).
          That will save all your static assets (js, css, html, fonts and image files) for offline use.

          WebSQL og IndexedDB is supported almost everywhere. Have your app test for availability and use IndexedDB with WebSQL as fallback, since the latter standard is deprecated and will be slowly phased out.

          In the future, we will also have the filewriter API.

          Not even close to impossible.

  • Jorge Limas

    I also think this should be a default feature, I’ve tried all possible tweaks to remove the navigation bar on ANY browser on android still no success and with iOS you only need to click add to home screen… I’m a big android supported but this is one of those thinks you feel ashamed of…. :(

  • Arron Schaar

    Google I/O is next week. I think there will be several announcements that will address such issues. One of them is Web Components.

    • alastairco

      Interesting to know! I’ll be looking out.

  • Justin

    “But it’s little wonder that I never discovered it, given the steps required.”

    Seriously? Long-press the bookmark and select the option. That’s how you do most tasks on Android. Admit ignorance when appropriate.

  • http://smartic.us bryanl

    *deleted*

  • http://twitter.com/smileysteve Stephen Reid

    First, Chrome is not the default Android browser unless you’re on 4.2;

    Second, the android internet browser has a “+ Add To” on the menu, one of the 3 options is “Home Screen” (the others are Reading List and Bookmarks)

    • http://ploogy.com/ Adam Brenecki

      A lot of 4.0-4.1 phones are shipping with Google Chrome installed by default and Browser completely absent too. I think this is the direction Google want to move in.

  • http://www.facebook.com/JohnHaugeland John Haugeland

    Microsoft was letting this happen in 1995, champ.

    Stop attributing everything to Apple.