All posts
RHEL Basics #1: What Is RHEL — From Fedora to RHEL, plus AlmaLinux and Rocky Linux
Fedora is where new technology gets tried first; what survives flows into RHEL. CentOS Stream sits in the middle as a preview of the next RHEL, and AlmaLinux and Rocky Linux have settled into the role of free RHEL-compatible distros. Here's the shape of the RHEL ecosystem after CentOS, in one read.
Docker Basics #2: Writing Your First Dockerfile — FROM, RUN, COPY, CMD
Building your first image for your own app. Pick a base with FROM, prepare the environment with RUN, drop in code with COPY, and pin a startup command with CMD. One full cycle, on a tiny Python app.
Modern React + Next.js #5 Loading with Suspense and use()
Streaming that shows parts as they become ready, Suspense boundaries, loading.js, and the newly stabilized use() hook.
A History of Computer Viruses and Ransomware
Traces how malware evolved from pranks into organized crime, following a chronological path from the first self-replicating program in 1971 to the WannaCry ransomware outbreak in 2017.
Docker Basics #1: What Is a Container — VM vs. Docker Ecosystem
Why Docker — how containers differ from virtual machines, why Docker emerged, and a tour of the Docker ecosystem built around Engine, CLI, Compose, and Hub.
Modern React + Next.js #4 Data Fetching and Caching
Fetching data directly in Server Components with async/await, plus how Next.js caches and revalidates.
Modern React + Next.js #3 Server Components vs Client Components
How the two component types differ, how the 'use client' directive draws the boundary, and how to mix them effectively.
Modern React + Next.js #2 Getting Started with Next.js and the App Router
Create a Next.js project and get hands-on with the App Router — file-based routing, the layout system, and nested layouts.
Modern React + Next.js #1: Why Next.js and Server Components
The limits of client-side React, the problems Server Components solve, and the differences between CSR, SSR, and RSC.
Build a Todo App with React #5: Persistence and Wrap-up
Persist data with localStorage so it survives a refresh, then wrap up with a series retrospective and pointers to next steps.
IT Literacy for Non-Developers #3: Servers, the Cloud, and Deployment
This post explains what developers mean when they say "the server is down," "we're deploying right now," or "it's live in production" - without any code. It walks non-developers through where the backend actually runs, and what servers, the cloud, and deployment really are.
Build a Todo App with React #4: Editing
Double-click an item to enter inline edit mode, save with Enter / cancel with Escape, and meet useRef for the first time.