Rob's Dev Log

You've probably heard the term a few times, maybe you even have an account somewhere like Mastodon.

Before we talk about federation, let's explore a situation; Let's say you have MySpace account, and you really enjoy the interface and the community there.

Now your friend has an account on this new site called Facebook. You're not really interested in creating another account somewhere. And then what would you do when you have an awesome cat photo to share? Do you post on Facebook or MySpace?

This is where federation comes in. In this context specifically, something called ActivityPub. You don't need a lot of details, just that ActivityPub is a specification of vocabulary that software can use to describe and communicate activities. Any software that supports ActivityPub can federate with another, that is they can talk about the same things like they were the same platform.

So if your friend on Facebook followed your account on MySpace, you can post all the cat photos and memes you like. And rest assured that your friend will not only see them, but can interacte with them too. Comment, like boost (repost to their friends) and more.

This blog itself is federated, supporting ActivityPub. It is running a blogging platform called WriteFreely. You can follow it using the following federated ID:

Federated Software

So, what kind of software is out there? Probably way too much to list here, so I will list my favorites. Sorry if I leave out yours.

This guide is for users wishing to migrate their WriteFreely instance from a SQL database to SQLite3. The steps involved can be used for any similar migration.


The reason I decided to move my database was that I run it as a single user instance for myself only. I don't have thousands of posts, nor will I, and I am interested in running a few other services on the same little server. Most of them use or support PostgreSQL, while WriteFreely currently supports SQL or SQLite3. I don't really want to run more than one database instance if I don't have to.


I have a new paste server that supports images and code snippets.

Shareable link

The server is linx-server.

Example go source file from go-writeas.

This guide will walk you through the process of installing WriteFreely on Ubuntu 19.04 Disco Dingo.

We will run WriteFreely behind nginx , so we can run other applications on the same server.

In this guide we will setup the application for multiple user's and with registrations open. You can adjust to your use case, details will be provided.


This is a quick guide on hardening sshd on a server.