There are two trends these days which are heading for a collision: automatic updates and multiple Internet connections with different bandwidth restrictions. It is common for mobile apps to have settings to enable/disable high bandwidth operations depending on whether you've got a cellular or wifi connection, but this isn't enough when that wifi connection might be a home high handwidth/low cost connection or a tether connection which is much slower and has a monthly cap. Do you really want your tethered laptop downloading Windows/Firefox/Chrome/Adobe updates, or should that only happen when you're connected to a fast/cheap connection?
I think application developers for both desktop and mobile apps need to start adding options for what operations happen in the background. Of course the ultimate solution would be to add to the Wifi connection protocol data on the real bandwidth and data caps for whatever an access point is offering, but a shorter term solution would be to have a whitelist of "home base" SSIDS and high bandwidth operations would happen only over those connections and not others.
The first step though is getting developers to start thinking about this issue.