Building in the open
We just shipped a blog. You're reading it. This feels a little recursive, but bear with us.
Why bother?
outing.social is built on the AT Protocol, which is fundamentally about openness — open data, open identity, open social graphs. It felt wrong to build on top of all that and then not talk about what we're doing or why.
A dev blog serves a few purposes for us:
- Accountability. Writing about decisions forces you to actually think them through. "We did X because Y" is harder to type when Y is "I dunno, seemed fine."
- Context for contributors. If someone wants to understand why the codebase looks the way it does, the blog gives them the narrative version instead of just a wall of commit messages.
- Proof of life. For a young project, regular updates signal that someone is actually working on this and it's not abandonware.
The setup
The blog is intentionally simple. Posts are markdown files with frontmatter, loaded at build time. The listing page and post pages are just React components with basic markdown rendering. An RSS feed is served by the Go backend at /feed.xml for the dozen people who still use feed readers (we see you, and we respect you).
When we need something fancier, we'll build it. For now, this is enough.
What to expect
We'll write here when something interesting happens — new features, architectural decisions, things we learned the hard way. We're not going to post for the sake of posting. If there's nothing worth saying, we'll say nothing.
If you want to follow along, subscribe to the RSS feed or just check back when you're curious. We'll be here.