There's also a huge tendency to design for fast, high quality connectivity. Try using any Google product on airplane wifi. Even just chat loads in minutes-to-never and frequently keels over dead, forcing an outrageously expensive reload. Docs? Good luck. I wish software engineers cared to test in less than ideal conditions. Low speeds, intermittent connectivity, and packet loss are real.
Unless it's somehow regulated that people test less than ideal conditions it won't happen, yet most people (myself included) don't really want that either.