Posts tagged: devops

How I Made My Blog PDPA SG Compliant — Step by Step Integration Journal

A step-by-step builder's journal of integrating pdpa-sg-clj into a static blog publishing pipeline — submodule setup, wrapper scripting, pipeline wiring, testing, and the decisions behind each step.

The CI/CD Migration That Killed My Blog for 24 Hours — A DevSecOps Teaching Case

A DevSecOps walkthrough of migrating a 185-post static blog from GitLab Pages + self-hosted runner to Cloudflare Pages direct deploy — the mental model, the failure that broke production, and the SDLC principles behind every decision.

The Complete CI/CD Architecture of a Solo Developer's Blog

A deep-dive into the CI/CD pipeline that ships a 180+ post static blog from a Chromebook to production — with diagrams, cost analysis, and the architecture decisions behind every stage.

Should You Add Kubernetes to Your Blog? A Solo Developer's Decision Framework

A cost-benefit analysis of adding Kubernetes to a static blog — with a decision framework, architecture diagrams, and the honest answer for solo developers.

Why I Ditched My Self-Hosted Runner for GitLab Shared Runners — and Made It Work on ARM Chromebooks

I moved my static site's GitLab Pages pipeline from a self-hosted shell runner to any shared runner, including ARM64 Chromebooks, by installing Babashka, pandoc, and a diagram renderer inside the CI job.

How a Forgotten TXT Record Broke My Blog for Days

After migrating DNS from Spaceship to Cloudflare, a single missing TXT record sent my GitLab Pages blog into a 401 auth loop for days.

I Made Two Repos Public and Then Panic-Scanned Them for Personal Data Leaks

Before flipping my capstone project repos from private to public, I ran a full PDPA compliance audit using a Singapore-specific PII scanner.

Mathematical Determinism: Overcoming the Lisp Parenthesis Odyssey in Production

When a standard container build compiles successfully but triggers a production HTTP 503 Upstream Connection Failure, trial-and-error debugging fails. Here is how we isolated temporal telemetry and used string-aware static analysis to achieve absolute AST balance.

The 4-Stage Chain That Ships This Site

One commit, four stages, no manual deploys — the local → local runner → GitLab Pages → nurazhar.com pipeline that publishes every post on this blog.

How I Stopped Burning GitLab's 400-Minute Quota — A Self-Hosted Runner on My Own Box

GitLab's free tier is 400 CI minutes a month — fine for occasional commits, hostile if you post daily. I swapped the shared runner for a self-hosted one on my own machine. The quota became irrelevant. This post is the first publish through the new pipeline.

Token Efficiency Is the New DevOps — How Companies Are Cutting LLM Costs by 50-70%

Real case studies from Coinbase, Preply, and fintech companies showing how model routing, semantic caching, and prompt pruning cut LLM bills by 50-73%. What works, what doesn't, and why future agents need to care.

Leaving GitHub for GitLab — A Post-Mortem on Platform Migration

Why I moved my entire open-source presence from GitHub to GitLab — the trigger, the process, and what I kept public.

Scaling to 100+ Concurrency: Mastering API Rate-Limits with Adaptive Flow Control

Scaling parallel worker pools to 100+ concurrent workers can collapse third-party APIs. Here is how we implemented a self-regulating, adaptive flow-control mechanism using exponential backoff and randomized jitter to maximize queue velocity.

Why GitLab Beats GitHub for Solo Developers

An in‑depth guide for a solo developer showing how GitLab’s all‑in‑one platform collapses entropy to zero.

Debugging GitLab Pages: Hardcoded Paths, HTTPS Domains, and Self-Healing CI/CD

Two issues broke my CI/CD pipeline and HTTPS domain on nurazhar.com: a hardcoded local resume path in the static site generator, and an incomplete GitLab Pages SSL certificate for the custom domain. Here's the forensic breakdown.

Security Audit Report — June 2026

Comprehensive security and leakage scan across all 18 GitHub repositories using pdpa-sg-clj, OWASP tools, trufflehog, detect-secrets, npm audit, safety, and pip-audit.

How I Accidentally Hid My Entire GitHub — and What It Taught Me About Visibility, Forks, and Irreversible Decisions

A detailed post-mortem of the 24-hour window where all my public repos went private — the bad advice I followed, the irreversible GitHub mechanics I didn't understand, and the Mermaid diagrams that explain what actually happened.

Sandbox vs. Keyring: Understanding Credential Precedence in Developer Security

How scoped environment variables override local keyrings in sandboxed environments, why this design protects developer secrets, and how to navigate credentials securely.

Resilient PDF Generation: Intercepting Playwright Failures with Headless Chrome Fallbacks

How to build highly resilient document generation pipelines that automatically fall back to system-installed Chrome shells when network restrictions or low-priority threads throttle runtime dependency installations.

Local vs. Cloud Inference: Keeping Your Laptop Cool and Quiet Under Load

How to diagnose thermal profiles, understand the difference between local vs. cloud AI inference on hardware, and configure Linux power profiles to reduce laptop fan noise during heavy tasks.

Designing a Zero-Configuration, Zero-Admin Developer Sandbox for Career-Switchers

How to build a zero-configuration, zero-administrator local development environment running Django and React on Windows 11 to help adult tech-learners bypass environment installation friction.

Engineering Spec: Decoupled Zero-Cost Blog Analytics

The complete technical specification, schema design, and serverless code for our isolated blog analytics tracking engine.

Collapsing Auth Entropy to Zero: Debugging GitHub Credential Conflicts on Linux

A visual walkthrough of debugging conflicting GitHub credentials — OAuth tokens, classic PATs, SSH keys, and rogue environment variables — and collapsing them into a single source of truth.

Hardening the Arch/CachyOS Build Pipeline: Native AUR Auditing with Paru & Babashka

A visual reference guide to native PreBuild hooks. We configure paru to automatically run our Clojure-based aur-audit scanner before compiling community packages.

Demystifying Arch Linux Packaging: PKGBUILDs, the AUR, and CachyOS

A deep dive into how packages are built, shared, and optimized on Arch Linux and CachyOS. Learn the differences between PKGBUILDs, the AUR, and custom repositories.