<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Business Software Is Hard</title><description>Why is writing business software so hard? A series of essays.</description><link>https://businesssoftwareishard.com/</link><item><title>Fifteen hundred classes and no visible shape</title><link>https://businesssoftwareishard.com/essays/fifteen-hundred-classes-and-no-visible-shape/</link><guid isPermaLink="true">https://businesssoftwareishard.com/essays/fifteen-hundred-classes-and-no-visible-shape/</guid><description>Doing everything right produced fifteen hundred classes, fifty packages, and a two-week change to add one column.</description><pubDate>Mon, 24 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Between deployment and data</title><link>https://businesssoftwareishard.com/essays/between-deployment-and-data/</link><guid isPermaLink="true">https://businesssoftwareishard.com/essays/between-deployment-and-data/</guid><description>We have durable ways to draw where software runs and what it remembers, and only temporary ways to draw what happens in between.</description><pubDate>Tue, 25 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Drawing the transaction</title><link>https://businesssoftwareishard.com/essays/drawing-the-transaction/</link><guid isPermaLink="true">https://businesssoftwareishard.com/essays/drawing-the-transaction/</guid><description>The transaction is a design object we use constantly and almost never draw.</description><pubDate>Wed, 26 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Yeah, but does it work?</title><link>https://businesssoftwareishard.com/essays/yeah-but-does-it-work/</link><guid isPermaLink="true">https://businesssoftwareishard.com/essays/yeah-but-does-it-work/</guid><description>What the Test Pyramid stopped telling us about business software.</description><pubDate>Thu, 27 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Why does it only fail in production?</title><link>https://businesssoftwareishard.com/essays/why-does-it-only-fail-in-production/</link><guid isPermaLink="true">https://businesssoftwareishard.com/essays/why-does-it-only-fail-in-production/</guid><description>Why transaction bugs look intermittent, and why hiding the transaction makes them harder to understand.</description><pubDate>Fri, 28 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Why does modularity stop at the database?</title><link>https://businesssoftwareishard.com/essays/why-does-modularity-stop-at-the-database/</link><guid isPermaLink="true">https://businesssoftwareishard.com/essays/why-does-modularity-stop-at-the-database/</guid><description>If information hiding matters in code, why do we so often expose the entire relational representation underneath it?</description><pubDate>Sat, 29 Aug 2026 00:00:00 GMT</pubDate></item><item><title>Why can&apos;t I build a simple business screen on my own any more?</title><link>https://businesssoftwareishard.com/essays/why-cant-i-build-a-simple-business-screen-on-my-own-any-more/</link><guid isPermaLink="true">https://businesssoftwareishard.com/essays/why-cant-i-build-a-simple-business-screen-on-my-own-any-more/</guid><description>What did we trade away when rapid application development became web development?</description><pubDate>Sun, 30 Aug 2026 00:00:00 GMT</pubDate></item></channel></rss>