It’s like this: The browser’s doomed, because apps are the future. Wait! Apps are doomed because HTML5 is the future. I see something almost every day saying one or the other. Only it’s mostly wrong.

[If you don’t want to read my opinions, hop to the end of this post for months & months worth of links to things I thought worth reading on the subject.]

Apps Win · If you want immersive/interactive polish, with ultra-fine control over your gradients and textures and how the things on the screen react to being touched, you need an app.

If you want to capture what the phone can see, permute that image’s colors based on how hard you shake it, and vibrate in the user’s hand to say it’s time to stop shaking, you need an app.

If you want to make an urgent phone call based on detecting that you’re within five minutes’ drive of your destination, you need an app.

If you want to be featured in a phone’s electronic storefront, and then be purchased effortlessly with a couple of taps, and have the charge end up on the monthly phone bill, you need an app.

If you want to port your existing C++ shooter which is based on one of the big gaming engines to a new mobile platform, you need an app.

Browsers Win · If your app is mostly about delivering highly-readable text that flows around pictures and contains navigational links, be in the browser.

If you don’t want to be in anyone else’s storefront and pay them a piece of the action for access to the customers, be in the browser.

If you don’t have the budget to write an Android app and an iOS app and (soon, maybe) a Windows Phone app, be in the browser.

If you want to be sure you can reach everybody everywhere, even the ones who aren’t rich enough or hip enough to have the latest pocket jewel, be in the browser.

If you need to be sure you can update your app, not in iOS’ weeks or Android’s however-long-until-the-user-updates, but right now, then be in the brower.

Tiny Case Study · The apps-are-the-future absolutists like to point to Instagram and yep, it’s interesting, all right. Consider this dreamy photo by Scott Hanselman. Is it part of the Web? Well, it must be, because I just linked to it. But can you find it in Google? Not directly, because Instagram explicitly tells the search engines to go away. But, well, you sort of can anyhow. Does the example really prove anything? You decide.

Developers! Developers! Developers! · Pardon me while I get a little geeky and address the Morlocks in the mobile sausage factories:

  • HTML5/Browser technology is moving forward fast; which will be changing some of the trade-offs above. But then, so is mobile-app technology. It’s complicated.

  • The mobile-app programming models are better than the rococo pandemonium of DOM and JS and CSS and friends. Otherwise, why do things like CoffeeScript and Dart and WebSockets need to exist? It’s complicated.

  • There are very few pure things in this world; lots and lots of apps have WebViews inside, doing the heavy content-display lifting. Did I say it’s complicated?

It seems very likely to me that there’s something simple and beautiful lurking inside the browser platform that will hit the greatest 80/20 point in software history. But I’ve been thinking that for a decade or more, now.

Further Reading · Of course, this will be out-of-date the morning after I hit “publish”. But still.



Contributions

Comment feed for ongoing:Comments feed

From: Tony Fisk (May 15 2012, at 00:39)

Bottom line: whichever area you might choose to specialise in, you can probably carve out a niche for yourself.

Why do we have these false dichotomies? (I realise you're not defining them, Tim, just commenting on them)

... Turing Tar Pit... Did it refer to 'Mandelbrodt Maze'* as well?

*The virus that did for the 2001 Monolith... in 3001.

[link]

From: Hanan Cohen (May 15 2012, at 00:57)

Apps don't have Tl;dr: in the text. ;-)

Please fix and delete this comment.

[link]

From: Simon Davy (May 15 2012, at 01:46)

From where I'm standing, a lot of the list of "apps win" cases are indeed true currently, but possibly not in the long term.

e.g, calls/photos/vibration/geolocation are all coming to mobile browsers. If web intents kick off, then whole bunch of stuff opens up.

Regards perf/touch response, I wonder if investment in js/browser engines, and increase in handset power means this will be a smaller niche in the longer term.

Regards pixel perfection, games and easy billing, then yeah apps win. (Although I wouldn't be surprised to see an easy webapp billing service appearing) But I think the number of cases where apps win is doing down overall.

But you do mention that things are moving fast :)

Also, you mention DOM, JS, CSS being chaotic, but the technologies you mention as "needing" to solve the problems don't affect DOM or CSS. WebSockets is not solving a limitation of DOM/JS/CSS, but HTTP, really. And Dart/Coffee are attempts to clean up the weakest of the triumvirate, JS. SASS/LESS do indeed help with CSS deficiencies.

Personally, I don't think DOM/CSS are that bad - I've never used any other stack that separates model/presentation as well. CSS has some fiddly syntax. JS is amazing, considering how much time was devoted to it :)

I think the impression of chaos comes from the multi-decade multi-vendor competing implementations, and the fact that it's the largest deployed platform in the world, with an almost unbroken backwards compatibility, rather than any severe problems with the core tech itself (although there are problems).

Phew - a bit longer that I'd intended!

[link]

From: Mike (May 15 2012, at 07:36)

The largest problem I have with web based content is that most of the time I have for consuming media on my phone is spent underground. I can tell an app to download and cache the most recent content. Hard to do that with a browser.

I hear some people live in utopia's where the subways have cell service. I don't. Millions of people in this city alone spend lots of time underground with access to the cell network every day.

[link]

From: B (May 15 2012, at 09:24)

"The mobile-app programming models are better than the rococo pandemonium of DOM and JS and CSS and friends. Otherwise, why do things like CoffeeScript and Dart and WebSockets need to exist?" Now that's an unconvincing argument; is the existence of Java by itself an indication that Java is better than C++ ?

[link]

From: David Mendels (May 15 2012, at 10:21)

Hi,

What if this is a false dichotomy. For a large class of use cases, the right solution is a hybrid app, that wraps HTML5 in a native container. Facebook, LinkedIn, and many others use this approach. For a nice article on this as a core trend and how it fits in to the dichotomy Tim laid out, see: http://blog.brightcove.com/en/2011/11/html5-and-rise-hybrid-apps

-David

[link]

From: Temporal (May 15 2012, at 15:34)

> But I’ve been thinking that for a decade or more,

> now.

Yep, the world might be waiting around for this another 20 years -- no offense, but the W3C is mostly a joke. Case in point: Adobe and Microsoft were two companies that sat on W3C advisory boards, working groups etc. In 2003 both companies attend SVG Open in Vancouver and put on a facade pretending they are all for SVG, then nothing happens for years and years. Oh yeah, the W3C (with its bureaucrats) is really going to change the world. In another 10 years you'll probably still be waiting for the ideological 80/20 sweet spot.

[link]

From: Bill Conniff (May 15 2012, at 18:47)

Desktop is not dead either, although it may slowly wither away. I think that would be after all the in-house enterprise systems and B2B vertical software are converted to something better, whatever that may be. Heck, I know of a Clipper program still in use at a large Bay Area utility.

[link]

From: Robert Debowski (May 15 2012, at 22:36)

The only winning move is not to play. - War Games

If you are in the "network" business, you must find a way to serve both. And let A/B testing "decide" what your customer really wants.

[link]

From: len (May 16 2012, at 09:13)

;)

HTML5 is lazy thinking.

[link]

From: Alan (May 21 2012, at 01:34)

Wow, another HTML5/native blog that concludes "It Depends". SHOCK...

[link]

From: Ricardo (May 22 2012, at 02:31)

with frameworks like PhoneGap or Phodes, an HTML5 webapp can do things similar as a native App, but you loose a little in performace

[link]

author · Dad
colophon · rights
picture of the day
May 02, 2012
· Technology (90 fragments)
· · Web (396 more)

By .

The opinions expressed here
are my own, and no other party
necessarily agrees with them.

A full disclosure of my
professional interests is
on the author page.

I’m on Mastodon!