Search code examples
usabilityprogressive-enhancement

How can I know the user's bandwidth to provide the best possible version of my web application?


We are developing a web application with a hetereogenous base of users. Additionally, we must provide a visually appealing experience. So, I would like to know if there is any way to get estimates of user bandwidth in such manner, that we can decide if we serve a given version, or another one.

Or should I aim for the lowest denominator at all?

No matter the technologies involved: I'm platform agnostic for this case (for example, a flash applet to estimate the capabilities of the user will be fine). I just want to hear your advice.


Solution

  • IMO where it's necessary for a choice these things are best left to user to decide. Some people will happily wait for a richer experience, others want fast and snappy regardless.

    You could have a landing page with an image/flash that times how long it takes to use, then presents links to both with a suggestion which will be the best experience given the users bandwidth. Store this choice as a Cookie then in future bypass the loading page.