Author: Chad Michel

    AI Replacing Software Developers? What the Latest Research Actually Shows

    by 

    |

    |  

    in ,

    “AI will write 90% of code by tomorrow.” “Developers will be obsolete in five years.” Tech Twitter loves a good doom spiral. Engagement farms thrive on fear. Scary sells. But here is what the data actually shows: AI is not a replacement. AI is amplification, and that amplification cuts both ways. AI is chewing through…

    Read more…

    Building with the GitHub Copilot SDK, Part 2 – Wiring Up an Electron + Angular Desktop App

    by 

    |

    |  

    in ,

    In my previous post, we discussed the initial setup of the new Copilot SDK. This post will cover how we actually hook up the official @github/copilot-sdk inside an Electron and Angular application. Why is this structure necessary? When building a desktop application, we want a clean separation of concerns. We need to run the SDK…

    Read more…

    Building with the GitHub Copilot SDK, Part 1 – Getting Started

    by 

    |

    |  

    in ,

    Starting a new project with a fresh SDK is always an interesting way to spend a weekend. I’ve been digging into the new Copilot SDK from Microsoft, and it has the potential to change how we think about integrated AI. Here is a look at how to get it running and why I think the…

    Read more…

    Specialized Models Beat General LLMs (Sometimes)

    by 

    |

    |  

    in ,

    Here’s a question I’ve been chewing on lately: could a custom-built model for JavaScript/TypeScript actually outperform a flagship, general-purpose LLM while using a fraction of the memory and cost? For a lot of real-world developer tasks, the answer in early 2026 is yes. Now, I’m not claiming specialists win everywhere. That would be silly. But…

    Read more…

    Pulling Data from Microsoft Access to CSV: What I Built and Why

    by 

    |

    |  

    in ,

    I’ve always loved working with plain old CSVs for my analysis and scripting needs. They are simple, portable, and just work everywhere. So when I got handed a Microsoft Access database that I needed to break out into individual CSV files, I figured I’d whip up a little toolchain to handle it reliably on my…

    Read more…

    Putting a UI on My Access-to-CSV Converter

    by 

    |

    |  

    in

    Once I got the command-line version working exactly how I wanted, I noticed I was doing the same thing over and over: pick an Access file, choose an output folder, hit run, then open Finder to dig through the CSVs. It worked great, but it felt a little clunky—especially if I wanted to share it…

    Read more…

    Agent Chat using LangChain Part 3 – Fun Examples

    by 

    |

    |  

    in ,

    Now that we’ve covered the technical implementation (see Part 1 and Part 2), let’s see what this agent can actually do. Here are three examples that demonstrate how natural language interactions can replace tedious UI workflows—each one progressively more powerful. Example 1: Quick Lookups The simplest use case is finding information without navigating through menus….

    Read more…

    Agent Chat using LangChain Part 2 – Token Streaming with WebSockets

    by 

    |

    |  

    in ,

    We all dislike typing a message to an AI agent and then just staring at a spinning loader for ten seconds with zero feedback. It feels slow and lifeless. In part 2 of this series, I’m going to walk you through how I added proper token streaming over WebSockets so users see the agent’s response…

    Read more…

    Agent Chat using LangChain, Part 1 – Tools and Memory

    by 

    |

    |  

    in ,

    There’s something really satisfying about building an AI agent that can actually take action in your application. In this post, I’ll walk you through how I integrated LangChain tools into my NestJS backend to create an agent capable of searching contacts, creating events, sending messages, and handling a bunch of other tasks. The Tech Stack…

    Read more…

    Combat Agents: Automating Volatility-Based Decomposition

    by 

    |

    |  

    in ,

    At Don’t Panic Labs, we frequently discuss Volatility-Based Decomposition (VBD). It is an architecture practice that groups and boundaries systems by where change occurs. Instead of organizing purely by domains or technical layers, VBD identifies parts of the codebase that change together or change frequently. We use those patterns to inform seams, ownership, and stabilization…

    Read more…