Mirroring Dead Websites

Today I checked in on cjdns to see where the project was. It looked about like it did the last time I checked it several months ago. While reading doc/bugs/policy.md I noticed a link that went to archive.org because the original site was dead due to domain name expiration. Thinking about how IPFS could have kept sites like this alive even when the original owner abandoned the site, I dove down a rabbit hole and ended up with a mirror of the site.

Hyperloop Criticisms

Because I think that the engineering problems facing hyperloop can all be overcome, I’m going to discuss several criticisms I found on the web and ways they can be overcome. I’m only going to look at serious criticisms and not hand-wavy “this couldn’t possibly work!” criticisms that can’t be answered anyways. After scanning a couple articles on the topic, they all seem to be from 2016 shortly after the white-paper was released and nothing of substance more recent.

Designed to Last

I was reading thru the latest posts at No Tech Magazine and saw this article on designing web pages to last a decade. A lot of what is covered very much applies to websites on IPFS. Here is the list from the article (which you should read): Return to vanilla HTML/CSS Don’t minimize that HTML Prefer one page over several End all forms of hot-linking Stick with the 13 web safe fonts +2 Obsessively compress your images Eliminate the broken URL risk Of these, #1, #2, #4, #5 and #6 absolutely apply to IPFS sites.

Pubsub Comments

Yesterday, I threw together a proof-of-concept comment system for use with IPFS websites. You can find the demo here. I expect this link to become unreachable once I transition from a proof-of-concept to a production system. How it Works The comment system consists of the following parts: The web page with comment submission form. This is hosted on IPFS using IPNS for mutability comments.js that contains the existing comments. pubsub-comment.js contains functions for submitting comments with AJAX and updating the static page to include existing comments A pubsub relay server.

Hyperloop 2

I came across another article today blasting the idea of hyperloop and doing so with terrible arguments. It was honestly painful to read. The article, if you can call it that, was written in a way that I can only call screaming at the reader, absolutely certain in itself that it was right. After getting past that, the article essentially came down to because high speed rail exists elsewhere in the world, that America should have only rail and get rid of as many cars as possible, and that Americans are either greedy, lazy, inefficient, or more likely, all three, because they don’t already have high speed rail, and that they should just fix that and be like the more enlightened Europeans and Asians with the electrified rail and dense cities.

System Maintenance

Finished the NAS system maintenance that I’ve been putting off. Removed the faulting hard drive and installed the 8TB into its spot, removed and replaced the thermal paste on the CPU, replaced the CPU cooler (the hold downs broke while it was removed), and buttoned everything back up. After cranking up the CPU load on the system with IPFS Follow Cluster and Folding@Home, the CPU is holding at 35-36°C with 90-95% CPU utilization.

Battolyser

I recently came across this site that talks about a group in the Netherlands who combined a Nickel-Iron battery with an alkali electrolyser. For the cost of a membrane and a couple of fittings, you get an electrolyser. I think this makes a lot of sense. Nickel-Iron batteries will last a long time before having to be refurbished, and the hydrogen can be used for seasonal energy storage (my preference is methane, others want straight hydrogen or ammonia).

libipfs 2 - Proof of Concept

About 26 hours later, and somewhere between 10 and 14 hours of programming in a language I had not used before, I have a libipfs at a Proof of Concept stage. I have a program written in crystal (because I am familiar with it and it lets you right C bindings in crystal) that initializing an IPFS node, connects to the bootstrap nodes, and downloads the CID from the ipfs-as-a-library example.

Pets

This article on pets popped up in my browser this morning and after reading it, I have come to the conclusion that the author has never had a pet of their own, or are more concerned with earning a paycheck than being honest. If not, they would not find it impossible for animals to communicate their acceptance of living with humans. I have both dogs and cats, so I can speak a bit on their behavior.

libipfs.so

I have had an idea floating around for a while now about a C interface to IPFS. Today, I stumbled upon this thread about using ipfs as a library. I remembered the C-library idea and was able to find this article about how to make go libraries that can be called from C. And thus I dove head-first down the rabbit hole and spent the next two hours creating a proof-of-concept C bindings for go-ipfs.