When Doing Too Much Is a Symptom, Not a Solution
A software engineer reflects on the human challenges of tech work, including burnout, team attrition, and the pressure to refactor legacy systems.
A software engineer reflects on the human challenges of tech work, including burnout, team attrition, and the pressure to refactor legacy systems.
A developer's journey from skepticism to embracing AI coding assistants like Claude, discovering they act as collaborative pair programmers rather than replacements.
Argues that AI won't replace software engineers due to the inherent complexity of development and stakeholder management.
Analysis of Safari's new features at WWDC '25, highlighting its ongoing catch-up with other browsers and the impact of Apple's iOS browser policies.
Introduces fastmigrate, a simple Python tool for managing SQLite database migrations without requiring a specific ORM.
Analyzing the Builder.ai controversy, debunking claims of faking AI with human engineers, and exploring the technical challenges of such a deception.
Case study of Welcomy, a digital guidebook platform for property hosts built with Laravel, Livewire, React, and Tailwind CSS.
OpenAI CEO Sam Altman reveals ChatGPT's energy and water usage per query, sparking discussion on AI's environmental impact and data transparency.
A tutorial on enhancing code blocks in an Astro blog with language labels and copy buttons using JavaScript and Shiki.
A developer's journey to create custom Open Graph images for their Astro blog using Puppeteer and SVG templates.
Explores web accessibility principles through the lens of rickrolling, arguing that parity of experience is more important than descriptive labels.
A developer shares lessons learned from an unfinished Playdate game project about orbiting a black hole, built with Lua.
An overview of Generative AI and an introduction to building AI agents using Python and the LangGraph library.
A developer's technical log on improving Guile's garbage collector using the Whippet API, focusing on fragmentation and evacuation strategies.
Introduction to Java 25's new experimental CPU-time profiler, explaining its advantages over the current JFR method sampler.
iOS 18 and macOS 15 include hidden automatic observation tracking for UIKit/AppKit, enabling views to update automatically when @Observable models change.
Explores the relationship between SRE and DevOps, arguing SRE is a specialized engineering role focused on reliability, not just rebranded operations.
An AI engineer explains how buying a printer for reading and annotating technical papers helps improve focus and retention.
Solving Puppeteer Chrome errors during Netlify builds using Chromium integration or package.json scripts.
A developer shares a method for using AI personas like Product Manager and Architect to improve AI-assisted programming workflows for non-trivial changes.