I recently wrote a blog post on the perils of finding good hosting solutions for my blogs. My private blog janromme.com, as well as Seriousaboutech are both hosted on Blogger.com. The downside of Blogger is that it injects advertisements unto my pages. Also, I can’t really access my blog files. It’s all accessible only through a web portal. So I am currently in the market for a good and cheap hosting solution.
This got me thinking. What if we are all are doing hosting wrong?
Hosting made sense when most people didn’t own their own always-on, always-connected devices. What if instead of looking up to big companies to do the hosting for us, or falling behind on our dev-ops skills in trying to self-host on a VPS, we should instead use easy to use self-hosting apps on our smartphone and laptop? The limitations of a smartphone or a laptop as a hosting device are (among other things):
- Limited battery
- Bandwidth restricted
- Spotty 5G or Wi-Fi coverage
- No self-owned IP4/IP6 address
- Behind a NAT
- Limited access to your own device (iOS App Store restrictions come to mind).
All of these limitations can be overcome if we think not of one smartphone or one laptop as the single hosting device, but instead of a pool or swarm of these devices, scattered all over the globe. A recent hosting solution that already uses this principle exists today: it’s called NOSTR, short for “Notes and Other Stuff Transmitted by Relays”. Every file, audio, video, Markdown text or whatever, is cryptographically signed by the user who posts it. This means it can’t be tempered with, and it can be identified on several different relays that host the file.
The downside of the current system is that it relies on kind persons who get a warm and fussy feeling form playing dev-ops on a rented VPS or home server. This is not a sustainable business model.
What if each of the readers of my blog posts or viewers of the video files that I share, would automatically become a hoster, let’s say for 3 months after viewing? This automatic hosting means my mother (she’s close to 80, bless her hart) can do it too. It should be seamless to set up and forget. A build in bonus is that a popular blog post will automatically be hosted by more and more relays, in the same way that a popular torrent file is automatically seeded by more users as well.
Almost all the pieces exist today:
- Automatic seeding/hosting/relaying of a downloaded file exists in the torrent sphere: Webtorrent.io shows how hosting inside the browser works by using WASM, WebRTC and JavaScript. And hundreds of nostr relays are in operation today. You can push your data to all the free relays by using a tool like blastr.
- Punching through a NAT or circumventing the problem of not having a static IP4/IP6 address has several working solutions today: Holepunch, IROH, libp2p and WireGuard come to mind.
- Finding a blob on Nostr and showing it as a webpage is done by for example Njump.me, Blogstack and NoteStack.
- Even a NOSTR-relay-on-WASM exists already called snort worker relay.
If anyone knows of a project that is (close to) achieving a combination of these goals, please let me know 😊.
If you want to comment on this blog post, you can do so via nostr here, or on Hacker News.