Categories
authentication OAuth

Lightweight IDPs: authentik, Zitadel and Authelia

Three lightweight identity providers replace Keycloak for small teams. Compare authentik, Zitadel and Authelia, and the case where each one fits.

Categories
Agentic Coding AI

An MCP is just an SDK for agents

People make MCP sound more complicated than it is. A SDK and a MCP server both wrap functionality that an API already exposes. A SDK is a library for one programming language, usually published by the company that owns the API. You import it, call a function, and the library handles the HTTP request. A […]

Categories
Agentic Coding AI

Opencode Go: Historical Models and Limits

This data is specific to the opencode go ($10) subscriptions, not the newly added opencode go plus ($40) subscription. It was easiest to compare the Requests per 5 hour category. In future I will look at the monthly usage dollar amount. Update November 2026: The number of supported models for opencode go has gone from […]

Categories
photography self-hosted

Best Self-Hosted Photo Gallery Apps to Display and Sell (2026)

I tested ten self-hosted photo gallery apps for selling licences, delivering client galleries and building a portfolio, and ranked them by job.

Categories
Agentic Coding AI annoyed ubuntu

Why Linux (Ubuntu Desktop) Sucks: Converting Markdown to PDF with pandoc, LaTeX and Unicode

TL;DR Converting Markdown to PDF on the Ubuntu desktop should be one command. Instead it took pandoc, a 295 MB LaTeX install, a Unicode error that killed the build, an LLM that recommended the wrong package manager, a 328 MB install I cancelled, and a tool called typst that apt flatly refused to install. I […]