All posts

TypeScript Advanced #7: Practical patterns and anti-patterns
9 min read

TypeScript Advanced #7: Practical patterns and anti-patterns

Criteria that separate good types from over-typing — any/unknown/never, as const and satisfies, plus the anti-patterns people fall into and how to fix them.

Angular in Practice #1: Building the Dashboard Skeleton
10 min read

Angular in Practice #1: Building the Dashboard Skeleton

The first post in the practice series. We create the project with ng new, layer Angular Material on top, lay out the main layout with mat-toolbar and mat-sidenav, and stand up the lazy-loading routes — the skeleton.

AWS Certified Cloud Practitioner (CLF-C02) #3 Domain 1-2 Cloud Design — The Six Well-Architected Pillars
9 min read

AWS Certified Cloud Practitioner (CLF-C02) #3 Domain 1-2 Cloud Design — The Six Well-Architected Pillars

The second half of CLF-C02 Domain 1. We unpack the six pillars of the AWS Well-Architected Framework — Operational Excellence, Security, Reliability, Performance Efficiency, Cost Optimization, and Sustainability — and organize the design principles and exam-scenario mappings for each. We also fix the common mistake of memorizing only five pillars and forgetting Sustainability, which was added in December 2021. From #4 onward we head into Domain 2 Security, the 30% giant.

AWS in Practice #2: RDS Integration and Migration Operations
10 min read

AWS in Practice #2: RDS Integration and Migration Operations

RDS Postgres Multi-AZ inside the VPC, Security Group design, password injection through Secrets Manager, the operational side of Alembic / Django migrations, and blue/green-compatible migration patterns.

Django DRF #1: Getting Started — Serializer, ViewSet, Router
10 min read

Django DRF #1: Getting Started — Serializer, ViewSet, Router

The standard for laying a REST API on top of Django — DRF Serializer/ViewSet/Router fundamentals in one place.

K8s Advanced #5: Observability — Prometheus / Grafana / Loki / OpenTelemetry
10 min read

K8s Advanced #5: Observability — Prometheus / Grafana / Loki / OpenTelemetry

Operational cluster observability is composed of three axes — metrics, logs, and traces. The K8s standard stack for each axis is nearly settled. Metrics with Prometheus + kube-state-metrics + node-exporter, logs with Loki (or EFK), traces with OpenTelemetry, visualization with Grafana, alerting with Alertmanager. This post organizes the three-axis model, the standard components for each axis, and operational principles like cardinality, retention period, and alert design — all in one cycle.

Modern Python in Practice #3: Connecting a DB — SQLAlchemy 2.x + Alembic
8 min read

Modern Python in Practice #3: Connecting a DB — SQLAlchemy 2.x + Alembic

SQLAlchemy 2.x's new style — Mapped/mapped_column, async sessions, integration with FastAPI's dependency injection, and Alembic migrations.

RHEL in Practice #1: Running a Web Server — nginx, systemd, SELinux Policy
5 min read

RHEL in Practice #1: Running a Web Server — nginx, systemd, SELinux Policy

The first post in the RHEL in Practice track. It brings together the systemd, SELinux, and firewalld knowledge from the basics, intermediate, and advanced series, and walks one full cycle of standing up an nginx web server properly on RHEL. Package install and service registration, SELinux context and port labels, opening firewalld, plus the spots where non-standard ports and document roots most often trip people up — all covered from a real operations angle.

Testing #3: React Testing Library — See Like a User
10 min read

Testing #3: React Testing Library — See Like a User

RTL's philosophy and your first component test. Where render and screen fit, the priority order of queries like getByRole/getByLabelText/getByText, why you don't reach for querySelector, and how jest-dom matchers help.

TypeScript Advanced #6: Modules and .d.ts
7 min read

TypeScript Advanced #6: Modules and .d.ts

How to handle and extend the types of external libraries — declaration files (.d.ts), the declare keyword, module augmentation, and adding global types.

Angular Advanced #7 Performance tuning — Virtual Scroll, Image, Profiler
12 min read

Angular Advanced #7 Performance tuning — Virtual Scroll, Image, Profiler

Angular app performance, organized by three layers — build, runtime change detection, and resources. Virtual Scroll, NgOptimizedImage, Angular DevTools Profiler, and the defer block — the tools that actually pay off in large apps, all in one place.

AWS Certified Cloud Practitioner (CLF-C02) #2 Domain 1-1 Cloud Concepts — Value, Economics, and the Cloud Adoption Framework
9 min read

AWS Certified Cloud Practitioner (CLF-C02) #2 Domain 1-1 Cloud Concepts — Value, Economics, and the Cloud Adoption Framework

The first half of CLF-C02 Domain 1. The six value propositions of the cloud that show up in the exam, the cost-structure shift from CapEx to OpEx, the six perspectives of the AWS Cloud Adoption Framework, and how the global infrastructure (regions, AZs, edge) gets reshaped into exam questions. Series #3 continues with the second half of the same domain — the six Well-Architected pillars.