<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Aniq Usman</title>
    <description>The latest articles on DEV Community by Aniq Usman (@aniq_usman_b57bc195bafe68).</description>
    <link>https://dev.to/aniq_usman_b57bc195bafe68</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4105106%2Fa4be2e47-0632-4db0-8b6f-be94d64837e5.png</url>
      <title>DEV Community: Aniq Usman</title>
      <link>https://dev.to/aniq_usman_b57bc195bafe68</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/aniq_usman_b57bc195bafe68"/>
    <language>en</language>
    <item>
      <title>Stop Guessing What Your Code Change Will Break</title>
      <dc:creator>Aniq Usman</dc:creator>
      <pubDate>Tue, 01 Sep 2026 21:47:49 +0000</pubDate>
      <link>https://dev.to/aniq_usman_b57bc195bafe68/stop-guessing-what-your-code-change-will-break-6gl</link>
      <guid>https://dev.to/aniq_usman_b57bc195bafe68/stop-guessing-what-your-code-change-will-break-6gl</guid>
      <description>&lt;p&gt;Ever changed one function, thought it was a small edit, then spent the next hour tracing through five other files to figure out what broke? That's the problem I set out to fix.&lt;/p&gt;

&lt;p&gt;A while back, someone commented on a related post describing a tool they hand wrote for C++ codebases. It parsed every file's #include statements, built a dependency graph, and used that to show how far a change in one header would actually propagate. Their point stuck with me: changes spread much further than people expect, because a single edit can ripple through every file that depends on it, directly or indirectly.&lt;/p&gt;

&lt;p&gt;I wanted the same idea, but for Python, and without having to manually inspect includes or imports myself. So I built Change Impact Analyzer, a VS Code extension that does this automatically.&lt;/p&gt;

&lt;p&gt;Here's what it does:&lt;/p&gt;

&lt;p&gt;Parses every Python file in your project with tree-sitter, and resolves what calls what using a language server (pylsp).&lt;br&gt;
Detects whatever you've actually edited and saved, via git.&lt;br&gt;
Traces the blast radius, every other piece of code that depends on what you changed, directly or through any number of hops, deterministically, with no API cost.&lt;br&gt;
Asks an LLM to explain the risk in plain English and give you a clear recommendation.&lt;br&gt;
If you decide to go ahead, a fix agent can update every other affected piece of code so it still works.&lt;/p&gt;

&lt;p&gt;Everything happens in a popup window inside the editor. It asks which change you mean if there's more than one, shows you what's affected, gives you its verdict, and asks for confirmation before touching anything.&lt;/p&gt;

&lt;p&gt;If you work in Python and have ever been surprised by how far a "small" change actually reached, I'd love for you to try it out and tell me what breaks or what's missing.&lt;/p&gt;

&lt;p&gt;Repo: &lt;a href="https://github.com/theaniqusman/change-impact-analyzer" rel="noopener noreferrer"&gt;https://github.com/theaniqusman/change-impact-analyzer&lt;/a&gt;&lt;br&gt;
Marketplace: &lt;a href="https://marketplace.visualstudio.com/items?itemName=AniqUsman.change-impact-analyzer" rel="noopener noreferrer"&gt;https://marketplace.visualstudio.com/items?itemName=AniqUsman.change-impact-analyzer&lt;/a&gt;&lt;/p&gt;

</description>
      <category>python</category>
      <category>softwaredevelopment</category>
      <category>tools</category>
      <category>vscode</category>
    </item>
  </channel>
</rss>
