All posts
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
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)
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
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
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
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
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?
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
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
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
Why Django was built and where it fits, with a comparison to FastAPI that nails down the value of the full-stack monolith.
Docker Basics #6: .dockerignore and the Build Context — Using the Cache Well
The most common reason builds get slow or images get bloated is mishandling the build context. What it is, how to trim it with .dockerignore, and how to find where the layer cache breaks so you can order your instructions well. Wrap-up for Docker Basics.