I have been programming for a few years, and I still don't understand how an EXE installer can sometimes be so much smaller than the program that it installs.
I can understand that using high-level classes will translate into a lot of machine code (meaning that the source files will be smaller than the machine code they create), but can that really account for the occasionally massive discrepancy?
What could code do to generate disproportionately more information than there is source code? It obviously isn't just a bunch of for-loops writing the same phrase repeatedly into a number of files. How can a small program create meaningful information in a disproportionate ratio to the amount of code running it?