How-to guides
Practical articles for developers — workflows, tooling, and techniques you can use today. Each guide is organized with clear headings, context for why steps matter, and copy-paste commands where it helps.
Docker Compose Tutorial: App + Database + Persistent Volumes
DevOps & infrastructure Intermediate 8 min read
Model a small dev stack in docker-compose.yml: web service, Postgres, networks, env files, and healthchecks.
Build a docker-compose.yml with app and database, persistent volumes, networks, env files, and healthchecks—links to Docker install and SQL basics.
How to Install Docker on Linux and Run Your First Container
DevOps & infrastructure Intermediate 7 min read
Install Docker Engine from official repos, add your user to the docker group, and run hello-world plus a useful database image.
Install Docker Engine on Linux, fix permission denied with the docker group, run your first container, understand images and volumes, preview Docker Compose.
Environment Variables & Secrets: .env, Twelve-Factor, and Safe Defaults
Security & secrets Intermediate 6 min read
Separate config from code, ship .env.example, wire CI secrets, and never commit API keys—plus what to do if you leak one.
Use .env and environment variables safely: twelve-factor apps, .env.example, CI secrets, rotation, and pairing with Git hygiene when credentials leak.
REST API Tutorial: HTTP Methods, Status Codes, Headers, and curl
APIs & HTTP Intermediate 7 min read
Call REST APIs with confidence: verbs, common status codes, auth headers, and quick tests from the terminal.
Learn REST: HTTP methods, status codes, headers, JSON bodies, Bearer auth, pagination, and how to test endpoints with curl from your terminal.
SSH Keys for GitHub and GitLab: Generate, Add, and Fix Permission Denied
Security & secrets Intermediate 6 min read
Create an ed25519 key, load it in ssh-agent, add the public key to your host, and debug common auth failures.
Step-by-step SSH keys for Git: ed25519, ssh-agent, GitHub/GitLab settings, known_hosts, and debugging Permission denied when pushing or pulling.
How to Install Node.js and npm: nvm, fnm, and Fix Permission Errors
Languages & runtimes Beginner 6 min read
Use an LTS Node version, switch runtimes with nvm or fnm, and stop EACCES errors when installing global packages.
Install Node.js and npm, use nvm or fnm for version switching, understand package.json and lockfiles, and resolve npm EACCES and permission issues.
SQL Basics for Developers: SELECT, JOINs, Aggregates, and Indexes
Databases & SQL Beginner 7 min read
Read and shape relational data with core SQL—filters, joins, GROUP BY, and why indexes matter for performance.
Learn SQL essentials: SELECT/WHERE, INNER vs LEFT JOIN, aggregates, basic indexes, and safe parameterized queries. Connects to databases in Docker Compose stacks.
Git Tutorial for Beginners: Clone, Commit, Branch, Merge, and Push
Getting started Beginner 7 min read
Learn the everyday Git workflow: track changes, branch safely, sync with a remote, and pair with SSH authentication.
Learn Git basics: clone, status, add, commit, branches, merge, pull vs fetch, and push. Includes .gitignore tips and links to SSH setup for GitHub and GitLab.
How to Install Python and Use venv on Windows, macOS, and Linux
Languages & runtimes Beginner 6 min read
Create isolated environments with python -m venv, activate them on each OS, and manage dependencies with pip.
Step-by-step: install Python 3, create and activate a venv on Windows, macOS, and Linux, use pip, and freeze dependencies. Troubleshoot PATH and permission issues.