Version managers
Different projects need different language runtime versions. Version managers let one machine switch between many versions safely. This article covers the leading tools for Node, Python, and the JVM, plus multi-language…
pnpm, uv, Gradle, Git, regex
Different projects need different language runtime versions. Version managers let one machine switch between many versions safely. This article covers the leading tools for Node, Python, and the JVM, plus multi-language…
When a repo needs to carry another repo's code, or when large binary files have to live inside a repo, the options that come to mind are Submodule, Subtree, Sparse Checkout, and Git LFS. Each has different strengths and…
Whenever someone asks "pull just the emails out of this text", the first tool that comes to mind is the regular expression (regex). Short strings, big expressive power — and the same reason makes it look alien when firs…
Python's packaging and dependency management has seen many tools rise and fall over time. This article walks through them in chronological order and notes what each tool solved, and where it fell short — based on facts.
Linters and formatters look similar but play different roles. This article covers the definition of each, the leading tools, and the trade-offs.
The editor is where most of the typing and reading actually happens. This article covers the leading editors, the standard protocols (LSP, DAP), and EditorConfig.
Gradle is one of the most widely used build tools in the JVM ecosystem. This article covers Gradle's origins, how it works, and how it differs from Maven.
Learning Git commands and learning how a team operates Git are two different things. This article covers branching strategies, commit message conventions, version notation, PR review, and hook tools.
.env files and environment variables show up early for newcomers. This article covers their origins, behavior, and the tools used for secrets management — based on facts.
uv is the most recent entrant among Python package and project managers. This article covers uv's origins, role, and relationship to existing tools — based on facts.
A monorepo keeps the source for many projects in a single version-controlled repository. This article covers what a monorepo is, its history, how far a lightweight setup like pnpm workspaces can take us, and what full-s…
pnpm is one of the package managers in the Node.js ecosystem. This article covers pnpm's origins, how it works, and how it differs from other managers — based on facts.