5 ms·
If the question is literally about just one program source code, the answer is easy: print it out. All my oldest preserved code (early 80s) is on paper, the th
by jjav 5y ago
If the question is literally about just one program source code, the answer is easy: print it out.
All my oldest preserved code (early 80s) is on paper, the things it occurred to me at the time to print out. No fancy archival paper either, just listings printed out on my dot matrix printer onto fanfold printer paper.
Anything from that era that I didn't print out is gone.
From the late 80s onward I still have all the files that I've cared to save. The general answer to that is that there is no persistent medium, you need to commit to keep migrating that data forward to whatever makes sense every so often.
I copied my late 80s 5.25" floppies to 1.44MB floppies in the early 90s.
In the mid 90s I copied anything accumulated to CD-Rs.
In the 2000s I started moving everything to DVD-Rs.
From the late 2000s until today I have everything (going back to those late 80s files) on a ZFS pool with 4-way mirroring.
Of course, aside from preserving the bits you also need to be able to read them in a future. Avoid all proprietary formats, those will be hopeless. Prefer text above all else, that will always be easily readable. For content where text is impossible, only use open formats which have as many independent open source implementations as possible to maximize your chances of finding or being able to port code that can still read the file 30-40 years from now. But mostly just stick with plain text.
- rdlw 5y agoHere's another benefit to printing: once a decade, when you migrate storage boxes or move houses, what are the odds you'll look at your printouts and reminisce? Probably pretty good, since it's easy to look at something. Meanwhile, personally, I back up old data but hardly ever look at it, since it's mixed in with old programs that probably won't work and a thousand photos I don't want to see. So maybe laser-etched platinum will last longer, but the barrier to reading it will certainly be higher.
- adhesive_wombat 5y agoBut do use some kind archival-grade paper. The £2 per ream supermarket crap that curls up in hot weather is probably full of acid and will become brittle and fall apart eventually. And I would check if there are issues with either cheap ink fading or cheap toner flaking off on the multi-decade timescale. Though you will probably appreciate a decent printer anyway to chug through 1GB of text!
- seszett 5y ago> The £2 per ream supermarket crap that curls up in hot weather is probably full of acid I wouldn't be so sure. I need paper that is not basic for a hobby of mine (cyanotype printing, a photographic process that is very sensitive to high pH) and that is actually quite difficult to find these days. Almost all available paper is acid-free, because it doesn't cost much to the manufacturer to add calcium carbonate buffer to the paper. It doesn't mean that cheap paper is good for archival (if only because it likely lacks mechanical strength) but paper made in the last two decades or so is rather unlikely to become yellow and brittle in the future, and it should keep quite long if stored in correct conditions.
- crazypython 5y agoOr microfiche, tiny paper.
- bradfa 5y agoThe only hard part is probably finding someone who can "print" onto microfilm these days. Might be worth talking to your local librarian, they probably know who still does it and how much it costs. Film is incredibly durable, will easily last 100 years.
- Loic 5y agoBut please, do not print on a laser printer. Use an inkjet printer or dot matrix printer. Laser prints have the bad tendency to "unstick" themselves from the paper, you end up losing everything. "The best long term backup strategy is a string of robust middle term solutions." This was for me the most insightful comment I read (as far as I can remember) on Tim Bray's blog[0] many years ago. [0]: https://www.tbray.org/ongoing/ https://www.tbray.org/ongoing/
- aforwardslash 5y agoDot matrix also tends to clear out during the years, specially with more acidic paper (such as recycled ones). Saying this as thousands of pages of my programming-related dot matrix prints slowly fade away :)
- bayindirh 5y agoIf you're printing with Inkjet, and you want to use color, make sure that all cartridges are pigmented (which is generally true for HP DesignJet series). Otherwise almost all HP black inks are pigment based, use all-black printouts.
- chrisseaton 5y ago> But please, do not print on a laser printer. My understanding is that until recently the UK was printing laws on vellum, for maximum archival durability... but they printed onto the vellum using a normal laser printer. So it must be pretty durable? A laser printer uses simple carbon, rather than complex inks.
- AlgorithmicTime 5y ago
- hkt 5y agoI'd be delighted to learn that all our laws before 2000 had faded from the statute book.. but you're probably right, it seems durable enough.
- lstodd 5y ago
- cookiengineer 5y agoBut, meanwhile we got USB. I'd argue that USB thumbdrives/HDDs will continue to work for another decade; and ext4 will probably survive that, too. Everything I stored on Diskettes, CDs, DVDs, Bluerays were only short-term backups in my opinion; due to the rapidly evergrowing need for more space and Sony trying to push their patented technologies to all markets. I had to buy a drive on eBay to restore backups years later, only to realize that the CDs were totally unreadable due to UV degradation. These days my backup strategy is redundant USB hard drives, with the assumption that USB will continue to be supported longer than the current SATA versions and current disc-based mediums. The only thing that survived all this time were ZIP drives and DVD-RAMs. They are still awesome. But sadly nobody uses them anymore, so access to replacement mediums and drives is a little limited :(
- hulitu 5y agoThere are 2 big problems with USB: data retention and connector format.
- yencabulator 5y ago> These days my backup strategy is redundant USB hard drives If you're talking spinning rust, beware hard drives that haven't been spun up in a long while have a tendency to "stick". I'd suggest starting every hard drive up at least yearly and scrubbing the contents.
- jasode 5y ago>If the question is literally about just one program source code, the answer is easy: print it out. Doesn't seem like it's just one source code file if op states : "Requirements are: size < 1GB," Depending on font size (say 10pt) and average characters per line, that would be printing several hundred thousand paper pages which is not feasible for the average homeowner to roundtrip back into usable digital files. Instead of a cheap flatbed scanner, you now need a high-speed auto-fed document scanner and then run batch jobs to OCR several hundred thousand tif images back to digital source files. One could reduce the paper count by compressing the source text to zip and then printing a form of binary-to-text (e.g. UUENCODE) but now the papers have random-looking gibberish instead of readable text. Printing <10 MB source code is more realistic than <1 GB. (But I'm guessing the author may actually has much less than 1,000,000,000 bytes of original source code if one leaves out 3rd-party dependencies.)
- ri0t 5y agoFor a fully reproducible and backed up build, you will need to print out the 3rd (and 4th and so on!) party stuff as well :( Good luck with anything that has a "node_modules" folder ;) Please do not deforest earth for that.
- kurupt213 5y agoCuneiform. We still have fired clay bablylonian tablets from the early Bronze Age
- TheRealPomax 5y agoSo, "fired clay" then =)
- TacticalCoder 5y ago> I copied my late 80s 5.25" floppies to 1.44MB floppies in the early 90s. In the mid 90s I copied anything accumulated to CD-Rs. In the 2000s I started moving everything to DVD-Rs. BluRay discs are expected to last 50 to 100 years at least. It's longer than magnetic tapes. Still not paper but, well, kinda inconvenient to "print" 1 GB of data on paper in a way that's easy to store / re-read. I have 80s floppies (5"1/4) that still can be read fine but I'd say at least 1/3rd of them are now failing. Still: after about 35 years, I'd say it's not bad. I expect BluRay discs to completely outlive me.
- ffhhj 5y agoThis. Inkjet printer and acid-free cotton paper.
- Spooky23 5y agoGreat points. I worked with some archivists on a project several years ago (When ODF was a big thing) and was surprised at the amount of controversy. There’s a couple of schools of thought. In general archivists want to preserve the original document, but at that time they were already losing access to 1980s word processing formats. Some folks advocate PDF/A output as a “standard” preservation technique. The people I was working with were making a point in time TIFF image of whatever was being preserved and storing it side by side at the time. (I think they transitioned to PDF/A when the spec was revised) PDF/A is the standard for US Courts, so renderers will be available for a hundred years or more. It’s an interesting problem space because time is not kind to electronic documents. Even stuff like PowerPoint from circa 2000 doesn’t always render cleanly today. When “H.269” is released in 2050, will anyone ship H.264 codecs?
- orangepurple 5y agoUse a ZFS snapshot on a rotation so you can restore accidentally deleted files (a hedge against user error, ransomware, etc.)
- tmaly 5y agoIt is interesting to think of ancient Egypt's use of papyrus for paper. Very little of it remains. But all of those carvings in rock, you can go to a museum and see stuff 2000 years old.