Week 9: Decentralization

Week 9 - Decentralization

Today:

  • What does decentralization mean?
  • What are some of the decentralized networks that exist beyond the world wide web?
    • Hyper Protocol (hyper://)
    • Interplanetary File System (ipfs://)
    • Gemini Protocol (gemini://)
  • Browsers for alternative protocols Beaker (hyper)
    • Agregore (hyper, IPFS)
    • Lagrange (gemini)
  • Building a browser: Getting Started

Today’s social software: the decentralized internet

Let’s spend a few minutes exploring what the decentralized web is, who uses and creates it, and why.

We’ll look at experimental protocols and the browsers for these networks. Additionally, we’ll talk about why this protocol exists, the creators’ (or creator’s) goals, and how the work intersects with a community.

First stop: Hyper protocol

Hyper is a protocol designed originally by the Dat foundation. Their goal was to build an internet without a separation between Clients and Servers. All nodes in the network (individual users) can host and serve data (web pages, etc). For this reason, there would be less reliance on commercial hosts (Amazon, GoDaddy, Squarespace…) and instead your site would be hosted on your own computer and any other computers connected to the network that choose to re-share your site, particularly useful if your own computer disconnects from the network.

Beaker is built with Chromium and should feel exactly like any other Web browser. The big difference: Beaker can host websites. Hosting a website is traditionally done by “servers” which are specialized computers in the cloud. Servers require a variety of skills to run, and while there are some great services out there to make it easier, we wanted to try something new. We figured, what if anybody could host a website from their laptop? We call those self-hosted sites “Hyperdrives.”

Beaker is a peer-to-peer web browser. About 5 years old. Though it still works the developers recently stopped working on it and its underlying technology (Hyper Protocol) is being used elsewhere.

Problems with Hyper:

  • Lack of content / mass adoption
  • Requirement to leave your computer on and connected to network at all times so a site stays accessible, or else needs to be served by another
  • Dat started a commercial entity to provide essentially an always-on computer that could mirror your sites. In this way, it became a mini replication of some of the services it was critiquing.

IPFS

Interplanetary File System website

  • Similarities to the Hyper Protocol.
  • More widespread adoption. For example, it’s integrated into Brave Browser (Chromium).
  • Some NFTs are hosted on the IPFS.

Agregore

A peer-to-peer browser for decentralized networks including the Interplanetary File System (ipfs), Hyper protocol (hyper), BitTorrent. The browser is an Electron (Chromium) application.

  • Enable people to make and use local first apps using the web
  • Be minimal (fewer built-in features, leave more to the OS)
  • Be open to anything p2p / decentralized / local-first
  • Rely on web extensions for extra functionality
  • Work with mesh networks / Bluetooth Low Energy networks

Agregore online

Gemini protocol

The Gemini protocol started as a ‘specification’ written up by a person calling themself Solderpunk. Gemini is about 2 years old and has thousands of users, who primarily use it to write blogs (informally called gemlogs or gemini capsules).

Gemini was conceived as a minimal, low-resource protocol, eschewing the commercial web with its bloat (large page size, need for fast connections), commercialism (ads), and complexity (web apps, passwords). It accomplishes some of this by being a text-focused protocol, with no CSS or Javascript. Instead the user of a gemini client (which is what the browsers are called) can choose their own style(s) for viewing pages served over gemini. By default, most pages just serve text. All links are on their own line. And any embedded photos, videos or audio (for example) are served as links to download instead of presented inline on a page.

Many tildes offer Gemini hosting and there are a few web-based services to create a gemlog.

Gemini is growing in popularity in programming and DIY communities. There are a large number of clients on the command line, GUI, iOS and Android.

Recommendations for Gemini sites:

Gemini log hosting:

Resources

Visit the smol web

Download at least one graphical gemini client and one text (command line) client. Visit Gemini. Review the specs. Learn how it was proposed and then turned into something that was used by a community. Review how decisions about the technology (specs) are made and where the work on Gemini happens.

View a number of different “sites” referred to as Gemlogs or gemini capsules. Find articles or posts that interest you. You may want to use an aggregrator or the Medusae.space directory to find sites of interest.

Write about: How do you view Gemini? In your words, what is Gemini about and what purpose does it serve? How are decisions made in regards to haw Gemini was formed and evolves? What were some of the highlights of gemlogs that you’ve visited? Do you think this is a useful alternative internet that serves a need, or not, and explain your reasoning.

Bonus points: Sign up on Gemlog.blue or smol.pub and create your post there (so it posts to Gemini and the web) as a gemlog post.