Writing by Ishan Karunaratne

Field notes from shipping real systems: more than 700 articles at TechEarl, every one written from work that reached production.

Published at
TechEarl
Articles
700+
Updated

I write TechEarl, a single-author developer publication with more than 700 articles on Linux, DevOps, databases, application security, networking, WordPress, and AI engineering.

Every article starts as something I had to make work on a real server, for a real site, with real traffic. The command was run, the config was deployed, the fix held. Each piece carries its publish date and gets revised when the tool changes, so what you read is what currently works, not what worked in 2019.

What I write about

Linux

Servers I actually run: systemd, SSH, storage, networking, and the commands that fix things at 3am.

DevOps

CI/CD, Docker, deployment, monitoring, and the boring reliability work that keeps sites up.

Security

Application and server hardening, malware cleanup, and what real attacks on real sites look like.

Databases

MySQL, PostgreSQL, Elasticsearch, and Redis: schema, performance, backups, and recovery.

WordPress

Running WordPress at scale, plugin and theme internals, WP-CLI, and cleaning up after compromises.

Networking

DNS, Tor, VPNs, proxies, and the diagnostics I use when the network is the problem.

AI engineering

LLM applications, batch APIs, cost control, agents, and evaluation, from building them for production.

JavaScript

Node, browser scripting, and the tooling around modern front ends.

PHP

Modern PHP, Composer, and the language underneath most of the web I maintain.

CSS

Layout, typography, and the parts of CSS that changed while nobody was looking.

Regex

Patterns that work across engines, with the edge cases spelled out.

Cheat sheets

One-page references for yt-dlp, torrc, regex, and other tools I reach for constantly.

Most read in the last 90 days

Ranked by readers, from TechEarl's analytics, as of 13 September 2026. Tor, yt-dlp, and the cheat sheets carry the site; the pattern is that people arrive with a specific job and want the exact command.

  1. Tor Bridges (2026): obfs4, Snowflake, meek Setup Guide How to reach Tor when the direct route is blocked, with each bridge type set up and tested.
  2. Tor Country Codes List: Set Exit Nodes by Country (torrc) The full country code list plus the torrc directives to pin or exclude exit nodes.
  3. yt-dlp Cheat Sheet: Commands for Video, Audio, Subtitles (2026) Every yt-dlp command I use, grouped by job, with the flags that changed this year.
  4. Download a YouTube Playlist or Entire Channel with yt-dlp Playlists, channels, archives, and rate limits, with the exact commands.
  5. torrc Cheat Sheet (2026): Every Tor Config Directive The Tor configuration file, directive by directive, with the defaults and the gotchas.
  6. Export and Import PuTTY Sessions and Settings (Registry Backup Guide, 2026) Moving PuTTY sessions between Windows machines through the registry, safely.
  7. Regex Cheat Sheet: Syntax, Examples and Engine Support Syntax across engines, with the differences between PCRE, JavaScript, and Python called out.
  8. WordPress Fake Cloudflare Verification (ClickFix): Detection and Removal A live malware campaign on WordPress sites, how to spot it, and how to remove it.

Latest writing

Refreshed automatically from TechEarl each morning, so this list only changes when something new has actually gone out.

How these get written

Where does the material come from?

From the systems on the work page and from the platforms I run as CTO. If a command or a config appears in an article, I ran it on a box I was responsible for before I wrote it down.

Why the dates matter

Tools change. yt-dlp flags, Tor bridge types, and WordPress internals all moved in the last year. Every article shows when it was published and when it was last revised, and the year in a title means the piece was checked against that year's release.

What happens when something is wrong?

It gets fixed in the open. Corrections are made in the article itself, and readers who catch a mistake get credit for it. The fastest way to report one is the contact page.

Where should I start?

The cheat sheets if you have a job to do right now, the security section if you run WordPress in production, and the AI engineering pieces if you are paying an LLM bill and would like it smaller.