Sunday, November 23, 2014

Offline First Storage Constrains and Different Use Cases

A few weeks ago I spoke at Nationjs about "Responsive is Over, Offline First." Raymond Suelzer @RSuelzer asked "Any recommendations on handling the 5mb limit in local storage?"

Constrains are a positive in design. So the question is when working on an offline first sites how to think about the storage limit of local storage. This can be as low as 5MB.

First, even 5MB can be considered a lot of memory. The Apollo computer that got man on the moon had only 16k. So think positively about local storage.

Second, local storage is not your only option. Depending what you are trying to store, application cache is a good alternative. It does not have a great reputation but it is worth considering especially for images and some other files.

Third, your application, data or content may exceed the storage limit, that does not mean it cannot work offline. There are many different types of offline use cases.

One case is a website of content. No interaction and no syncing of data back to the application. Pouchdb's current site is a case in point. I recently accessed the site and then got on a cross country flight with no internet access. I navigated from page to page with no trouble.

Another case is interaction with poor connectivity. Think of turning on and off Airplane Mode as you use the app. The user experience is good so long as the input is not lost and synced when a connection is reestablished. It would be a rare case when the input exceeds the storage limit. While the user may not be able to access the entire site when offline the data is safe.

Another approach is to consider your app as having two different modes: offline and online. Write the app as an offline app first with enhancements when online. For example, if you app shows a photo gallery, perhaps that feature is only available when online.

There are lots of different approaches to offline first besides being a 100%, stand alone app when offline.

Monday, November 03, 2014

Halloween Joke - 2014

When kids trick or treat at our house we ask them to tell a joke. We have the reputation as the 'joke house.' These are the best from this year.


  • What do you call a pig that knows karate? Pork chop!
  • Why cannot you trust an acupuncturist? They stab you in the back.
  • Knock, knock. Who's there? Trigger. Trigger who? Trigger or Treat.
  • Why did the skeleton cross the road alone? Has no body.
  • Say windshield wipers. You wet your diapers.
  • Knock, knock. Who's there? Boo. Boo who? Don't cry, it's only a joke.
  • How do you make a tissue dance? Put a litter boogie in it.
  • What is a vampire's favorite boat? Blood vessel.
  • Why didn't the skeleton cross the road? No guts.
  • Why did the coach go to the bank? He wanted his quarter-back.
  • What did the skeleton waiter say to the customers? Bone appetite.
  • What did the skeleton travel agent say to the customers? Bone voyage.
There you have the best. 2012 and 2006 are also available.