All posts

What Do Developers Actually Do — A Map of Development Roles
8 min read

What Do Developers Actually Do — A Map of Development Roles

We call them all "developers," but front-end, back-end, DevOps, data, and AI engineers do completely different work. This post maps out what each role actually does, for people weighing a career and for people who work alongside developers.

Angular Basics #2: Components and Template Syntax
8 min read

Angular Basics #2: Components and Template Syntax

Create your first Angular project with Angular CLI, then walk through the structure of a component, interpolation, and how to assemble components.

AWS Basics #3: Cost Management — Billing Alerts, Cost Explorer, Free Tier
10 min read

AWS Basics #3: Cost Management — Billing Alerts, Cost Explorer, Free Tier

The limits of the Free Tier, setting up AWS Budgets / billing alerts, analyzing the bill with Cost Explorer, and a tag strategy that holds up in production — the guardrail that prevents first-bill shock.

Build a Blog with Next.js #4: Comments (Server Actions)
8 min read

Build a Blog with Next.js #4: Comments (Server Actions)

Let users comment on each post. Handle form submission and validation with Server Actions, polish UX with useActionState, and apply the patterns to a real build.

Django Basics #2: Project Setup — uv + django-admin startproject
6 min read

Django Basics #2: Project Setup — uv + django-admin startproject

Create a Django 5 project with uv, lay down the first structure with startproject/startapp, and reach runserver in one breath.

Docker Intermediate #1: Multi-stage Builds and Image Slimming
8 min read

Docker Intermediate #1: Multi-stage Builds and Image Slimming

Splitting build dependencies from runtime dependencies inside a single Dockerfile. Multi-stage patterns for Go, Node, and Python, all the way to distroless and scratch — the workflow that takes images from gigabytes down to tens of megabytes.

Modern Python Basics #4: Collections and comprehensions
4 min read

Modern Python Basics #4: Collections and comprehensions

The role of list/tuple/dict/set, plus comprehensions and generator expressions for building new collections in a single line.

RHEL Basics #5: Users / Groups / Permissions — UID/GID, sudo, ACL
12 min read

RHEL Basics #5: Users / Groups / Permissions — UID/GID, sudo, ACL

The shape of /etc/passwd and /etc/shadow, the useradd / usermod / groupadd family, what rwx means and chmod's two notations, ACL (getfacl / setfacl) when finer-grained control is needed, and least-privilege sudo — all in one post.

Angular Basics #1: What Is Angular?
6 min read

Angular Basics #1: What Is Angular?

For Angular beginners, this post walks through what Angular is, why it was built, and the kind of problems it solves.

AWS Basics #2: IAM — Users, Groups, Roles, Policies
11 min read

AWS Basics #2: IAM — Users, Groups, Roles, Policies

The four elements of IAM — Users, Groups, Roles, Policies. JSON policy syntax, the essence of AssumeRole, and permission design patterns that hold up in production.

Build a Blog with Next.js #3: Tags and Search
4 min read

Build a Blog with Next.js #3: Tags and Search

Add a per-tag post list page and a search feature driven by URL query parameters. Two dynamic-route patterns (generateStaticParams vs searchParams) appear together.

Django Basics #1: What is Django — Why Django and Where It Fits Next to FastAPI
7 min read

Django Basics #1: What is Django — Why Django and Where It Fits Next to FastAPI

Why Django was built and where it fits, with a comparison to FastAPI that nails down the value of the full-stack monolith.