- HTML 100%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
The SquareCows rack unit used a 44px first grid column while the other four use 7px, indenting its labels ~37px further right than every other row. All five units now share one grid with explicit column and row placement, so the labels line up down the whole rack. Same fix in the banner: unit 5's text sat at x=778 against x=714 for the rest. Replaces the hand-drawn square cow with the actual brand mark from sqcows-logos (squarecows-logo.svg, two paths, #f90 and #232f3e). It sits on a cream faceplate on the chassis bezel the way rack hardware carries a vendor badge, which also keeps the navy wordmark legible against the dark chassis without recolouring the asset. Badge and unit both link to squarecows.com, and the unit chip now uses the real brand orange #FF9900. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> |
||
| public | ||
| .pages | ||
| README.md | ||
I build things and give them away
I'm Richard Harvey — call me Ric. My open source work spans more than 60 public repositories, has gathered close to 2,000 stars and 900 forks, and my container images have been pulled from Docker Hub over 50 million times — the bulk of them from a single nginx-php-fpm image I published years ago and still maintain.
I'm a career infrastructure engineer and Developer Advocate with deep AWS roots. I've worked with the APIs since the SOAP days, built large-scale systems on Forgejo, GitLab, Jenkins, Circle CI and Travis, and led geographically distributed teams across the UK, Germany and France. Most recently I built and led the developer relations function behind an 11,000+ member internal engineering community at a major UK bank, delivering demos, workshops and tutorials — and pushing to release as much of it publicly as I could.
Today I run SquareCows Ltd, an AI and automation consultancy specialising in MCP servers, agent skills and self-hosted AI tooling. I write mostly Python and increasingly Rust, and I'm a Terraform convert who can still speak CloudFormation when the job demands it.
I care about open standards, digital sovereignty and the fediverse — which is why everything above the fold on this page runs on hardware in my own house.
What I'm building
| Project | What it does |
|---|---|
| OmniMem | Self-hosted semantic memory server for AI agents, built on MCP. Stops every session starting from zero. My flagship. |
| nginx-php-fpm | The container that quietly went everywhere — 50M+ pulls and counting. |
| forgejo-mcp | Drive a Forgejo instance from an AI agent — repos, issues, PRs, releases, admin. |
| mastodon-mcp | The fediverse as a first-class tool for agents. |
| legislation-gov-uk-mcp | UK legislation, queryable by an agent. Public data should be easy to reach. |
| ai-skills | Agent skills I use daily, packaged so you can too. |
| bovine-pages-server | The Pages server hosting this profile's sibling site. Yes, it's cows all the way down. |
Teaching material, if that's what you came for
- terraform-tofu-labs — hands-on labs for Terraform and OpenTofu on AWS
- git-guide — Git from first principles
- mastodon-setup-guide — run your own instance
The book
I wrote The Missing Piece — the culture that drives innovation: achieving DevSecOps through cultural change. It argues that DevSecOps doesn't arrive by executive decree; it grows from the bottom up, in stand-ups and retros and the small everyday moments of trust between people who want to build good things.
That matters more now, not less. AI has made code cheap and abundant. What hasn't sped up is judgement — the instinct to build the right thing rather than a plausible thing, and the gut feeling that something isn't quite right. Those stay stubbornly human, and they only surface in cultures where humans are actually listened to.
Everything in it was learnt the hard way, usually by getting it wrong first.
Away from the keyboard
Dad of two boys. Guitarist and unrepentant live music fan. Incurable tinkerer — 3D-printed builds, KiCad boards, and a run of energy storage and generation projects driven by a stubborn belief that technology should tread lightly on the planet.
“Anyone can have a great idea. You just need to listen.”
The biggest blocker in any industry is culture — so let's fix that one first.