Forking and Modernizing PointWith.me: 52% Smaller, Dramatically Faster
The story of forking an abandoned planning poker app and giving it a complete technical refresh: Vite, Tailwind CSS, 52% bundle reduction, and modern developer experience.
The story of forking an abandoned planning poker app and giving it a complete technical refresh: Vite, Tailwind CSS, 52% bundle reduction, and modern developer experience.
Color-coding is intuitive — until it isn't. For millions of color-blind users, red and green look identical. Here's why symbols aren't optional, they're essential.
AI may overuse emojis, but in developer logs they're more than decoration. Here's why ✅, ❌, ⚠️, and ℹ️ deserve a place in your terminal.
How I became a hosting provider connoisseur by migrating from localhost to Render to Fly.io to Hetzner—all because of a memory-hungry sprite sheet and basic economics.
A complete walkthrough of migrating the Image Optimizer API from Render to Fly.io, achieving 4x memory increase (512MB → 2GB) at a lower cost while solving memory limit issues with large image processing.
A few handy CLI snippets and notes to remember how to quickly create or overwrite files using the terminal.
A Python script to automatically clean up GitHub notifications by marking closed or merged issues and pull requests as done.
How I built a CLI tool to create YouTube playlists from my subscriptions, with quota-aware API calls, OAuth caching, and no frontend.
A walkthrough of using docker-compose override files to manage local image tags, avoid committing dev-specific changes, and support multiple configurations.
How to eliminate human error in blog timestamps by pulling the last modified date directly from the filesystem in Next.js.
Lessons learned while extending a Gatsby blog with images, and the pitfalls of outdated tutorials when working with fast-moving frameworks.
Learn how to set up jBPM on macOS using Docker, including prerequisites like Xcode CLI, Homebrew, and verification steps for Docker installation.