<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Posts on Yet Another Dev Blog</title>
    <link>https://stevenallen.dev/posts/</link>
    <description>Recent content in Posts on Yet Another Dev Blog</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Thu, 30 Apr 2026 12:16:33 -0800</lastBuildDate>
    <atom:link href="https://stevenallen.dev/posts/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>The real AI threat - it doesn&#39;t need to be good to destroy your business</title>
      <link>https://stevenallen.dev/posts/the_ai_problem_nobody_is_ready_for/</link>
      <pubDate>Thu, 30 Apr 2026 12:16:33 -0800</pubDate>
      <guid>https://stevenallen.dev/posts/the_ai_problem_nobody_is_ready_for/</guid>
      <description>&lt;p&gt;&lt;strong&gt;Disclaimer&lt;/strong&gt; &lt;em&gt;I&amp;rsquo;ve used AI coding tools daily for two years. I used ChatGPT to help write this series. If you think my conclusions are a skill issue, I suggest you ask Dr Flattery The Compliment Robot what that might say about you&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Given the stakes, it&amp;rsquo;s perfectly natural to be concerned about AI. Given the stench, it&amp;rsquo;s perfectly natural to suspect bullshit. In this first part of a two-part rant, I will take a look at the bottom of our collective shoes to find out just what we&amp;rsquo;ve stepped in, and what we can actually do about it.&lt;/p&gt;</description>
    </item>
    <item>
      <title>The customer isn&#39;t your babysitter</title>
      <link>https://stevenallen.dev/posts/customer_doesnt_care/</link>
      <pubDate>Tue, 13 Aug 2024 16:05:32 -0700</pubDate>
      <guid>https://stevenallen.dev/posts/customer_doesnt_care/</guid>
      <description>&lt;p&gt;&lt;em&gt;&lt;strong&gt;Note: &lt;a href=&#34;https://samsungads.ca/engineering-blog/the-customer-doesnt-care-oh-yes-they-do/&#34;&gt;An edited version of this article was originally published on the Samsung engineering blog&lt;/a&gt;&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;the-customer-doesnt-care-about-that-is-a-poor-excuse-to-be-sloppy&#34;&gt;&amp;ldquo;The customer doesn&amp;rsquo;t care about that&amp;rdquo; is a poor excuse to be sloppy&lt;/h2&gt;&#xA;&lt;p&gt;In my experience, one particular conversation seems to recur frequently: discussions around whether customers value certain technical practices, such as automated testing, sensible logging, or keeping dependencies updated. It’s not uncommon to hear arguments that these practices are unnecessary because “the customer doesn’t care about that.” This perspective is a lie. More than that, it can be harmful, as it dismisses the intrinsic value of good engineering. Whether it&amp;rsquo;s automated tests, sensible logging, or keeping dependencies up-to-date, &amp;ldquo;the customer doesn&amp;rsquo;t care&amp;rdquo; is often used as an excuse to &lt;em&gt;not bother&lt;/em&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>The Six Questions</title>
      <link>https://stevenallen.dev/posts/the_six_questions/</link>
      <pubDate>Wed, 24 Jul 2019 16:40:29 -0700</pubDate>
      <guid>https://stevenallen.dev/posts/the_six_questions/</guid>
      <description>&lt;h2 id=&#34;even-if-you-dont-care-about-the-answers-you-still-need-to-know-what-they&#34;&gt;Even if you don&amp;rsquo;t care about the answers, you still need to know what they&lt;/h2&gt;&#xA;&lt;p&gt;Capitalism, at its core, is all about supply and demand. You have a Thing, and somebody else wants the Thing. So, you arrange a trade. Doesn&amp;rsquo;t matter what you get in return &amp;ndash; services, chickens, dollars, &lt;a href=&#34;https://en.wikipedia.org/wiki/Rai_stones&#34;&gt;the giant stone coin of the Yap islanders&lt;/a&gt; &amp;ndash; you each have something the other wants, so you agree on a mutually beneficial exchange.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Blame</title>
      <link>https://stevenallen.dev/posts/blame/</link>
      <pubDate>Mon, 27 May 2019 16:11:33 +0000</pubDate>
      <guid>https://stevenallen.dev/posts/blame/</guid>
      <description>&lt;h2 id=&#34;a-pointless-destructive-way-to-vent-anger-when-youve-got-a-real-problem&#34;&gt;A pointless, destructive way to vent anger when you&amp;rsquo;ve got a real problem&lt;/h2&gt;&#xA;&lt;p&gt;Oh crap. The BAD THING happened. There&amp;rsquo;s red flashing lights, alarm bells are going off, one of the junior devs is hiding under his desk, the devops guy is breathing into a paper bag, and the project manager is catatonic. You&amp;rsquo;ve got a problem.&lt;/p&gt;&#xA;&lt;p&gt;Or, instead of an all-hands-on-deck emergency, the BAD THING is a day-in, day-out background radiation of annoyance and frustration. It hasn&amp;rsquo;t turned into an immediate, critical problem, but it threatens to turn the office into a Lord of the Flies scenario. Any day now, the QA team is going to fashion office supplies into crude weapons and start hunting the marketing team for food &amp;amp; sport. One of the senior devs will declare themselves a god and start a cult. You&amp;rsquo;ve got a problem.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Chesterton&#39;s fence</title>
      <link>https://stevenallen.dev/posts/chestertons_fence/</link>
      <pubDate>Wed, 03 Apr 2019 17:25:52 -0700</pubDate>
      <guid>https://stevenallen.dev/posts/chestertons_fence/</guid>
      <description>&lt;h2 id=&#34;the-why-of-code&#34;&gt;The &amp;ldquo;why&amp;rdquo; of code&lt;/h2&gt;&#xA;&lt;p&gt;A while back, some (way smarter than me) guy named &lt;a href=&#34;https://en.wikipedia.org/wiki/G._K._Chesterton&#34;&gt;G. K. Chesterton&lt;/a&gt; wrote this:&lt;/p&gt;&#xA;&lt;figure&gt;&#xA;  &lt;blockquote&gt;&#xA;    &lt;p&gt;In the matter of reforming things, as distinct from deforming them, there is one plain and simple principle; a principle which will probably be called a paradox. There exists in such a case a certain institution or law; let us say, for the sake of simplicity, a fence or gate erected across a road. The more modern type of reformer goes gaily up to it and says, &amp;ldquo;I don&amp;rsquo;t see the use of this; let us clear it away.&amp;rdquo; To which the more intelligent type of reformer will do well to answer: &amp;ldquo;If you don&amp;rsquo;t see the use of it, I certainly won&amp;rsquo;t let you clear it away. Go away and think. Then, when you can come back and tell me that you do see the use of it, I may allow you to destroy it.&amp;rdquo;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Fibonacci estimates</title>
      <link>https://stevenallen.dev/posts/fibonacci_estimates/</link>
      <pubDate>Thu, 21 Mar 2019 00:31:59 +0000</pubDate>
      <guid>https://stevenallen.dev/posts/fibonacci_estimates/</guid>
      <description>&lt;h2 id=&#34;the-meeting-where-everythings-made-up-and-the-points-dont-matter&#34;&gt;The meeting where everything&amp;rsquo;s made up and the points don&amp;rsquo;t matter&lt;/h2&gt;&#xA;&lt;p&gt;In Agile™️ software development, it&amp;rsquo;s common to give a Fibonacci estimate for a task. Exactly &lt;em&gt;what&lt;/em&gt; a developer is supposed to be estimating is a subject of debate. In theory, it&amp;rsquo;s supposed to be estimating how difficult a task will be in relation to other tasks. In practice, many project managers use these estimates as a substitute for time. This substitution is foolish and counter-productive.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Rocket science, by any other name, would be just as hard</title>
      <link>https://stevenallen.dev/posts/rocket_science/</link>
      <pubDate>Mon, 11 Mar 2019 20:31:45 -0700</pubDate>
      <guid>https://stevenallen.dev/posts/rocket_science/</guid>
      <description>&lt;h2 id=&#34;unfortunately-the-reality-of-a-project-doesnt-get-easier-just-because-its-called-something-else&#34;&gt;Unfortunately, the reality of a project doesn&amp;rsquo;t get easier just because it&amp;rsquo;s called something else&lt;/h2&gt;&#xA;&lt;p&gt;I&amp;rsquo;ve been in this scenario more than a few times in my career:&lt;/p&gt;&#xA;&lt;p&gt;&lt;em&gt;Product owner:&lt;/em&gt; Hey, we wanna do this Really Hard Thing™, how hard will it be?&lt;/p&gt;&#xA;&lt;p&gt;&lt;em&gt;Me:&lt;/em&gt; It will be really hard, but it can be done&lt;/p&gt;&#xA;&lt;p&gt;&lt;em&gt;Product owner:&lt;/em&gt; What if we call it Really Easy?&lt;/p&gt;&#xA;&lt;p&gt;&lt;em&gt;Me:&lt;/em&gt; Sadly, calling it something else won&amp;rsquo;t change what you&amp;rsquo;re doing&lt;/p&gt;</description>
    </item>
    <item>
      <title>About Me</title>
      <link>https://stevenallen.dev/posts/about/</link>
      <pubDate>Wed, 27 Feb 2019 14:51:18 -0800</pubDate>
      <guid>https://stevenallen.dev/posts/about/</guid>
      <description>&lt;p&gt;My name is Steven Allen, and I&amp;rsquo;m a Vancouver, Canada based software developer with over 10 years of experience. Working as a full-time employee and freelance contractor, I&amp;rsquo;ve seen many companies in various stages of success and failure first-hand. Even if I can&amp;rsquo;t remember all their names, I learned something valuable at each one.&lt;/p&gt;&#xA;&lt;p&gt;You can find me on Github here: &lt;a href=&#34;https://github.com/stevenallen05&#34;&gt;stevenallen05&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://keybase.io/stevenallen&#34;&gt;KeyBase&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://www.linkedin.com/in/steven-allen-15158190/&#34;&gt;LinkedIn&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://stevenallen.dev/index.xml&#34;&gt;RSS&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Waterfallgile</title>
      <link>https://stevenallen.dev/posts/waterfallgile/</link>
      <pubDate>Wed, 27 Feb 2019 14:36:00 -0800</pubDate>
      <guid>https://stevenallen.dev/posts/waterfallgile/</guid>
      <description>&lt;h3 id=&#34;the-worst-possible-way-to-manage-a-project&#34;&gt;The worst possible way to manage a project&lt;/h3&gt;&#xA;&lt;p&gt;Every organization manages their projects differently, even if they use the same terms to describe their strategy. &amp;ldquo;Agile&amp;rdquo;, &amp;ldquo;scrum&amp;rdquo;, &amp;ldquo;kanban&amp;rdquo;, &amp;ldquo;waterfall&amp;rdquo; - these are all just labels, often misapplied. This can make it very difficult to quickly convey how your organization handles itself. However, a pattern I have seen far too often is a Frankenstein-esque mutant hybrid of waterfall and agile I call &lt;em&gt;Waterfallgile&lt;/em&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Stretching the &#34;Tech Debt&#34; Metaphor, Part 2: Escaping the hole</title>
      <link>https://stevenallen.dev/posts/stretching_the_tech_debt_metaphor_part_2/</link>
      <pubDate>Wed, 27 Feb 2019 11:51:34 -0800</pubDate>
      <guid>https://stevenallen.dev/posts/stretching_the_tech_debt_metaphor_part_2/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://stevenallen.dev/posts/stretching_the_tech_deb_metaphor/&#34;&gt;Click here for Part 1: Calculated Risk vs Desperation&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;So you&amp;rsquo;re in trouble. You&amp;rsquo;ve looked around, asked your experts, and you&amp;rsquo;re in the tech debt hole. Depending on how you respond, this could either be very bad, or the best thing that ever happened to your company.&#xA;After lots of experience, conversations with colleagues, and study, I&amp;rsquo;ve found some strategies that tend to work.&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;p&gt;&lt;em&gt;&lt;strong&gt;Be ready to accept defeat&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;m not being dismissive or pithy - I do mean &amp;ldquo;accept that success might not be possible&amp;rdquo;. I&amp;rsquo;ve seen companies that acknowledge they&amp;rsquo;re in deep trouble, do everything right from that point on, and still fail. That&amp;rsquo;s the nature of business. Doing things &amp;ldquo;right&amp;rdquo; is only a modifier that makes success more likely. Take a sobering and honest assessment of the situation. This will get you in the mentality that the future of your business is on the line.&#xA;This is not the time for optimism or grandiose thinking. This is the time to fight like your business depends on it.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Stretching the &#34;Tech Debt&#34; Metaphor, Part 1: Calculated Risk vs Desperation</title>
      <link>https://stevenallen.dev/posts/stretching_the_tech_deb_metaphor/</link>
      <pubDate>Wed, 27 Feb 2019 11:47:47 -0800</pubDate>
      <guid>https://stevenallen.dev/posts/stretching_the_tech_deb_metaphor/</guid>
      <description>&lt;p&gt;&lt;em&gt;&lt;strong&gt;Sometimes, you gotta take on tech debt to keep the lights on&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;As a software developer with over a decade of experience, I&amp;rsquo;ve heard the &amp;ldquo;sometimes you gotta keep the lights on&amp;rdquo; refrain many times. Often, it&amp;rsquo;s from people within a company struggling to ship features. Or worse, people who believe they can&amp;rsquo;t slow down and clean up a mess because they&amp;rsquo;re already slow because they&amp;rsquo;re knee-deep in years of accumulated mess. This is short sighted thinking, and misses the entire point of why it&amp;rsquo;s called tech debt in the first place.&#xA;So I&amp;rsquo;m gonna expand the metaphor for the benefit of people who think developers are just complaining or whining when we say &amp;ldquo;tech debt&amp;rdquo;.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
