Blog

Thoughts on testing, automation, and software quality.

Deployment Debugging: How Code Duplication Caused a Production Bug (Part 3 of 3)

Deployed automatic AI tagging expecting smooth rollout. Reality: 5 cascading infrastructure bugs, 3 hours of debugging. The final bug? Code duplication caused storage backend mismatch.

deployment debugging dry-principle production-bugs refactoring

AI Tagging Evolution: Manual First, Automatic Second (Part 2 of 3)

We started with a manual /ai-tag endpoint before building automatic tagging with Celery. Why? Validate the hard part (AI integration) before adding distributed systems complexity.

ai manual

Building an AI Provider System: The Strategy Pattern for Vision APIs (Part 1 of 3)

Built a swappable AI provider system for automatic image tagging using the Strategy pattern. Switch between OpenAI Vision, Google Vision, or mock providers with a single environment variable - zero code changes.

ai strategy-pattern architecture openai vision-api

AI for Social Impact: Ideas Worth Building

From potholes to plant disease — real-world AI ideas for social impact that go beyond the hype.

AI Social Impact Edge AI Civic Tech Agriculture

Integrating Supabase Auth with FastAPI: A Production Story

What went wrong (and right) when we added Supabase authentication to our image hosting service. Docker env vars, SDK breaking changes, and a sync-on-auth pattern that made migration painless.

FastAPI Supabase Authentication Python Docker

Test Architecture for a Production Image Hosting Service

How Chitram structures 4,000+ lines of tests across unit, API, integration, and browser layers — with a TestDependencies pattern that solved our async nightmare.

Testing Python FastAPI Architecture CI/CD

Zero-Token Browser Testing with Bun and Playwright

How I cut browser testing costs by 99% using Daniel Miessler's kai-browser-skill pattern — code-first automation that runs infinitely without burning tokens.

Testing Playwright Bun AI Automation

Build Your Second Brain with Free Local AI (Obsidian + Ollama Guide)

Run a private AI assistant inside your note-taking app — no API costs, no data leaving your Mac.

AI Ollama Obsidian Local LLM Productivity

Building AI-Powered Testing Solutions with AWS Bedrock

Exploring how large language models can transform accessibility testing and defect identification in modern web applications.

AI AWS Bedrock Testing Automation Accessibility