Writing

Guides and technical explainers.

What I learn about cloud, architecture and agents, written to be reusable. All of it free to read.

AllGuidesTechnical
26 articles
2026
Guide

Ship a SaaS in 24h with Claude Code

From empty repo to a live product in a day: the plan, the shortcuts, and what breaks when you go too fast.

Technical

The common mistakes with Claude Code

Mega-prompts, no CLAUDE.md, no tests, no commits: the traps that turn the agent into a liability.

Guide

Using GitLab CI/CD well

A clean end-to-end pipeline: stages, cache, artifacts, environments and automatic deployment.

Technical

Why Vercel for your SaaS

Zero infra, per-PR previews, global edge: what Vercel saves you — and the day you must leave it.

Guide

Hosting your SaaS on AWS

Amplify, EC2, ECS, or serverless: the four paths to host a SaaS on AWS, and how to choose.

Technical

The basic security holes in a Next.js app

Leaked secrets, unprotected API routes, IDOR, XSS: the holes I find on almost every app.

Guide

Self-hosting GitLab

Your own GitLab on a server: Docker, backups, CI runners, and the sizing to plan for.

Technical

Optimizing Core Web Vitals on Next.js

LCP, CLS, INP: the concrete levers — images, fonts, server components — for an app that flies.

Guide

Authentication in a Next.js app

Sessions vs JWT, httpOnly cookies, OAuth, and where to put the checks: an auth foundation that holds.

Technical

Rate limiting and API protection

Stop abuse without hurting real users: token bucket, Redis, and what to limit first.

Technical

Handling secrets properly

No more accidentally committed .env: where secrets live, how to inject them, how to rotate them.

Guide

Monitoring: logs, alerts, uptime

Know it broke before the customer does: structured logs, metrics, alerts that don’t cry wolf.

Guide

Backups that actually work

An untested backup isn't a backup. Retention, real restore drills, and the 3-2-1 rule.

Technical

Monorepo or multi-repo

How I structure a growing project: when a monorepo helps, when it becomes a burden.

Guide

The basics of Claude Code

Coding in the terminal with an agent: the mental model, the commands that matter, and how to keep it on the rails.

Guide

Cut an AWS bill in half

The real playbook: tagging, rightsizing, Savings Plans vs Spot — without breaking production.

Technical

The 5 lines that wreck your bill

NAT Gateway, egress, forgotten snapshots, oversized EBS, logs: the hidden costs that bleed scale-ups.

Technical

EC2, ECS or Lambda: how I choose

A decision tree based on load, budget and team size — not hype.

Guide

Make a deployment boring

From "works on my machine" to reproducible and observable: IaC, CI/CD, health checks, rollback.

Guide

Scale without blowing the budget

Load balancer, auto-scaling, read replicas, cache — sized right to absorb a spike.

Technical

Give an agent tools without it hallucinating

Ground on real data, function calling, guardrails: escape the believable fiction.

Technical

Human-in-the-loop, for real

When the agent should ask vs decide alone, and how to interrupt then resume a durable run.

Guide

Why AWS for an e-commerce

The architecture that survives a traffic spike: EC2 for the site, RDS for the database, S3 + Lambda for WebP-optimized product photos.

Technical

Trace and score an agent with Langfuse

Get the agent out of the black box: instrument every step, measure cost, and score it with an LLM-as-a-judge.

2025
Technical

From a prompt to agentic AI

My first LangGraph agent, and why a good prompt stops being enough once the task gets real.

Guide

Deploy Langfuse on AWS EC2

The full v3 stack in Docker Compose — Postgres, ClickHouse, Redis, MinIO — behind HTTPS. Copy-paste blocks.