Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Flash of Nothingness #2

Open
pushred opened this issue Sep 29, 2014 · 0 comments
Open

Flash of Nothingness #2

pushred opened this issue Sep 29, 2014 · 0 comments

Comments

@pushred
Copy link
Member

pushred commented Sep 29, 2014

One unavoidable side effect of fetching resources clientside if latency. If left unhandled this can definitely make for an odd user experience, where different pieces of a page pop into place here and there as data is gathered, manipulated, and rendered into the page.

Bootstrapping a page with as much content as possible serverside is the usual go to for combatting this. Implementing spinners and other indeterminate progress indicators is important. Some artfully constructed CSS can also mitigate the chaos by blocking out content containers in advance. The Solidus server and the callbacks should help with implemention of all this. But something else we should perhaps consider is caching via localStorage.

There's some precedence, data, and libraries out there, that all especially make a case for memory-constrained mobile devices:

Not sure how what clientside cache headers generally look like, whether we'd need to invalidate resources too quickly for this to be useful. Perhaps we could take a background fetching approach as we do on the server though and only replace resources when they actually change, ensuring that after the initial caching we'd usually have some data onhand, albeit possibly slightly stale.

Something to think about.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant