To view parent comment, click here.
To read all comments associated with this story, please click here.
Unfortunately disk space is only half of the problem. The other issue is that if you have multiple copies of a library on disk you will load it into memory multiple times. In some cases this is completely appropriate (single-use servers I run tend to use more statically linked binaries because I know what is getting loaded into memory), but for end-user systems the memory overhead when running multiple applications can kill you. There may also be issues with security updates etc having to be applied in multiple places. Still, static linking is certainly a widely used solution in many contexts, and should always be considered as another option to dealing with the complexities of dynamic dependencies.
I agree with what you're saying
Re: downloading redundant updates, and storing redundant data in memory
It's the same as hard disk space. Look at the present and the future, not the past.
Explicitly: Hard drive space, memory space, and bandwidth are all dirt cheap. Some people get ripped off more than others, but they are all dirt cheap in reality.
Today: $100 for 500gb of hard drive space. $20 for 1gb of ram. $10 a month for 3000GB of website transfers. $40 a month for 5Mbps download speed to your home. And you can find even better rates when you leave North America and enter small European countries where they rip you off less.
So keep that in mind when you think of how much hard drive space, memory space, and bandwidth would be used by statically linking all those small libraries.




Member since:
2007-03-30
That topic is a slightly different can of worms, but one worth mentioning.
Take the average Suse or Ubuntu desktop that is a year or two old. Look at every program that is installed.
Re-install every program in its own directory with its own copy of every dependency except for giant things like Java.
How much extra hard drive space have you used? That is the price of never having to deal with a dependency conflict ever again.