Skip to content

Runtimes

Language runtimes, toolchains and execution environments.

These are for writing and running code, and some are used to install tools later on.

I’m still trying out mise, which may eventually replace some or all of these individual installers.

via the official installer

Most of my current code is written in Go.

via uv

Python is for scripts, experiments, and access to its huge ecosystem of libraries for data-related tasks.

uv is the fast, modern way to manage it, without the friction of traditional tooling.

via rustup

Lots of the new tools I’m using were made with Rust, and having the toolchain installed makes it easier to try out new ones distributed via Cargo.

via Volta

I use Node.js primarily for frontend tooling and Javascript-based CLIs.

I previously used nvm but found its shell-based loading awkard when using Docker and Ansible.

via mise

PHP is in a good place today, and I’ve spent a significant part of my career working with it, so I keep it installed.

Installing it with mise allows me to script and version the runtime consistently, but that makes building it way more complex than if I’d use Homebrew.

via the installer

Bun’s installed to keep an eye on an alternative JS/TS runtime.