This page contains some of my public work as a developer advocate at
Element and is not exhaustive. I previously worked as a developer,
enterprise architect, and internal evangelist (yes, that's a thing!)
I redesigned and reimplemented the matrix.org website to actually
speak to specific people. When I started working on it, it was a
typical engineer-designed website: trying to enthusiastically shout
everything at once to everyone, without any form of prioritisation.
In addition to a confusing message, the website had accumulated tech
debt. When redesigning the website I took into consideration not only
who was the audience, but also who would maintain the website and the
time they had to do so.
What screams "sturdy" louder than "reproducible and scalable
deployments"? Ansible is a powerful tool that allows homelab hackers
to set-up disposable development or staging environments that matches
what they have in production. It's also one of the classic tools in
the Ops/SREs toolbox.
In this tutorial, I walk people through deploying and maintaining a
Synapse set-up with Ansible.
Ansible allows sturdy deployments, and makes it easy to deploy several
services across several machines. As your platform grows, it becomes
increasingly cumbersome to remember different passwords for different
applications, or dangerous not to.
In these tutorials we deploy
Authentik, a flexible OpenID Provider, make Synapse trust it, and then perform
account reconciliation for existing accounts. At the end of the
tutorials, people have a SSO-enabled Synapse server with account
One of the promises of Matrix is the sovereignty of your
infrastructure. Whether your community already exists on Discord and
your want to give it a safe place on Matrix without a big bang, or you
want to leave your community to participate via Matrix or Discord to
their liking, this tutorial shows you how to host your own Matrix
bridge to Discord.