Yagni (2015)
The problem I&#x27;ve seen when yagni is applied is <i>not</i> building something now leads to a costly data migration down the road when you actually do need it.<p>I run a site that stores audio files. For the first half of its life, it simply stored the URL of the file on S3. I could have used objects representing audio assets with metadata to store the reference, but I didn&#x27;t think I&#x27;d need it. When I was building another feature that _did_ need that functionality, the migration took far longer to write, test, and run than the process of building the asset objects feature and the feature I needed them for combined.<p>Additionally, the new system made it easier to debug customer issues. I didn&#x27;t know that I actually needed this feature the whole time.