--------------------------------------- Archiving and bootstrapping 29th December 2019 --------------------------------------- I've recently become very interested in the digital archiving movement; places like archive.org, r/DataHoarder (when redditors aren't being toxic) and ArchiveTeam have really piqued my interest. I personally think what they are doing is mostly good work. I really like the idea of preserving the current internet for future historians and generations. One thing I didn't know was the extreme rate at which data is deleted from the internet. Did you know in your average academic paper, out of internet sources: - After 1 year, 10% of the sources are no longer up. - After 2 years, 25% of the sources are no longer up. - After 5 years, nearly 50% of the sources are no longer up. This obviously varies from paper to paper but the astounding thing is all the research collated on various personal websites just goes. The internet really is held together by string and tape; all it takes is for a domain name to expire; a web host to go down; and the content is no longer accessible. This is where services like archive.org jump in, and trawl the web saving pages so they can be viewed by people. This has been invaluable for many people including myself trying to find solutions to problems on websites.. that no longer existed. Things like expiry times on TV streaming services (eg in australia ABC iView), have lead me to downloading TV shows, often seasons of them so I can still watch them even when they aren't on the website. I have roughly 50GB of TV shows now which is quickly growing. I've had a few more interesting adventures archiving non-web media, things like CDs/DVDs, VHS and camcorder tapes. CDs and DVDs were the easiest of the four, because they are already digital. Just chucked them in my DVD reader, connected it up, fired up Exact Audio Copy for CDs and MakeMKV for DVDs, and transferred the result to my Raspberry pi NAS. VHS was slightly more difficult. I ended up after trying various solutions using S-Video into a USB capture card. I then used OBS to record the result. I preferred S-Video over RCA as it is higher quality. Camcorder tapes was the hardest of the four. I started by attempting to use RCA, but that yielded a very low quality. I looked for various ports on the camera and found a firewire port. Now as far as I knew none of the devices in my house had firewire, so I shelved it for a while. Then I found a ~12 year old laptop that had firewire and after digging in some boxes of cables I found the correct 4 pin to 4 pin firewire cable, and installed the very old program dvgrab. The results were suprisingly large; a 1 hour tape was roughly 9-10GB. Moving on to the other topic I wanted to talk about; bootstrapping. It's a very interesting concept; being able to compile a language without a compiler. There's a lot of folks at irc.freenode.net#bootstrappable that are really nice and willing to help. They've gone to great lengths to make languages bootstrappable. My favourite is Java, where they trace their way back to using a Java runtime from 2009! which was written in C and compile their way up to OpenJDK. (https://bootstrappable.org/projects/java.html) The primary project is making C bootstrappable (C++ is bootstrappable by using GCC 4.7.4 which didn't require C++). Some guy called oriansj went crazy with this and extended the goal to making even *assembly* bootstrappable; they've actually done this and the only missing link is between M2-Planet (a subset of C) and TinyCC (a old C compiler). You can see it here: https://github.com/oriansj/stage0. It starts with only a 280 byte binary and the rest is source code. (I've become involved in this and since the missing link is a C compiler written in scheme, a scheme interpreter is being written in m2 (https://github.com/oriansj/mes-m2). Help is really needed to write tests to test fuctionality of mes-m2, especially with modules.) On the last note, I hope everyone had a great Christmas and has a exciting 2020. Here's to gopher in the new decade! ~fosslinux