Microsoft's free upgrade to Windows 10 for users of Windows 7 and Windows 8 has not been without complications; some users are getting stuck in a reboot, or are unable to access the Windows store or app updates, among other issues. Additionally, changes in the default behavior in Windows 10 and new requirements for sharing telemetry and analytics data with Microsoft have made Windows 10 a controversial update.
New concerns with the way that Windows 10 enforces automatic download and installation of updates for non-Enterprise SKUs is turning a free update into a costly endeavor for some users.
Where Windows 10 weighs in
The Windows 10 ISO direct from Microsoft is 3.8 GB for the 64-bit version, with the in-place free upgrade package roughly somewhere near that figure — keep in mind the upgrade to Windows 10 also necessitates the download of separate driver packages for an updated driver. These packages can vary widely, though the upper end would generally be high-performance graphics cards — a random sample from NVIDIA provides a file just over 270 MB.
Also new in Windows 10 is that updates are cumulative. Microsoft says only the changed files will be downloaded, though for reference, the first cumulative update was 325 MB for the 64-bit edition. With the subsequent cumulative updates and emergency security patches, it is reasonable to assume that a Windows 10 installation with driver downloads would use about 5 GB of bandwidth for a typical 64-bit installation.
Why this is causing pain for users
Budgeting for a data cap is not a significant point of concern for an average programmer —access to adequate internet connectivity is a requirement for any software company. However, the average end user does not have access to such infrastructure.
For users in the US, a report in April 2015 by the Pew Research Center indicates that 15% of US consumers have limited options of internet access other than a cell phone, and 10% have no broadband service at home other than a smartphone data plan. Reliance on smartphone tethering or LTE-connected mobile hotspots typically come at a substantial cost — Verizon's new price structure is $90 for a 12 GB per month plan.
People in rural areas are unable to effectively use cloud services due to the lack of proper wireline internet infrastructure in those regions of the country, with services like HughesNet offering satellite-based internet packages at $60 for a 20 GB per month plan. Even in urban settings such as Atlanta, GA, Comcast enforces a 300 GB per month data cap as a business decision, not out of any technical requirement. The company charges a $10 per 50 GB overage fee.
In Canada, the subject of data caps has come under a great deal of scrutiny following a proposal by Eastlink to limit customers in Nova Scotia to 15 GB per month on the terrestrial radio network system originally built in 2006.
Reports from Australia and New Zealand have noted concerns with the upgrade to Windows 10, as a user in the Cook Islands is reporting a bill for "as much as $NZ600" ($394 USD) as a result of the auto updates. Users in urban areas of Australia are at a lesser risk of issues with data caps, as Telstra recently raised the limits on residential data caps in response to the popularity of streaming media.
Using your home internet connection to share updates
For users on metered connections, such a wireless mobile hotspot or a terrestrial radio system, it's important to indicate this in Windows settings, as Windows 10 by default is configured to use Windows Update Delivery Optimization, which can transmit update data to any other computer on the internet. (For Enterprise and Education SKUs, this is limited to only PCs on the local LAN.)
This isn't the most fair of comparisons, though the new package manager in Fedora 22 (dnf) uses Delta RPMs by default for updates, greatly decreasing the download size in exchange for requiring more processor time to apply updates — a trivial task on most newer processors.
Are you in a location with limited access to wireline internet? Does the lack of control over update timing in Windows 10 concern you? Share your thoughts in the comments.
James Sanders is a Java programmer specializing in software as a service and thin client design, and virtualizing legacy programs for modern hardware.