3 ms·
My current theory is that this is an arbitrary one. Its really, really, really easy to cross a megabyte with statically linked libraries.
by vanwaril 14y ago
My current theory is that this is an arbitrary one. Its really, really, really easy to cross a megabyte with statically linked libraries.
- csense 14y agoI think the grandparent intended that the size measurement exclude statically linked libraries or assets, debug symbols, and compression technologies like UPX. It can sometimes be beneficial from a distribution/deployment standpoint to have everything in one self-contained file. But you can't conclude much about the code quality of e.g. a computer game engine based on how many megabytes of graphics, music and sound effects a particular game based on that engine uses.
- lukego 14y agoThe rule is not meant to be universal, and I don't say other people should adopt it, but I think it's suitable for the work that I am doing right now. Constraints like this can really shape a piece of software, for better or for worse. My inspiration is having work with a really powerful firmware system that had a hardware constraint to fit on a 1MB flash chip, everything included, and was done so well that it looked easy. Give yourself unlimited space and it's much easier to end up with UEFI... I suspect quite a few programs out there would have turned out better if their authors had picked a semi-arbitrary maximum value for lines of code / bytes of RAM / bytes of disk / etc. The actual rule I'm using for now is: - 1 second compile excluding dependencies. - 1 minute compile including dependencies (excl C compiler). - 1 MB executable including everything except libc and base OS.
- deleted 14y ago[deleted]