[Back to blog]You can get this blog via IPFS: ipfs get /ipns/itjac.me/blog.pdf

[Link] tags:     PDF  IPFS  
05 July 2019

IPFS is one of those curiousities that just won't leave me, and so I get possessed from time to time to tinker with it.
Usually I sort of stop myself before actually my hands dirty, but this time things just aligned too well. I have written my own blog software, and ever since I wrote it, I had the idea that it could be used to render to more than HTML, and infact PDF was one of those things I thought possible. While IPFS can be used as a webserver, I'm not happy with web technology, and part of my interest for IPFS is with possiblities of creating replacements for the web. IPFS is perfect for sending
a PDF, which is generated from my custom blog syntax and this proves that we can do things outside the status quo.
I was very happy to find that my blog code was prepared enough for a different rendering target, which made it very easy to get 80% of the work done, after I had figured out the PDF library I'm using http://libharu.org .
I'm quite passionate about the idea of decenteralisation and IPFS gets me excited for this reason, but I do struggle to find uses for it that are serious work. I guess being able to publish a blog can be quite enabling, even if it is just a pet project for me. This is of course far from convenient enough though.
IPFS creates hashes for each file, and updated files are considered new files. There are two work arounds. IPNS is one that is too slow to be usable. The second one, which is the one I use, is called DNSlink, and it just involves addding a record to your domain. It is however not good enough, because I'll have to manually update that record everytime I update my blog, or figure out some API from my domain provider. Also propagation takes forever.
Another potential option that is only an idea at the back of my head, is using the IPFS API to create a service that maybe listens on a hash, and sends the updated blog, or something like that. This is a slight annoyance though, because it would be the first break from my "vision", which is an entirely static blog, and even though the blog itself is just a PDF; included in the vision is the idea that I don't write and have to maintain any not static code.

PDF also has limitations. It doesn't support videos for example. But any alternatives that I know of, are way too massive. These alternatives are web tech and Latex. I have been thinking about creating some simple blog reader software, and maybe this is inching me further towards actually doing it!

A note about writing PDFs with libharu. It doesn't use a XML tree or anything similar, instead you place where you want text to go, or graphics, etc, and I'm excited about how easy it was to work with, because I've been thinking about it as an alternative to the HTML way, and doing this made me a bit more confident in my assertion that HTML, and web technology, is completely bad.

I've decided to put the IPFS link at the top of this blog, so people can see it when they read the blog. The location is - /ipns/itjac.me/blog.pdf