<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Jamie Duncan</title><description>Self-taught engineer, recovering history major. Tech, woodworking, home automation.</description><link>https://jduncan.io/</link><language>en-us</language><item><title>What I&apos;m Reading (and Listening to) in 2026</title><link>https://jduncan.io/blog/2026-07-01-what-im-reading-and-listening-to/</link><guid isPermaLink="true">https://jduncan.io/blog/2026-07-01-what-im-reading-and-listening-to/</guid><description>My rules for pleasure reading: sci-fi over biographies, long series over anything, and the podcasts and books I keep coming back to.</description><pubDate>Wed, 01 Jul 2026 00:00:00 GMT</pubDate><category>books</category><category>podcasts</category><category>sci-fi</category><category>reading</category></item><item><title>How You Do Something Matters</title><link>https://jduncan.io/blog/2026-07-01-how-you-do-something-matters/</link><guid isPermaLink="true">https://jduncan.io/blog/2026-07-01-how-you-do-something-matters/</guid><description>A horror show about a town with no rules cracked open something I&apos;ve been chewing on: what belongs in an AI harness, and what should be left to the agent.</description><pubDate>Wed, 01 Jul 2026 00:00:00 GMT</pubDate><category>ai-tools</category><category>agentic-development</category><category>developer-workflow</category><category>software-engineering</category></item><item><title>Coding Was Never About Syntax</title><link>https://jduncan.io/blog/2026-06-29-coding-was-never-about-syntax/</link><guid isPermaLink="true">https://jduncan.io/blog/2026-06-29-coding-was-never-about-syntax/</guid><description>Everyone&apos;s asking if you should still learn to code. It&apos;s the wrong question. The job was never typing syntax. It was solving problems, and that hasn&apos;t changed.</description><pubDate>Mon, 29 Jun 2026 00:00:00 GMT</pubDate><category>ai-tools</category><category>software-engineering</category><category>craftsmanship</category><category>careers</category><category>developer-workflow</category></item><item><title>Call It Noticing</title><link>https://jduncan.io/blog/2026-06-26-call-it-noticing/</link><guid isPermaLink="true">https://jduncan.io/blog/2026-06-26-call-it-noticing/</guid><description>A habit I&apos;ve had for years and never had a word for: finding the one thing worth learning from almost everyone I work with.</description><pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate><category>career</category><category>learning</category><category>growth</category><category>work</category></item><item><title>Security Belongs Inside the SDLC, Not Bolted On</title><link>https://jduncan.io/blog/2026-06-23-security-inside-the-sdlc/</link><guid isPermaLink="true">https://jduncan.io/blog/2026-06-23-security-inside-the-sdlc/</guid><description>AI security agents like CodeMender and Claude Mythos are backstops. The real work is the in-flow layer of gates in front of them, and vendors are shipping it.</description><pubDate>Tue, 23 Jun 2026 00:00:00 GMT</pubDate><category>ai-security</category><category>sdlc</category><category>claude-code</category><category>devsecops</category><category>shift-left</category></item><item><title>The Ergonomics of Cheap Tokens: Why I Swapped Gemini for Qwen</title><link>https://jduncan.io/blog/2026-06-14-ergonomics-cheap-tokens/</link><guid isPermaLink="true">https://jduncan.io/blog/2026-06-14-ergonomics-cheap-tokens/</guid><description>Alibaba&apos;s Qwen is dominating OpenRouter token charts. But moving a bootstrapped startup from Gemini to Qwen revealed the hidden price of open models: developer time.</description><pubDate>Sun, 14 Jun 2026 00:00:00 GMT</pubDate><category>llm-pricing</category><category>openrouter</category><category>qwen</category><category>developer-ergonomics</category><category>cloud-computing</category></item><item><title>A Nerd in Paris - A Travelog Part 3</title><link>https://jduncan.io/blog/2026-06-02-a-nerd-in-paris-3/</link><guid isPermaLink="true">https://jduncan.io/blog/2026-06-02-a-nerd-in-paris-3/</guid><description>Day 3 in Paris - A visit to Musée du quai Branly for African fashion, Louvre highlights with a great guide, and taking it easy on a sore knee.</description><pubDate>Tue, 02 Jun 2026 00:00:00 GMT</pubDate><category>travel</category><category>paris</category></item><item><title>The Focus Tax: How Antigravity Cures Context Switching</title><link>https://jduncan.io/blog/2026-06-02-antigravity-context-switching/</link><guid isPermaLink="true">https://jduncan.io/blog/2026-06-02-antigravity-context-switching/</guid><description>The average developer loses 20% of cognitive capacity per context switch. See how Antigravity&apos;s asynchronous tools and subagents cure the focus tax.</description><pubDate>Tue, 02 Jun 2026 00:00:00 GMT</pubDate><category>google-antigravity</category><category>developer-tools</category><category>context-switching</category><category>developer-workflow</category><category>ai-agents</category></item><item><title>From Tickets to Specs: How AI Agents Heal the PM-Dev Divide</title><link>https://jduncan.io/blog/2026-06-02-from-tickets-to-specs-agentic-development/</link><guid isPermaLink="true">https://jduncan.io/blog/2026-06-02-from-tickets-to-specs-agentic-development/</guid><description>Traditional PM-developer handoffs are a game of telephone. Spec-driven development with AI agents turns requirements into a compilable bridge.</description><pubDate>Tue, 02 Jun 2026 00:00:00 GMT</pubDate><category>career</category><category>product-management</category><category>spec-driven-development</category><category>ai-agents</category><category>team-collaboration</category></item><item><title>Open Source is Right to Reject AI Slop</title><link>https://jduncan.io/blog/2026-06-01-oss-ai-pr-bans/</link><guid isPermaLink="true">https://jduncan.io/blog/2026-06-01-oss-ai-pr-bans/</guid><description>Large open-source projects are shutting the door on raw AI-generated contributions. It&apos;s not out of fear. It&apos;s about survival, quality, and accountability.</description><pubDate>Mon, 01 Jun 2026 00:00:00 GMT</pubDate><category>open-source</category><category>ai</category><category>linux</category><category>programming</category><category>open-source-ai</category></item><item><title>GKE Basics: Building the Workbench for Local LLMs</title><link>https://jduncan.io/blog/2026-05-31-gke-basics-local-llms/</link><guid isPermaLink="true">https://jduncan.io/blog/2026-05-31-gke-basics-local-llms/</guid><description>Before you can carve fine details with an LLM, you need a sturdy workbench. Here is how to stand up GKE Autopilot to run and test local models.</description><pubDate>Sun, 31 May 2026 00:00:00 GMT</pubDate><category>kubernetes</category><category>gke</category><category>gcloud</category><category>llm</category><category>ollama</category><category>google-cloud</category></item><item><title>A Nerd in Paris - A Travelog Part 2</title><link>https://jduncan.io/blog/2026-04-20-a-nerd-in-paris-2/</link><guid isPermaLink="true">https://jduncan.io/blog/2026-04-20-a-nerd-in-paris-2/</guid><description>Day 2 in Paris - Fast trains and a complete lack of churros</description><pubDate>Mon, 20 Apr 2026 00:00:00 GMT</pubDate><category>travel</category><category>paris</category></item><item><title>A Nerd in Paris - A Travelog Part 1</title><link>https://jduncan.io/blog/2026-04-20-a-nerd-in-paris/</link><guid isPermaLink="true">https://jduncan.io/blog/2026-04-20-a-nerd-in-paris/</guid><description>My family just spent 12 days having our first visit to Paris. This is my attempt to remember what we did.</description><pubDate>Mon, 20 Apr 2026 00:00:00 GMT</pubDate><category>travel</category><category>paris</category></item><item><title>The End of Coding Won&apos;t Be in 2026</title><link>https://jduncan.io/blog/2026-04-12-end-of-coding-hype/</link><guid isPermaLink="true">https://jduncan.io/blog/2026-04-12-end-of-coding-hype/</guid><description>Eric Schmidt says programming is ending. A programmer from 1945 would say it ended forty years ago. Both are right, and both are wrong.</description><pubDate>Sun, 12 Apr 2026 00:00:00 GMT</pubDate><category>ai</category><category>agentic-development</category><category>hype</category><category>developer-tools</category></item><item><title>Paper Tigers and Pickup Trucks</title><link>https://jduncan.io/blog/2026-04-02-paper-tigers-and-pickup-trucks/</link><guid isPermaLink="true">https://jduncan.io/blog/2026-04-02-paper-tigers-and-pickup-trucks/</guid><description>Does winning the AI tools race today actually matter? History says probably not.</description><pubDate>Thu, 02 Apr 2026 00:00:00 GMT</pubDate><category>ai</category><category>developer-tools</category><category>strategy</category><category>claude-code</category><category>gemini-cli</category></item><item><title>Context-Driven Development: Teaching Your AI Assistant How You Think</title><link>https://jduncan.io/blog/2026-04-01-context-driven-development/</link><guid isPermaLink="true">https://jduncan.io/blog/2026-04-01-context-driven-development/</guid><description>AI coding assistants are powerful, but they&apos;re blind to your intent. Context-driven development fixes that.</description><pubDate>Wed, 01 Apr 2026 00:00:00 GMT</pubDate><category>ai</category><category>developer-tools</category><category>rag</category><category>documentation</category><category>claude-code</category></item><item><title>I Wrote About Changing Audiences. Then I Built Root.</title><link>https://jduncan.io/blog/2026-03-22-introducing-root-structured-ai-development/</link><guid isPermaLink="true">https://jduncan.io/blog/2026-03-22-introducing-root-structured-ai-development/</guid><description>Root is a development workflow framework for AI-assisted coding. Here&apos;s why I built it and what it does.</description><pubDate>Sun, 22 Mar 2026 00:00:00 GMT</pubDate><category>ai-development</category><category>root</category><category>developer-tools</category><category>open-source</category><category>claude-code</category><category>gemini-cli</category></item><item><title>Dismantling an Agentic System - Part 1</title><link>https://jduncan.io/blog/2026-02-18-fundamentals-series-1/</link><guid isPermaLink="true">https://jduncan.io/blog/2026-02-18-fundamentals-series-1/</guid><description>I&apos;m a HUGE BELIEVER in people being able to leverage tools better when they understand how they work. Black boxes don&apos;t breed confidence in users. So let&apos;s do that with Agentic Development Systems.</description><pubDate>Thu, 19 Feb 2026 00:00:00 GMT</pubDate><category>ai</category><category>vibe-coding</category><category>software-development</category><category>agentic-development</category></item><item><title>Don&apos;t Let The Line Count Fool You. This Ain&apos;t Easy (yet)</title><link>https://jduncan.io/blog/2026-02-15-dont-get-fooled-by-line-count/</link><guid isPermaLink="true">https://jduncan.io/blog/2026-02-15-dont-get-fooled-by-line-count/</guid><description>I can&apos;t remember the last time I went a day without seeing an article about &apos;[Google has 25% of code generated by AI](https://blog.google/technology/ai/google-gemini-next-generation-model-february-2024/)&apos; or &apos;[GitHub Copilot is writing 46% of code](https://github.blog/2023-06-27-the-economic-impact-of-the-ai-powered-developer-lifecycle-and-lessons-from-github-copilot/)&apos; or &apos;[Amazon Q has saved 4,500 developer-years](https://aws.amazon.com/q/developer/)&apos;. The knowledge isn&apos;t in the line count. It&apos;s in how they got there.</description><pubDate>Sun, 15 Feb 2026 00:00:00 GMT</pubDate><category>ai</category><category>vibe-coding</category><category>leadership</category><category>software-development</category><category>agentic-development</category></item><item><title>The Vibe Coding Executive Delusion</title><link>https://jduncan.io/blog/2026-01-24-the-vibe-coding-executive-delusion/</link><guid isPermaLink="true">https://jduncan.io/blog/2026-01-24-the-vibe-coding-executive-delusion/</guid><description>AI tools are genuinely transforming software development. But the flood of executives claiming to ship 10,000 lines of code while running companies reveals a fundamental misunderstanding of what we&apos;re building.</description><pubDate>Sat, 24 Jan 2026 00:00:00 GMT</pubDate><category>ai</category><category>vibe-coding</category><category>leadership</category><category>software-development</category><category>agentic-development</category></item><item><title>2025: The Year I Learned to Wrangle AI Agents</title><link>https://jduncan.io/blog/2025-12-31-2025-reflections-agentic-ai/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-12-31-2025-reflections-agentic-ai/</guid><description>Reflections on a year of building with Agentic AI. The good, the bad, the lazy, and why I can&apos;t go back.</description><pubDate>Wed, 31 Dec 2025 00:00:00 GMT</pubDate><category>ai</category><category>agents</category><category>gemini</category><category>year-in-review</category></item><item><title>The Audience Has Changed: Why We Must Stop Coding for Humans</title><link>https://jduncan.io/blog/2025-12-26-ai-coding-audience-shift/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-12-26-ai-coding-audience-shift/</guid><description>Generative AI isn&apos;t an evolution of software development; it&apos;s a revolution. To leverage it, we must stop optimizing codebases for human eyes and start building them for Agentic verification.</description><pubDate>Fri, 26 Dec 2025 00:00:00 GMT</pubDate><category>ai</category><category>software-development</category><category>agentic-ai</category><category>devops</category></item><item><title>Resurrecting Family History in 90 Minutes: The Era of Personal Software</title><link>https://jduncan.io/blog/2025-12-06-era-of-personal-software/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-12-06-era-of-personal-software/</guid><description>How I used Gemini CLI to turn a hacky weekend script into a full-featured family photo app in less time than it takes to watch a movie.</description><pubDate>Sat, 06 Dec 2025 00:00:00 GMT</pubDate><category>gemini-cli</category><category>personal-software</category><category>python</category><category>automation</category><category>family-tech</category></item><item><title>The Meat Ma&apos;am Has Left the Building: Goodbye, K&amp;W</title><link>https://jduncan.io/blog/2025-12-01-kw-cafeteria-closing/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-12-01-kw-cafeteria-closing/</guid><description>K&amp;W Cafeteria closes after 88 years. A reflection on green jello, baked spaghetti, and the incredible success of a business that lasts nearly a century.</description><pubDate>Mon, 01 Dec 2025 00:00:00 GMT</pubDate><category>business</category><category>nostalgia</category><category>north-carolina</category><category>entrepreneurship</category></item><item><title>When AI Can&apos;t Save You: A Senior Engineer&apos;s Crisis</title><link>https://jduncan.io/blog/2025-12-01-lessons-learned-genai-limits/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-12-01-lessons-learned-genai-limits/</guid><description>Experience doesn&apos;t immunize you from confusion. A look at how GenAI can amplify your ignorance just as fast as it amplifies your productivity.</description><pubDate>Mon, 01 Dec 2025 00:00:00 GMT</pubDate><category>ai</category><category>kubernetes</category><category>learning</category><category>career-growth</category></item><item><title>It&apos;s Not the Model, It&apos;s the Context</title><link>https://jduncan.io/blog/2025-11-27-context-coherence-vs-model-superiority/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-11-27-context-coherence-vs-model-superiority/</guid><description>Why upgrading to the latest frontier model won&apos;t fix your productivity if your context window is a chaotic mess.</description><pubDate>Thu, 27 Nov 2025 00:00:00 GMT</pubDate><category>ai</category><category>llm</category><category>developer-productivity</category><category>mcp</category><category>context-window</category></item><item><title>Thankful for Hope, Home, and the Agentic Future</title><link>https://jduncan.io/blog/2025-11-27-thankful-hope-agentic-future/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-11-27-thankful-hope-agentic-future/</guid><description>Reflecting on security, family, and the privilege of working in Agentic AI during this pivotal moment of social change and technological breakthroughs.</description><pubDate>Thu, 27 Nov 2025 00:00:00 GMT</pubDate><category>thanksgiving</category><category>personal</category><category>ai</category><category>agents</category><category>hope</category></item><item><title>How I Finally Deleted 60,000 Emails (And The Trick That Worked)</title><link>https://jduncan.io/blog/2025-11-26-email-bankruptcy/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-11-26-email-bankruptcy/</guid><description>I had 60k+ unread emails. I&apos;m not an Inbox Zero advocate, but I needed a reset. Here is the &apos;Email Bankruptcy&apos; story, the filter trick that broke Gmail, and the AI agent I built to keep it clean.</description><pubDate>Wed, 26 Nov 2025 00:00:00 GMT</pubDate><category>productivity</category><category>gmail</category><category>automation</category><category>ai</category><category>career</category></item><item><title>The Forever Race: Why There Is No &apos;Winner&apos; in AI</title><link>https://jduncan.io/blog/2025-11-24-the-forever-race/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-11-24-the-forever-race/</guid><description>Every time a new model drops, we look for a champion. History suggests we should be looking for the victims instead.</description><pubDate>Mon, 24 Nov 2025 00:00:00 GMT</pubDate><category>ai</category><category>history</category><category>business</category><category>strategy</category></item><item><title>AI Writing: From &quot;Sounding Like Me&quot; to &quot;Revealing What I Know&quot;</title><link>https://jduncan.io/blog/2025-11-23-ai-writing-process-revelation/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-11-23-ai-writing-process-revelation/</guid><description>Why my AI writing strategy shifted from style mimicry to knowledge extraction, and how agentic workflows are the future of idea sharing.</description><pubDate>Sun, 23 Nov 2025 00:00:00 GMT</pubDate><category>ai</category><category>writing</category><category>process</category><category>agentic-workflow</category></item><item><title>Gemini CLI Tips: Advanced Configuration &amp; Tricks</title><link>https://jduncan.io/blog/2025-11-23-gemini-cli-tips-tricks/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-11-23-gemini-cli-tips-tricks/</guid><description>Deep dive into configuring the Gemini CLI, customizing those loading messages, and why open source contributions are the best holiday escape.</description><pubDate>Sun, 23 Nov 2025 00:00:00 GMT</pubDate><category>gemini</category><category>cli</category><category>open-source</category><category>productivity</category></item><item><title>The Four Patterns of AI Interaction in 2026</title><link>https://jduncan.io/blog/2025-11-21-generative-ai-patterns-2026/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-11-21-generative-ai-patterns-2026/</guid><description>From IDE plugins to fully agentic environments, exploring the four dominant patterns for interacting with Generative AI in 2026.</description><pubDate>Fri, 21 Nov 2025 00:00:00 GMT</pubDate><category>ai</category><category>productivity</category><category>future-of-work</category><category>coding</category></item><item><title>Gemini 3 Pro vs Claude Sonnet 4.5: Antigravity IDE Review</title><link>https://jduncan.io/blog/2025-11-20-google-antigravity-gemini-3-first-impressions/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-11-20-google-antigravity-gemini-3-first-impressions/</guid><description>Real-world Gemini 3 Pro vs Claude Sonnet 4.5 comparison. Antigravity IDE review, benchmark performance, and capacity limits explained.</description><pubDate>Thu, 20 Nov 2025 00:00:00 GMT</pubDate><category>google-antigravity</category><category>gemini-3</category><category>ai-coding-tools</category><category>developer-tools</category><category>claude-sonnet</category><category>gemini-cli</category></item><item><title>Gemini CLI&apos;s Hidden Superpower: Custom System Prompts</title><link>https://jduncan.io/blog/2025-11-13-gemini-cli-custom-system-prompts/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-11-13-gemini-cli-custom-system-prompts/</guid><description>Customize Gemini CLI behavior with custom system prompts using a simple environment variable. Tutorial + ready-made agents from Pirate to Shakespeare.</description><pubDate>Thu, 13 Nov 2025 00:00:00 GMT</pubDate><category>gemini</category><category>cli-tools</category><category>ai</category><category>developer-tools</category></item><item><title>TOON vs JSON: Why AI Agents Need Token-Optimized Data Formats</title><link>https://jduncan.io/blog/2025-11-11-toon-vs-json-agent-optimized-data/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-11-11-toon-vs-json-agent-optimized-data/</guid><description>TOON cuts LLM token costs 50% vs JSON. Why AI agents need token-optimized formats like TOON &amp; markdown. Deep dive for developers building with AI.</description><pubDate>Tue, 11 Nov 2025 00:00:00 GMT</pubDate><category>ai-agents</category><category>llm-optimization</category><category>token-efficiency</category><category>data-formats</category><category>toon</category></item><item><title>The Case for Universal AI Extension Standards: Skills and Extensions Should Be Interchangeable</title><link>https://jduncan.io/blog/2025-11-10-universal-ai-extension-standard/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-11-10-universal-ai-extension-standard/</guid><description>Claude Skills and Gemini Extensions solve the same problem with incompatible formats. Here&apos;s why standardization would eliminate unnecessary cognitive load.</description><pubDate>Mon, 10 Nov 2025 00:00:00 GMT</pubDate><category>ai-tools</category><category>developer-tools</category><category>interoperability</category><category>claude-code</category><category>gemini-cli</category></item><item><title>Paper Billionaires: Why Most Startup Valuations Are Financial Fiction</title><link>https://jduncan.io/blog/2025-11-09-paper-billionaires-startup-valuations/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-11-09-paper-billionaires-startup-valuations/</guid><description>Most tech &apos;billionaires&apos; are paper rich from inflated startup valuations. Here&apos;s why your equity options might be worth nothing - and how to know the difference.</description><pubDate>Sun, 09 Nov 2025 00:00:00 GMT</pubDate><category>startups</category><category>equity</category><category>valuations</category><category>tech-industry</category><category>entrepreneurship</category></item><item><title>Open Source AI Agent Testing Framework with Auto-Generated Benchmarks</title><link>https://jduncan.io/blog/2025-11-09-agent-benchmark-kit/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-11-09-agent-benchmark-kit/</guid><description>AI agent testing framework that auto-generates benchmarks from 5 questions. LLM-as-judge evaluation, performance tracking, production examples. Open source, MIT licensed.</description><pubDate>Sun, 09 Nov 2025 00:00:00 GMT</pubDate><category>AI</category><category>Testing</category><category>Open Source</category><category>Quality Assurance</category><category>LLM</category></item><item><title>How Google&apos;s File Search API Eliminated 7 Database Tables from My RAG Pipeline</title><link>https://jduncan.io/blog/2025-11-08-google-file-search-rag-simplification/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-11-08-google-file-search-rag-simplification/</guid><description>I replaced a complex RAG pipeline (GCS, Vertex AI, 7 database tables) with Google&apos;s File Search API. Same cost, 90% less code. Here&apos;s how.</description><pubDate>Sat, 08 Nov 2025 00:00:00 GMT</pubDate><category>rag</category><category>gemini-api</category><category>google-cloud</category><category>ai</category><category>architecture</category></item><item><title>MCP Context Bloat: When Your AI Agent Gets Dependency Hell</title><link>https://jduncan.io/blog/2025-11-07-mcp-context-bloat/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-11-07-mcp-context-bloat/</guid><description>Running too many MCP servers creates the same problems we learned to avoid with dependencies. Here&apos;s what we&apos;re doing about it.</description><pubDate>Fri, 07 Nov 2025 00:00:00 GMT</pubDate><category>mcp</category><category>ai-agents</category><category>claude-code</category><category>context-management</category><category>developer-tools</category></item><item><title>Shift Left CI/CD: Are Centralized Pipelines Becoming Obsolete?</title><link>https://jduncan.io/blog/2025-11-06-shift-left-ci-cd-obsolete/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-11-06-shift-left-ci-cd-obsolete/</guid><description>I&apos;m shifting 90% of validation left to local pre-commit hooks. Here&apos;s why shift left CI/CD is questioning centralized pipelines for small teams with AI agents.</description><pubDate>Thu, 06 Nov 2025 00:00:00 GMT</pubDate><category>ci-cd</category><category>devops</category><category>ai-coding</category><category>developer-workflow</category><category>shift-left</category></item><item><title>The Documentation Mountain: When AI Generates Code Faster Than We Can Understand It</title><link>https://jduncan.io/blog/2025-11-04-comprehension-debt/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-11-04-comprehension-debt/</guid><description>We&apos;re creating mountains of documentation for AI-generated features. But no amount of markdown will replace actually understanding how bits move through a system.</description><pubDate>Tue, 04 Nov 2025 00:00:00 GMT</pubDate><category>ai-coding</category><category>technical-debt</category><category>code-comprehension</category><category>software-engineering</category></item><item><title>AgentKit vs ADK: Which AI Agent Framework Actually Works?</title><link>https://jduncan.io/blog/2025-11-03-agentkit-vs-adk/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-11-03-agentkit-vs-adk/</guid><description>OpenAI AgentKit vs Google ADK comparison: architecture, security, model flexibility, and real production experience. Which AI agent framework works for your use case?</description><pubDate>Sun, 02 Nov 2025 00:00:00 GMT</pubDate><category>AI</category><category>agents</category><category>frameworks</category><category>OpenAI</category><category>Google</category><category>developer-tools</category></item><item><title>Parallel AI Agents: Cursor 2.0&apos;s 8-Agent Approach vs Sequential Orchestration</title><link>https://jduncan.io/blog/2025-11-01-cursor-parallel-agents/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-11-01-cursor-parallel-agents/</guid><description>Cursor 2.0 runs 8 AI agents in parallel for better results. But does the 25-35% token cost increase justify the speed? Analysis of parallel vs sequential agents.</description><pubDate>Sat, 01 Nov 2025 00:00:00 GMT</pubDate><category>ai</category><category>agents</category><category>cursor</category><category>claude-code</category><category>efficiency</category><category>architecture</category></item><item><title>Spec-Driven Development: How Our 43-Agent System Compares</title><link>https://jduncan.io/blog/2025-11-01-spec-driven-development/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-11-01-spec-driven-development/</guid><description>How our 43-agent system implements spec-driven development. CLAUDE.md files, agent prompts, and workflow specs create predictable AI agent orchestration.</description><pubDate>Sat, 01 Nov 2025 00:00:00 GMT</pubDate><category>ai</category><category>agents</category><category>specifications</category><category>architecture</category><category>methodology</category></item><item><title>1,189 AI Agents and Most of Them Don&apos;t Matter</title><link>https://jduncan.io/blog/2025-10-31-ai-agent-hype-vs-value/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-10-31-ai-agent-hype-vs-value/</guid><description>The AI agent ecosystem is massive and fragmented. Here&apos;s how to separate tools that solve real problems from expensive distractions.</description><pubDate>Fri, 31 Oct 2025 00:00:00 GMT</pubDate><category>ai-agents</category><category>product-development</category><category>entrepreneurship</category><category>business-strategy</category></item><item><title>When Your AI Agent Decides to Skip the Tests</title><link>https://jduncan.io/blog/2025-10-31-ai-coding-safety-vs-speed/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-10-31-ai-coding-safety-vs-speed/</guid><description>Comparing two approaches to AI coding: paranoid infrastructure engineer versus move-fast entrepreneur. Both are right.</description><pubDate>Fri, 31 Oct 2025 00:00:00 GMT</pubDate><category>ai-agents</category><category>software-development</category><category>testing</category><category>security</category></item><item><title>Google&apos;s CodeMender: When Security Tools Become Autonomous Agents</title><link>https://jduncan.io/blog/2025-10-30-code-security-agents/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-10-30-code-security-agents/</guid><description>Google&apos;s CodeMender represents a fundamental shift in how we think about code security. Not just finding vulnerabilities, but autonomously fixing them. And it fits perfectly with our agent-first development approach.</description><pubDate>Thu, 30 Oct 2025 00:00:00 GMT</pubDate><category>ai</category><category>agents</category><category>security</category><category>code-quality</category><category>automation</category><category>agentic-ai</category></item><item><title>The 7 Agentic AI Patterns We&apos;ve Been Using Without Knowing It</title><link>https://jduncan.io/blog/2025-10-30-agentic-ai-design-patterns/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-10-30-agentic-ai-design-patterns/</guid><description>Analyzing formal agentic AI design patterns against our three-team agent system reveals we&apos;ve been implementing these patterns implicitly across marketing, engineering, and business domains.</description><pubDate>Thu, 30 Oct 2025 00:00:00 GMT</pubDate><category>ai</category><category>agents</category><category>automation</category><category>design-patterns</category><category>architecture</category></item><item><title>The Boring Middle: Why AI Agents and Shell Scripts Both Win</title><link>https://jduncan.io/blog/2025-10-29-boring-middle-ai-agents-shell-scripts/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-10-29-boring-middle-ai-agents-shell-scripts/</guid><description>Kelsey Hightower&apos;s right: AI agents and shell scripts both have their place. Here&apos;s why the future isn&apos;t either/or—it&apos;s the boring middle.</description><pubDate>Wed, 29 Oct 2025 00:00:00 GMT</pubDate><category>automation</category><category>devops</category><category>ai-agents</category><category>shell-scripts</category><category>unix-philosophy</category></item><item><title>I Added Office Hours to My Website</title><link>https://jduncan.io/blog/2025-10-29-office-hours/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-10-29-office-hours/</guid><description>Why I&apos;m making myself available for scheduled conversations and what I hope to learn from them.</description><pubDate>Wed, 29 Oct 2025 00:00:00 GMT</pubDate><category>career</category><category>mentorship</category><category>learning</category><category>community</category></item><item><title>Amazon&apos;s 30,000 Layoffs: Is AI Really to Blame?</title><link>https://jduncan.io/blog/2025-10-28-amazon-layoffs-ai-excuse/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-10-28-amazon-layoffs-ai-excuse/</guid><description>Amazon just announced its largest layoffs in history while posting record profits. The narrative says AI automation is replacing jobs. The numbers tell a different story about profit maximization.</description><pubDate>Tue, 28 Oct 2025 00:00:00 GMT</pubDate><category>ai</category><category>automation</category><category>tech-industry</category><category>corporate-culture</category><category>layoffs</category></item><item><title>AI Agent Feedback Loops: How to Monitor and Validate Autonomous Agents</title><link>https://jduncan.io/blog/2025-10-26-feedback-loops-ai-agents/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-10-26-feedback-loops-ai-agents/</guid><description>Learn how to build feedback loops for AI agent teams. Covers validation, monitoring, error handling, and CI/CD patterns for autonomous agents.</description><pubDate>Sun, 26 Oct 2025 00:00:00 GMT</pubDate><category>ai-agents</category><category>feedback-loops</category><category>devops</category><category>monitoring</category><category>orchestration</category><category>llm</category></item><item><title>Why I Use Claude Code (Even Though I Work at Google Cloud)</title><link>https://jduncan.io/blog/2025-10-26-why-claude-code/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-10-26-why-claude-code/</guid><description>An honest look at choosing AI coding tools based on pricing models, use cases, and validation workflows - not just employer loyalty.</description><pubDate>Sun, 26 Oct 2025 00:00:00 GMT</pubDate><category>ai-tools</category><category>gemini-cli</category><category>claude-code</category><category>developer-tools</category><category>google-cloud</category></item><item><title>When AI Agents Break Things (And What I&apos;m Doing About It)</title><link>https://jduncan.io/blog/2025-10-25-when-ai-agents-break-things/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-10-25-when-ai-agents-break-things/</guid><description>After an AI agent spent hours helping me build a feature, then broke it completely the next day, I&apos;m analyzing my context files and agent configs to prevent this from happening again.</description><pubDate>Sat, 25 Oct 2025 00:00:00 GMT</pubDate><category>ai-tools</category><category>debugging</category><category>git</category><category>developer-workflow</category><category>lessons-learned</category></item><item><title>Why Experienced Architects Will Orchestrate AI Agent Teams (Not Write More Code)</title><link>https://jduncan.io/blog/2025-10-24-architect-agent-orchestration/</link><guid isPermaLink="true">https://jduncan.io/blog/2025-10-24-architect-agent-orchestration/</guid><description>The AI replacement narrative gets it backwards. Junior developers get faster with Copilot. Senior architects are learning to orchestrate fleets of specialized autonomous agents.</description><pubDate>Fri, 24 Oct 2025 00:00:00 GMT</pubDate><category>ai-agents</category><category>software-architecture</category><category>agent-orchestration</category><category>agentic-ai</category><category>developer-workflow</category><category>autonomous-agents</category></item><item><title>What 106 Extensions in Week One Tell Us About AI Developer Tools</title><link>https://jduncan.io/blog/gemini-cli-extensions-week-one/</link><guid isPermaLink="true">https://jduncan.io/blog/gemini-cli-extensions-week-one/</guid><description>Analysis of the Gemini CLI extension marketplace launch: what 106 extensions and 34,000+ downloads in week one reveal about developer priorities and ecosystem growth patterns.</description><pubDate>Wed, 22 Oct 2025 00:00:00 GMT</pubDate><category>gemini-cli</category><category>developer-tools</category><category>ai-tooling</category><category>mcp</category><category>extension-marketplace</category><category>developer-experience</category></item><item><title>Hello, I&apos;m Jamie</title><link>https://jduncan.io/blog/hello-im-jamie/</link><guid isPermaLink="true">https://jduncan.io/blog/hello-im-jamie/</guid><description>An introduction to this blog, my background in tech, and what I am building now with BrandCast and FamilyCast.</description><pubDate>Tue, 21 Oct 2025 00:00:00 GMT</pubDate><category>about</category><category>introduction</category><category>brandcast</category><category>familycast</category></item><item><title>The Craftsman&apos;s Paradox</title><link>https://jduncan.io/blog/craftsmans-paradox/</link><guid isPermaLink="true">https://jduncan.io/blog/craftsmans-paradox/</guid><description>What woodworking taught me about AI coding agents and the future of software development. The Industrial Revolution didn&apos;t kill craftsmanship, and AI won&apos;t either.</description><pubDate>Mon, 20 Oct 2025 00:00:00 GMT</pubDate><category>ai</category><category>software-development</category><category>craftsmanship</category><category>woodworking</category><category>coding-agents</category></item><item><title>Dissecting a Docker Container Image</title><link>https://jduncan.io/blog/dissecting-docker-container-image/</link><guid isPermaLink="true">https://jduncan.io/blog/dissecting-docker-container-image/</guid><description>A technical deep dive into the internal structure of Docker container images, exploring how layers, metadata, and tarballs work together to create portable application packages.</description><pubDate>Thu, 16 Feb 2017 00:00:00 GMT</pubDate><category>docker</category><category>containers</category><category>devops</category><category>infrastructure</category></item></channel></rss>