<?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: Joe Jorden</title>
    <description>The latest articles on DEV Community by Joe Jorden (@jljorden).</description>
    <link>https://dev.to/jljorden</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%2F3941081%2Faaa0eec8-fdce-4c7d-8ea2-3b8044589703.png</url>
      <title>DEV Community: Joe Jorden</title>
      <link>https://dev.to/jljorden</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/jljorden"/>
    <language>en</language>
    <item>
      <title>We Ignored YAGNI and Paid for It (Here’s What Happened)</title>
      <dc:creator>Joe Jorden</dc:creator>
      <pubDate>Thu, 04 Jun 2026 20:25:31 +0000</pubDate>
      <link>https://dev.to/jljorden/why-yagni-still-matters-82d</link>
      <guid>https://dev.to/jljorden/why-yagni-still-matters-82d</guid>
      <description>&lt;p&gt;At one of my jobs we had a website where we processed thousands of transactions every hour and we thought we were making a "future-proof" code base. &lt;/p&gt;

&lt;p&gt;A few months later we found a hard truth: we wrote code that was never used.&lt;/p&gt;

&lt;p&gt;We forgot about YAGNI.&lt;/p&gt;

&lt;p&gt;In a nutshell, YAGNI means that you should not write code that you do not need. That may seem painfully obvious, even to the novice developer, but even seasoned pros forget this sometimes. I'll give you an example:&lt;/p&gt;

&lt;p&gt;On the website I mentioned we had a method called createCardMethod which got used all the time when someone used a new credit card. We were seriously considering changing card processors at one point so we wrote a method called addCardMethod which would work with the new processor just in case we changed.&lt;/p&gt;

&lt;p&gt;We didn't change card processors.&lt;/p&gt;

&lt;p&gt;Fast forward a few months and we forgot about the extra method. We just kept maintaining it. The Javascript and the backend API.&lt;/p&gt;

&lt;p&gt;This "future-proof" code cost several of our developers an untold number of hours in maintaining code that we never needed in the first place.&lt;/p&gt;

&lt;p&gt;And there's the real lesson.&lt;/p&gt;

&lt;p&gt;When you write code just in case you might need it some day then what happens if you never need it? You end up with dead code that still gets maintained. This wastes developer time, QA time, architect time and can cause bugs that simply didn't need to be introduced.&lt;/p&gt;

&lt;p&gt;So the next time you design some new functionality ask yourself if you actually need it right now. If not, save yourself some future pain and don't write it if you ain't gonna need it.&lt;/p&gt;

</description>
      <category>programming</category>
      <category>beginners</category>
      <category>webdev</category>
      <category>architecture</category>
    </item>
  </channel>
</rss>
