Don’t Make Your Apps Offline Stupid(adamkochanowicz.com)
adamkochanowicz.com
Don’t Make Your Apps Offline Stupid
http://adamkochanowicz.com/2011/dont-make-your-apps-offline-stupid/
4 comments
200 OK, Content-Length: 0. Is this some kind of postmodern statement about being offline, or robustness advice from an author whose servers should be returning errors but aren't?
The blog post confused me until I realized that the author meant "Don't Make Your Apps Offline-Stupid," rather than "Don't Make Your Apps Offline, Stupid."
Offline use is just one in a bevy of features an app could have. It's not often the best one to spend your time on.
Offline mode is in my opinion one of the important feature of an app. With the unreliable accessibility of the internet on mobile devices (ie: in an elevator, undergroud parking etc), it is important to keep the user informed of the networking errors the app is getting without ruining the experience nor hiding the displayed informations
I hate to be the one to say 'RTFA' but he specifically mentions in this case that the app already stored the messages offline but then prevented you accessing them with a full-screen 'offline' message. His point was that they actually went out of their way to prevent you access to already stored messages.
Just storing it locally isn't the only thing you have to do to enable offline access.
You have to programmatically remove/disable/enable all buttons that edit state (or you have to locally cache actions). You also have to make sure pages linked to from that page, that might not have locally stored data, also don't need locally stored data to function.
Then on top of all this, you have to test all of the app with online access coming back at all possible screens for all possible edit boxes, etc. Then you have to do it for offline access going away for every single edit box, etc.
No matter what he says he knows about the data model, I'm doubting he cracked open the app archive on his phone and went looking for a SQL database. I'm not sure he is really qualified to make statements about what is and isn't local.
But he (and you) are incorrect if you think no work goes into moving from their old technique to their new technique.
I'm just saying, all the above is a LOT of work compared to other features an app may not have, and those features may be more important to MOST people, not just people who go into spotty connection areas a lot (which not everyone does, for instance, not everyone works in a building with elevators and parking garages, and have near constant 3g coverage).
You have to programmatically remove/disable/enable all buttons that edit state (or you have to locally cache actions). You also have to make sure pages linked to from that page, that might not have locally stored data, also don't need locally stored data to function.
Then on top of all this, you have to test all of the app with online access coming back at all possible screens for all possible edit boxes, etc. Then you have to do it for offline access going away for every single edit box, etc.
No matter what he says he knows about the data model, I'm doubting he cracked open the app archive on his phone and went looking for a SQL database. I'm not sure he is really qualified to make statements about what is and isn't local.
But he (and you) are incorrect if you think no work goes into moving from their old technique to their new technique.
I'm just saying, all the above is a LOT of work compared to other features an app may not have, and those features may be more important to MOST people, not just people who go into spotty connection areas a lot (which not everyone does, for instance, not everyone works in a building with elevators and parking garages, and have near constant 3g coverage).
Oh the irony