<?xml version="1.0" encoding="utf-8" standalone="yes"?><?xml-stylesheet href="/feed_style.xsl" type="text/xsl"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:media="https://www.rssboard.org/media-rss"><channel><title>Dim Factory on DazzLog</title><link>https://blog.dazzlog.de/tags/dim-factory/</link><description>Recent content in Dim Factory on DazzLog</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><copyright>dazz - [Creative Commons Attribution 4.0 International License](https://creativecommons.org/licenses/by/4.0/).</copyright><lastBuildDate>Fri, 11 Sep 2026 09:00:00 +0100</lastBuildDate><atom:link href="https://blog.dazzlog.de/tags/dim-factory/index.xml" rel="self" type="application/rss+xml"/><icon>https://blog.dazzlog.de/logo.svg</icon><item><title>Coding Agents Don't Scale Teams</title><link>https://blog.dazzlog.de/posts/2026-09-11_coding-agents-dont-scale-teams/</link><pubDate>Fri, 11 Sep 2026 09:00:00 +0100</pubDate><guid>https://blog.dazzlog.de/posts/2026-09-11_coding-agents-dont-scale-teams/</guid><description><![CDATA[<p>I&rsquo;m watching Patrick Debois&rsquo; talk <a href="https://www.youtube.com/watch?v=zCJtYuqwm7E"><em>Coding Agents Don&rsquo;t Scale Themselves. Neither Do Your Teams.</em></a> for the third time. He describes a familiar transformation program: hackathons, lunch-and-learns, a shared Slack channel. We know these formats from Agile and DevOps.</p>
<p>And yet a company can run all of them and still depend on a handful of people maintaining private AI workflows.</p>
<p>That gap is what keeps me watching. Underneath it sits one question:</p>
<p><strong>After the hackathon, what happens to the learning?</strong></p>
<p>That&rsquo;s what I want to explore with my company and my clients, including colleagues outside engineering. And I want to understand how we bring people into this change without dismissing the working practices they&rsquo;ve spent their careers building.</p>
<h2 id="sharing-a-prompt-is-not-sharing-the-practice">Sharing a Prompt Is Not Sharing the Practice</h2>
<p>The gap isn&rsquo;t limited to development. A colleague may have found a useful workflow for research, customer communication, or documentation. Someone else is still wondering which parts of their work they&rsquo;d trust a machine with.</p>
<p>Handing over a prompt rarely closes that distance, because its author carries years of judgment that never made it into the instructions. They know which sources to pick, which claims to distrust, and which result needs another pass.</p>
<p>Debois criticizes the idea of educating people and letting &ldquo;a thousand flowers bloom&rdquo;. He also shows what that looks like in practice: one person publishes a skill, another forks it, and soon nobody knows which version to use or who maintains it. A Slack message helps someone discover a skill. It doesn&rsquo;t tell them whether their copy still contains the current authentication rules.</p>
<p>I&rsquo;d keep the workshops. What&rsquo;s missing is a <strong>route from an experiment to a supported workflow</strong>.</p>
<p>DevOps didn&rsquo;t succeed through workshops alone either. It needed shared delivery infrastructure. With agents, there&rsquo;s even more to maintain: instructions, context, and the tools through which our standards shape generated work. Explaining a practice and maintaining the components that apply it are different jobs.</p>
<h2 id="fix-the-system-not-the-output">Fix the System, Not the Output</h2>
<p>Debois advises developers to improve the system when an agent does something it shouldn&rsquo;t. That&rsquo;s where the technical work on a harness meets the organizational question of what we share.</p>
<p>If I keep reshaping the output until it matches what I wanted, I get a usable result, but I leave the conditions that produced the unwanted behavior untouched. Next run, I do the same work again.</p>
<p>Debois directs that effort toward the context and the harness around the agent. The <strong>context</strong> supplies project knowledge and instructions. The <strong>harness</strong> consists of tools, checks, permissions, and feedback loops. It gives the agent a way to act and to find out whether its actions meet the requirements.</p>
<p>I&rsquo;ve been there. In <a href="https://blog.dazzlog.de/posts/2026-01-19_scripts-turn-into-system/">&ldquo;When Scripts Turn into a System&rdquo;</a>, I wrote about an agent deleting my database while helping me move a project to Symfony. Afterwards, I added backups and kept telling the agent that migrations were human-only. Those repeated reminders were exhausting.</p>
<p>Looking back through Debois&rsquo; lens, the real question is where the restriction belongs.</p>
<div class="details admonition tip open">
  <div class="details-summary admonition-title">
    <i class="icon ">&#xf400;</i> I learned<i class="details-icon fas fa-angle-right fa-fw"></i>
  </div>
  <div class="details-content">
    <div class="admonition-content">A comment communicates my intention. A permission boundary prevents the action.</div>
  </div>
</div>
<p>And a restriction that lives only in my setup protects only my work. Built into a maintained execution environment that other teams adopt, it protects them too, without anyone repeating my incident first. That&rsquo;s the multiplier Debois is after: one improvement to a shared system, many people benefiting.</p>
<p>Here&rsquo;s the shift as I read it:</p>
<table>
	<thead>
			<tr>
					<th>The Solo Approach</th>
					<th>The Shared System Approach</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>Personal prompts and workarounds</td>
					<td>Shared context with examples and review criteria</td>
			</tr>
			<tr>
					<td>Repeatedly correcting unwanted output</td>
					<td>Improving the workflow that produces it</td>
			</tr>
			<tr>
					<td>Sharing a successful demo</td>
					<td>Maintaining a path another person can follow</td>
			</tr>
			<tr>
					<td>Looking at one person&rsquo;s speed</td>
					<td>Looking at who benefits from a shared improvement</td>
			</tr>
			<tr>
					<td>Trying to automate more work</td>
					<td>Choosing how much to delegate according to risk</td>
			</tr>
	</tbody>
</table>
<h2 id="five-things-i-want-to-work-on">Five Things I Want to Work On</h2>
<p>This is how I plan to build that shared infrastructure with the people who will use it. It&rsquo;s my reading, not a framework from the talk. And it&rsquo;s not a ladder every department has to climb. How much we delegate stays a decision per workflow.</p>
<h3 id="1-start-with-the-people-who-know-the-work">1. Start with the people who know the work</h3>
<p>Debois describes developers who feel disconnected from their craft when their job turns into prompting and writing specifications. Some find a technical role again by building tools and harnesses for agents.</p>
<p>That applies outside development too. Someone with twenty years of handling difficult customer conversations has good reasons to hesitate before delegating part of it. They know how much depends on context. They may also wonder whether they&rsquo;ll stay responsible for an answer they didn&rsquo;t write.</p>
<p>So start with a task they recognize and look at the output together:</p>
<ul>
<li>Where does the output miss something they consider important?</li>
<li>Which assumptions would they check?</li>
<li>What would make it usable?</li>
</ul>
<p>Their doubts are data. They point to missing information, or to a task that shouldn&rsquo;t be delegated at all.</p>
<p>That only works if disagreement is allowed. If the only acceptable conclusion is &ldquo;the AI workflow works&rdquo;, we lose exactly the experience we asked for. Experienced colleagues should help choose the boundary, not just polish the result.</p>
<h3 id="2-make-the-judgment-shareable">2. Make the judgment shareable</h3>
<p>A prompt rarely contains everything its author knows about using it. A shared workflow should also say what it&rsquo;s for, which inputs it needs, and what to check before accepting the output. A worked example teaches more than another paragraph of advice, especially if it includes a bad result and explains why it fails.</p>
<div class="details admonition note open">
  <div class="details-summary admonition-title">
    <i class="icon ">&#Xf040;</i> Example: drafting customer replies<i class="details-icon fas fa-angle-right fa-fw"></i>
  </div>
  <div class="details-content">
    <div class="admonition-content"><p>&ldquo;Write in the company&rsquo;s tone&rdquo; leaves the important questions open:</p>
<ul>
<li>Which facts may the draft rely on?</li>
<li>Who can approve a refund?</li>
<li>When should the colleague drop the draft and involve someone else?</li>
</ul>
<p>Those boundaries, with examples of how they change a response, <em>are</em> the workflow.</p>
</div>
  </div>
</div>
<p>In engineering, we can encode some of that judgment in tests, linters, and tool permissions. Elsewhere, a source requirement, a review checklist, and an approval step may be the right form. Use whatever helps people do the work. Nobody in finance needs the word &ldquo;harness&rdquo;.</p>
<p>Debois places a company&rsquo;s &ldquo;moat&rdquo; in the knowledge captured in skills, context, and harnesses. For me, that&rsquo;s exactly these domain rules: what makes a result acceptable for <em>this</em> business. Maintained, they outlast any particular tool. And making the repeatable parts explicit shows where experienced people still need to be involved.</p>
<h3 id="3-give-shared-workflows-a-home">3. Give shared workflows a home</h3>
<p>People experimenting bottom-up show what might be useful. They can&rsquo;t settle which data is permitted, which tools are supported, or who is responsible.</p>
<p>Say two developers have built a good AI-assisted code review workflow. To get it off their laptops, someone has to:</p>
<ul>
<li>clarify whether the tool may receive client code</li>
<li>give them time to package it for another team</li>
<li>agree on who handles updates</li>
</ul>
<div class="details admonition warning open">
  <div class="details-summary admonition-title">
    <i class="icon ">&#xf071;</i> The unofficial help desk<i class="details-icon fas fa-angle-right fa-fw"></i>
  </div>
  <div class="details-content">
    <div class="admonition-content"><p>Without that support, the original author ends up answering setup questions, explaining exceptions, and repairing the workflow when something changes, all on top of their actual job.</p>
<p>Sharing an improvement should come with a way to share its maintenance.</p>
</div>
  </div>
</div>
<p>Debois calls the supported options <strong>paved roads</strong>, maintained by platform or Developer Experience teams. For the review workflow, a paved road can start small:</p>
<ul>
<li>a versioned repository with instructions and test cases</li>
<li>an entry in an internal catalog</li>
<li>a review process for changes</li>
</ul>
<p>Another team adopts a known version and contributes back instead of copying a snippet from chat.</p>
<p>But paved roads assume someone to maintain them, and plenty of companies don&rsquo;t have a platform team. In a small company, one team lead might coordinate all of this. The responsibilities need a home. They don&rsquo;t each need a new job title.</p>
<p>And marketing and finance need their own domain knowledge and review boundaries, even when they share tools.</p>
<p>Support also means talking about expectations. If management treats every time-saving experiment as an immediate commitment to higher output, people stop sharing unfinished work and difficulties.</p>
<p>Colleagues should know what we&rsquo;re trying to learn and how we&rsquo;ll discuss changes to their roles. We may not have all the answers yet, but those questions belong in the introduction of a workflow, not after it.</p>
<h3 id="4-learn-from-real-use">4. Learn from real use</h3>
<p>Once someone else uses the workflow, you see which parts still depend on knowledge nobody wrote down.</p>
<p>Debois describes retrospectives shifting toward the system: where did the agent get stuck repeatedly, and what can the team improve?</p>
<p>The same question works outside engineering. If colleagues keep correcting outdated product details in AI-drafted customer replies, don&rsquo;t ask them to be more careful. Look at which product information the workflow supplies and how it stays current.</p>
<p>Debois also names a few signals that show whether a workflow is getting easier to use:</p>
<ul>
<li><strong>Human interventions.</strong> Separate a repeated rescue from an approval we intend to keep. Fewer interventions only count if the work is still acceptable.</li>
<li><strong>Reach of shared improvements.</strong> Who benefits when the shared system gets better.</li>
<li><strong>Cost.</strong> Make it visible and optimize model choice, context, and iteration count. I&rsquo;d put review effort and rework right next to it: a fast first draft is worth little if verifying it takes longer than doing the task.</li>
<li><strong>Downstream load.</strong> Requirements can arrive too slowly, and downstream colleagues can struggle with increased output. Before expanding a workflow, check whether it helps the people receiving its results.</li>
</ul>
<h3 id="5-delegate-according-to-risk">5. Delegate according to risk</h3>
<p>Near the end, Debois uses the term <strong>dim factory</strong>. It borrows from the dark factory: an automated plant where nobody works on the floor, so the lights can stay off. For software, that means agents taking requirements through implementation, testing, and deployment without human intervention.</p>
<p>Debois dims that ambition. People choose how much autonomy to allow based on the risk of a given task. Some activities run with little involvement; others keep human judgment and approval. In the talk, it&rsquo;s a metaphor, not an operating model.</p>
<p>Donovan Crewe describes the idea in more detail in <a href="https://www.linkedin.com/pulse/dim-factory-lumenalta-k5rxc/">&ldquo;The Dim Factory&rdquo;</a>. In his version, agents are components in a controlled pipeline with defined inputs, validation criteria, and enforced constraints. Engineers design those constraints, monitor behavior, and intervene when the system reaches the edge of its capabilities.</p>
<p>I find that a useful picture of the engineering involved: a security rule becomes a pipeline check, a release boundary becomes an approval gate. But those controls address specific risks. They don&rsquo;t make every generated result trustworthy.</p>
<p>For colleagues outside engineering, the practical question is simpler: which parts of this workflow can we delegate, and where does a person stay involved? We don&rsquo;t need to agree on a factory as the destination to answer that.</p>
<p>The consequences differ, so the delegation does too:</p>
<table>
	<thead>
			<tr>
					<th>Can run with more autonomy</th>
					<th>Keeps a person involved</th>
			</tr>
	</thead>
	<tbody>
			<tr>
					<td>An AI draft for internal discussion</td>
					<td>A customer commitment</td>
			</tr>
			<tr>
					<td>An agent working in an isolated environment</td>
					<td>A production change</td>
			</tr>
	</tbody>
</table>
<p>That requires knowing who or what changed something, whether the result meets our requirements, and what happened when it failed. Debois connects this to auditing, verifiers, and situational awareness.</p>
<p>The people using a workflow need to know where to inspect the work, when to pause, and who resolves a problem. Then we adjust delegation per task, based on experience. Experienced colleagues help decide when the evidence is strong enough to hand over more.</p>
<h2 id="improvements-need-a-way-back">Improvements Need a Way Back</h2>
<p>As a consultant, I help programming teams work with AI together. Debois gives me a way to think about the infrastructure around that work.</p>
<p>Here&rsquo;s the exchange I want to establish:</p>
<ol>
<li>A second team adopts the shared review workflow.</li>
<li>They notice it misses an authorization check.</li>
<li>They add a test case and improve the review instructions in a pull request.</li>
<li>After review, the first team gets that improvement too.</li>
</ol>
<p>That&rsquo;s what shared skills, versioned project knowledge, and tested harness components are for.</p>
<p>Leadership and platform support give that exchange continuity: ownership, maintenance time, and a place to publish, find, and improve these capabilities. The people experimenting contribute their experience. They don&rsquo;t have to carry adoption across the company alone. And people who join later bring domain knowledge and new cases that improve the shared approach in turn.</p>
<p>After the third viewing, I&rsquo;m back at the question I started with. The hackathon ends. The learning needs a route to other teams. And a way back.</p>
<p>We still have to decide which capabilities we maintain together and which belong close to a team&rsquo;s domain. But I know how I&rsquo;ll judge the result:</p>
<p><strong>Not by the original author&rsquo;s demo, but by whether another team can use it and feed an improvement back.</strong></p>
]]></description><media:thumbnail url="https://blog.dazzlog.de/hero.png"/></item></channel></rss>