- Your user requests your web app
- Has the page loaded yet?
- “All your users are non-JS while they're downloading your JS” — Jake Archibald
- How many times have you had a mobile browser hang forever loading a page and then load it instantly when you refresh?
- Because loads of them still do.
- Sky accidentally block jQuery, Comcast insert ads into your script, and if you've never experienced this before, drive to an airport and use their wifi.
- Is the user a microbrowser, getting details to embed in another
are everywhere, every time someone pastes your URL into a chat app
or a social media tool and it shows a preview, and they aren't going to
wait for your 2MB client app to boot up.
- People still do.
- Do they have Chrome's Data Saver mode turned on?
- If they do, and they're on a 2G or otherwise slow connection,
disable all scripting.
- Do they have addons or plugins installed which inject
script or alter the DOM in ways you didn't anticipate?
- There are thousands of browser extensions. Are you sure none
interfere with your JS?
- Does their adblocker block a script you’re accidentally
people use adblockers, which may blanket-block whole domains.
If you have one script dependent on another and that other script gets
blocked, the remainder of your scripting may not start up.
- Is the CDN up?
- CDNs are good at staying up (that’s what being a CDN is) but a minute downtime a month will still hit users who browse in that minute.
- Check Can I Use for browser usage figures.
Is all the above true?
translation available at Frontender
Magazine courtesy of Антон Немцев.