Skip to content
View phpboyscout's full-sized avatar

Highlights

  • Pro

Organizations

@zucchi

Block or report phpboyscout

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
phpboyscout/README.md

Always leave the codebase better than you found it. Go and Rust tooling, and the infrastructure that proves a release came from you.

I'm Matt Cockayne. I build Go and Rust tooling, and the infrastructure that makes a release something you can prove came from you. Twenty years of it, most of it in the parts other people build on.

The work lives on GitLab: gitlab.com/phpboyscout. What is here is a read-only mirror of the projects worth browsing, plus an archive of a decade of PHP that is kept for history rather than for use.

What I'd look at first

sigillum — sign and verify release artefacts from the command line, whatever your project is written in. The private key never leaves your KMS, HSM or PEM file.
afmpeg — FFmpeg in pure Go. No CGO, no install on the box, no temp files: a WebAssembly build over an in-memory filesystem.
go-tool-base — the framework the other three are extracted from. Config, errors, transport, observability and release plumbing that already agree with each other.
ffmpeg-wasi — the engine underneath it, usable on its own by anything that can host a WASI runtime.

About the name

A friend in the PHP community suggested I give a conference talk about applying the Boy Scout Rule to code. The handle stuck, and then so did everything else. The PHP is where the name came from, not where it stopped.

I met the rule first as a Cub, went back to it as an adult and spent about a decade as a Scout Leader. The project marks above are merit badges, which is not an accident.

Elsewhere

  • phpboyscout.uk — I write about what goes wrong in the middle of a release: dependencies that stop moving, keys that live in the wrong place, and the parts of engineering that never show up in a diff.
  • Guides — the same writing arranged by subject rather than by date.
  • Discord — questions about any of the projects.

Pinned Loading

  1. afmpeg afmpeg Public

    Pure-Go FFmpeg binding running on a virtual filesystem. No CGO, no host install, no temp files. Mirror of gitlab.com/phpboyscout/afmpeg

    Go

  2. ffmpeg-wasi ffmpeg-wasi Public

    Current FFmpeg as a sandboxed WebAssembly module for the server, not the browser. Mirror of gitlab.com/phpboyscout/ffmpeg-wasi

    C

  3. go-tool-base go-tool-base Public

    The application lifecycle framework for Go CLIs and services. Mirror of gitlab.com/phpboyscout/go-tool-base

    Go

  4. sigillum sigillum Public

    Standalone artefact signing CLI: OpenPGP and minisign over release artefacts, with the private key never leaving KMS, HSM or a PEM file. Mirror of gitlab.com/phpboyscout/sigillum

    Go