Learn
These articles are static pages built from Markdown in the repository. They explain concepts and point to tools that run locally in your browser whenever the task allows. Browse by topic or search the full set.
Topics
- Published: 2026-09-05
Estimating cloud spend from assumptions
How to turn vCPU, RAM, storage, and region into a rough multi-cloud bill estimate — and why assumption-based calculators are for comparison, not purchase orders.
Read article → - Published: 2026-09-05
Parsing User-Agent strings for browser, OS, and bot signals
How HTTP User-Agent strings encode browser, OS, device, engine, and bot hints—why order of tokens matters, what “frozen” UAs change, and how to break a log line into fields without uploading it.
Read article → - Published: 2026-09-05
Normalizing MAC addresses and reading OUI vendor assignments
How EUI-48 and EUI-64 MAC addresses are structured, why colon/hyphen/Cisco-dot formats differ, what U/L and I/G bits mean, and how IEEE OUI vendor lookups work offline.
Read article → - Published: 2026-09-05
Summarizing firewall CIDR lists with route aggregation
How overlapping and adjacent CIDR blocks collapse into a minimal route list, why host bits must be zero, and how to clean firewall and cloud security-group exports offline.
Read article → - Published: 2026-09-05
Bulk-checking IPs against firewall and ACL CIDR allow lists
How CIDR membership works for allow and deny lists, why host bits must be zero, and how to bulk-test IPv4 or IPv6 addresses against firewall rules offline.
Read article → - Published: 2026-09-05
Common TCP/UDP ports and when to open them
What TCP and UDP port numbers mean, how well-known vs ephemeral ranges work, and when to allow common services in firewalls without over-exposing your network.
Read article → - Published: 2026-09-05
SemVer 2.0.0: major vs minor vs patch, prereleases, and npm bumps
How Semantic Versioning 2.0.0 defines MAJOR.MINOR.PATCH, prerelease and build metadata, precedence rules, and npm-style major/minor/patch bumps—including how matching prereleases graduate.
Read article → - Published: 2026-09-05
Writing a good .gitignore: presets, negation, and what not to ignore
How .gitignore patterns work, when to use stack presets, how !negation re-includes files, and what you should still track so clones stay useful.
Read article → - Published: 2026-09-05
From docker run to Compose: flags that map cleanly (and those that don’t)
Which docker run flags become Compose YAML fields, which need manual edits (--rm, --mount, --gpus, health checks), and how to convert locally without uploading your command.
Read article → - Published: 2026-09-05
Reading nginx.conf: blocks, braces, and a safe local pretty-print workflow
How nginx config blocks and braces nest, what pretty-print vs compact change, and a browser-local workflow to reindent snippets without uploading production configs.
Read article → - Published: 2026-07-20
Subnet math and CIDR explained
How network addresses, prefix lengths, and netmasks relate — IPv4 CIDR basics for firewall rules and cloud VPC design.
Read article → - Published: 2026-07-20
Converting curl to JavaScript fetch
When to translate curl commands to fetch(), which flags map cleanly, and why parsing locally beats pasting API tokens into online converters.
Read article →