Engineering for Slow Internet

Role of Starlink and Network Infrastructure

  • Some argue LEO constellations (e.g. Starlink) “solve” remote bandwidth/latency, citing solid video calls in the Arctic and at sea.
  • Others counter: Starlink has jitter, packet loss, sparse polar coverage, high power draw, and is unlikely to scale to billions or be politically permitted everywhere.
  • Even with better backhaul, problems remain in congested trains, subways, cities, hotels, and countries with weak or censored infrastructure.

How Common “Slow Internet” Really Is

  • Many report unusable mobile data in major cities (US, UK, Germany, France), subways, rural areas, and developing regions.
  • 2G/EDGE fallback, capped data plans, overloaded cells, and spotty Wi‑Fi make “slow/bad internet” routine, not exotic.
  • Slow or old devices amplify the problem; heavy JS and complex DOMs crush low-end phones.

Bad vs Good Behavior on Poor Networks

  • Numerous complaints about heavyweight web apps and tools (chat, project management, cloud consoles, RDP, etc.):
    • Huge JS bundles (tens of MB), many round trips, hardcoded short timeouts, no resume, and failure under packet loss.
    • Apps that block UI, reload themselves, or lose state when connectivity flickers.
  • WhatsApp (and some other messengers) are repeatedly cited as exemplars:
    • Offline-first, phone as source of truth, small wire formats, prioritizing messages over telemetry, background sync, robust handling of DNS/MTU issues.

Design Patterns and Proposed Solutions

  • Strong support for offline-first / local-first design: transactional sync, conflict resolution, explicit “sync” controls, and local caches.
  • Mention of DTN/NNCP, torrents, HTTP range requests, and streaming/incremental rendering as robust patterns.
  • New protocol ideas (e.g. Braid HTTP extensions) discussed; some see promise, others view more protocol complexity as missing the real problem (bloat and telemetry).

Testing, Culture, and Incentives

  • Many note devs test on fast fiber and new laptops, rarely throttle or simulate jitter/packet loss, and are incentivized for features and tracking, not resilience.
  • Calls to routinely test on: slow/high-latency links, metered connections, old phones, and low-end hardware.
  • Skepticism that big companies will prioritize this without explicit requirements or user segments that materially affect revenue.