Toolshed

A growing library of browser tools and deep technical guides for IT professionals.

← Home

All Guides

22 guides, newest first.

CIDR notation and subnetting explained, with the math worked out

/24 shows up constantly in networking — router configs, firewall rules, cloud

3 min read

What's actually inside a JWT, and why decoding one isn't the same as verifying it

A JWT (JSON Web Token, defined in [RFC 7519](https://www.rfc-editor.org/rfc/rfc7519))

4 min read

Windows Security Event IDs worth recognizing on sight

Windows generates a lot of security events, and most of them don't matter for

4 min read

Alpaca vs Kraken vs Coinbase: API access and paper/sandbox trading compared for EU users

Picking a broker or exchange for an automated trading setup in the EU comes down to

2 min read

Backtesting vs paper trading vs live trading: what each stage actually proves

These three stages get treated as interchangeable validation steps — "I tested it" —

4 min read

Why beating buy-and-hold is a much higher bar than it sounds

"My strategy made money" sounds like success. It isn't, by itself — the real question

2 min read

What a context window is, and why bigger isn't always better for accuracy

A model's context window is the maximum amount of text (measured in tokens, not words

3 min read

Cron jobs that silently don't run in WSL2: common causes and how to check

A cron job that "should" work but never actually runs, with no error anywhere, is one

2 min read

Diagnosing race conditions in shell scripts run by cron vs interactively

A script works perfectly every time you run it by hand, then fails intermittently —

3 min read

Discord webhooks vs email vs Slack for free automated alerting: setup effort compared

A script needs to tell someone when something happens — a job failed, a threshold

2 min read

Diagnosing "connection refused" between Docker Compose services on a shared network

Two containers in the same docker-compose.yml, one can't reach the other, and the

3 min read

`depends_on` doesn't wait for your service to be ready — here's the fix

A common Docker Compose bug: service B lists dependson: [A], but B still crashes

2 min read

What "effort" and thinking budgets actually control when calling an LLM API

Two knobs get confused constantly when calling a reasoning-capable model API: how much

3 min read

GitHub Actions vs Cloudflare Pages built-in builds: free tier CI minutes compared

If you're deploying a static site and deciding whether to let Cloudflare Pages build

2 min read

Understanding Linux file permissions and umask, for people who always just chmod 777

chmod 777 makes the permission error go away. It also makes the file writable

3 min read

Python venv vs virtualenv vs pipx: when to use which in 2026

Three tools, overlapping names, genuinely different jobs. Picking the wrong one is

3 min read

Reading systemd unit status and logs with journalctl for a beginner

Something isn't running, or a cron job silently never fires, and the fix always starts

2 min read

What a Sharpe ratio is, and why a high return with a low Sharpe ratio is a red flag

A trading strategy that returned 50% sounds better than one that returned 20%. It

3 min read

Free static hosting for a monetized site: GitHub Pages vs Cloudflare Pages vs Vercel

If you're hosting a static site that'll eventually carry ads or affiliate links, the

2 min read

Structured outputs vs asking nicely for JSON: why one is reliable and the other isn't

"Respond only in valid JSON matching this schema" in a prompt works most of the time.

2 min read

What prompt caching actually does and when it saves money

"Prompt caching" sounds like it should mean the API remembers your conversation so

3 min read

Fix "externally-managed-environment" and missing venv on Ubuntu 26.04 / WSL2

If you're on a fresh Ubuntu 24.04+/26.04 system (including WSL2) and run into either

2 min read