I was going to write something about how end users need to be aware of how much space things take and then the coffee kicked in.
How the fuck do you release a 41 GB mobile OS?
Simple: MS has any number of project teams, and they all need to write code to deliver features, but they don't account for disk space.
At some point, the hardware guys need to say, "okay, we can provide X GB of space for X dollars, more storage space is going to require more chassis space, thermal effects, $, etc."
Then that gets parceled out to the UX team, who get the vast bulk of the space, and to the installer team that parcels it out to software devs.
So making your software fit becomes a project deliverable, just like anything else. And then you can make trades, if UX complains, "hey, this loads slowly," you can say, "sure, that's because we compressed those files, if you'd like it to load faster, maybe we could 'buy' some space from Bob's team, or you can let us have some from the UX pool if you feel it's important enough."