<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"><channel><description>I make software. i.AI, NHS, DfE&#xA;https://mechanicalsurvival.com</description><link>https://bsky.app/profile/duncanjbrown.com</link><title>@duncanjbrown.com - Duncan Brown</title><item><link>https://bsky.app/profile/duncanjbrown.com/post/3moco24bdqc2h</link><description>AI chainsaws, continuous finishing, and safety in numbers https://mechanicalsurvival.com/blog/claude-code-is-a-chainsaw/&#xA;https://mechanicalsurvival.com/blog/claude-code-is-a-chainsaw/?q=1</description><pubDate>15 Jun 2026 06:33 +0000</pubDate><guid isPermaLink="false">at://did:plc:adcyvgteup64mae5wc5umha5/app.bsky.feed.post/3moco24bdqc2h</guid></item><item><link>https://bsky.app/profile/duncanjbrown.com/post/3mkhq5shwdc2c</link><description>I guess any code hosting platform could now dramatically grow its user base and code portfolio by offering free AI security scans for open source software.</description><pubDate>27 Apr 2026 09:13 +0000</pubDate><guid isPermaLink="false">at://did:plc:adcyvgteup64mae5wc5umha5/app.bsky.feed.post/3mkhq5shwdc2c</guid></item><item><link>https://bsky.app/profile/duncanjbrown.com/post/3mgtzo5lcqs2h</link><description>It’s frustrating when reports like this cite the “highly interoperable nature” of commercial software as a given. Interoperability doesn’t mean “everything in one place”—it means the opposite. But redefining it allows vendors to present a magical solution.&#xA;&#xA;[contains quote post or other embedded content]</description><pubDate>12 Mar 2026 08:54 +0000</pubDate><guid isPermaLink="false">at://did:plc:adcyvgteup64mae5wc5umha5/app.bsky.feed.post/3mgtzo5lcqs2h</guid></item><item><link>https://bsky.app/profile/duncanjbrown.com/post/3mgsrd2xzgk2e</link><description>corollary: if you run an open source library with any users at all, you are now in a vulnerability-finding arms race with those who will mechanically find and exploit security issues in your code… and embarrassingly, any software that depends on it&#xA;&#xA;[contains quote post or other embedded content]</description><pubDate>11 Mar 2026 20:52 +0000</pubDate><guid isPermaLink="false">at://did:plc:adcyvgteup64mae5wc5umha5/app.bsky.feed.post/3mgsrd2xzgk2e</guid></item><item><link>https://bsky.app/profile/duncanjbrown.com/post/3mfceyb73ts2v</link><description>“bottlenecks are not natural obstacles – they are, in most cases, the consequence of increasing production” 💎&#xA;&#xA;[contains quote post or other embedded content]</description><pubDate>20 Feb 2026 15:04 +0000</pubDate><guid isPermaLink="false">at://did:plc:adcyvgteup64mae5wc5umha5/app.bsky.feed.post/3mfceyb73ts2v</guid></item><item><link>https://bsky.app/profile/duncanjbrown.com/post/3mdct2rmdmc22</link><description>“We continue to immediately ban and publicly ridicule everyone who submits AI slop to the project.”&#xA;&#xA;[contains quote post or other embedded content]</description><pubDate>26 Jan 2026 08:25 +0000</pubDate><guid isPermaLink="false">at://did:plc:adcyvgteup64mae5wc5umha5/app.bsky.feed.post/3mdct2rmdmc22</guid></item><item><link>https://bsky.app/profile/duncanjbrown.com/post/3mbmuv7twjs2r</link><description>My sense is that the Test and Learn movement in the public sector anchors much more on “build-and-test” than “describe-and-defend” as this essay sets them out… possibly to its detriment?&#xA;&#xA;[contains quote post or other embedded content]</description><pubDate>04 Jan 2026 21:34 +0000</pubDate><guid isPermaLink="false">at://did:plc:adcyvgteup64mae5wc5umha5/app.bsky.feed.post/3mbmuv7twjs2r</guid></item><item><link>https://bsky.app/profile/duncanjbrown.com/post/3mb5nlecpic2k</link><description>“You want your structural engineers to be drawing, not laying bricks, after all. I don’t know if structural engineering works like this, but software engineering doesn’t. In practice, architecture advice often has to be ignored by the people on the ground.”&#xA;&#xA;https://www.seangoedecke.com/you-cant-design-software-you-dont-work-on/</description><pubDate>29 Dec 2025 20:14 +0000</pubDate><guid isPermaLink="false">at://did:plc:adcyvgteup64mae5wc5umha5/app.bsky.feed.post/3mb5nlecpic2k</guid></item><item><link>https://bsky.app/profile/duncanjbrown.com/post/3maxqqnzwzs2g</link><description>My 2025 #yearnote as—sorry!—a listicle.&#xA;&#xA;mechanicalsurvival.com/blog/2025/&#xA;https://mechanicalsurvival.com/blog/2025/</description><pubDate>27 Dec 2025 11:54 +0000</pubDate><guid isPermaLink="false">at://did:plc:adcyvgteup64mae5wc5umha5/app.bsky.feed.post/3maxqqnzwzs2g</guid></item><item><link>https://bsky.app/profile/duncanjbrown.com/post/3m7incis2rs2i</link><description>I disagree with the conclusions of this excellent, reasonable article by @zoescaman.bsky.social https://zoescaman.substack.com/p/the-palantir-model</description><pubDate>08 Dec 2025 18:18 +0000</pubDate><guid isPermaLink="false">at://did:plc:adcyvgteup64mae5wc5umha5/app.bsky.feed.post/3m7incis2rs2i</guid></item><item><link>https://bsky.app/profile/duncanjbrown.com/post/3m67tkc5cuc2t</link><description>This really resonates. Meetings are the synchronisation penalty public servants pay for an overwhelmingly synchronous, distributed system of management. The “meeting culture” is not optional—it expresses a cultural void where autonomy can’t flourish.&#xA;&#xA;[contains quote post or other embedded content]</description><pubDate>22 Nov 2025 12:50 +0000</pubDate><guid isPermaLink="false">at://did:plc:adcyvgteup64mae5wc5umha5/app.bsky.feed.post/3m67tkc5cuc2t</guid></item><item><link>https://bsky.app/profile/duncanjbrown.com/post/3m45sssrwhs2z</link><description>A few ideas on what &#34;good software&#34; (not &#34;good code&#34;!) is, touching ethics, interop, commercials and functionality&#xA;&#xA;🧵&#xA;&#xA;[contains quote post or other embedded content]</description><pubDate>27 Oct 2025 06:41 +0000</pubDate><guid isPermaLink="false">at://did:plc:adcyvgteup64mae5wc5umha5/app.bsky.feed.post/3m45sssrwhs2z</guid></item><item><link>https://bsky.app/profile/duncanjbrown.com/post/3m3u4qsre7k2o</link><description>&#34;[Open standards] can feel like a burden to the participants. They should! The alternative is each product imposes its incompatible opinions directly on the users rather than working through the trade-offs with competitors first.&#34;&#xA;&#xA;Yet as we outsource &#34;the work&#34; to suppliers, we outsource this too.&#xA;&#xA;[contains quote post or other embedded content]</description><pubDate>23 Oct 2025 10:13 +0000</pubDate><guid isPermaLink="false">at://did:plc:adcyvgteup64mae5wc5umha5/app.bsky.feed.post/3m3u4qsre7k2o</guid></item><item><link>https://bsky.app/profile/duncanjbrown.com/post/3m3mlochpc22w</link><description>This morning&#39;s AWS outage prompted reflections in NHSE towers that &#34;disaster recovery&#34; and &#34;inclusive services&#34; directly overlap. For instance, the Record a vaccination service have designed a paper-only data capture process for when the internet is unavailable&#xA;&#xA;[contains quote post or other embedded content]</description><pubDate>20 Oct 2025 10:18 +0000</pubDate><guid isPermaLink="false">at://did:plc:adcyvgteup64mae5wc5umha5/app.bsky.feed.post/3m3mlochpc22w</guid></item><item><link>https://bsky.app/profile/duncanjbrown.com/post/3m3hablb4ok2k</link><description>Clichés take hold in political language, a vicious cycle that runs through campaign speeches, through citizens’ expectations, and down into the software we build or procure by cliché, whose accordingly poor performance invites further calls for simplification. https://mechanicalsurvival.com/blog/design-by-cliche/</description><pubDate>18 Oct 2025 07:11 +0000</pubDate><guid isPermaLink="false">at://did:plc:adcyvgteup64mae5wc5umha5/app.bsky.feed.post/3m3hablb4ok2k</guid></item><item><link>https://bsky.app/profile/duncanjbrown.com/post/3m2eex3epa227</link><description>Why yes that IS a @charity.wtf sticker on my work notebook! 💖</description><pubDate>04 Oct 2025 10:31 +0000</pubDate><guid isPermaLink="false">at://did:plc:adcyvgteup64mae5wc5umha5/app.bsky.feed.post/3m2eex3epa227</guid></item><item><link>https://bsky.app/profile/duncanjbrown.com/post/3m2cct7nef22k</link><description>Why I don&#39;t believe in &#34;small giants&#34;: https://mechanicalsurvival.com/blog/team-dynamics-after-ai/</description><pubDate>03 Oct 2025 14:48 +0000</pubDate><guid isPermaLink="false">at://did:plc:adcyvgteup64mae5wc5umha5/app.bsky.feed.post/3m2cct7nef22k</guid></item><item><link>https://bsky.app/profile/duncanjbrown.com/post/3lv3jgy7ezk2x</link><description>If prompts are all we have left to record our intentions when we&#39;re programming, we should keep them. Automatically, if possible. https://mechanicalsurvival.com/blog/prompts-are-design-documents/</description><pubDate>29 Jul 2025 06:52 +0000</pubDate><guid isPermaLink="false">at://did:plc:adcyvgteup64mae5wc5umha5/app.bsky.feed.post/3lv3jgy7ezk2x</guid></item><item><link>https://bsky.app/profile/duncanjbrown.com/post/3ltki6cv2ek2r</link><description>In praise of AI applications that can finish. https://mechanicalsurvival.com/blog/structuring-unstructured/</description><pubDate>09 Jul 2025 18:49 +0000</pubDate><guid isPermaLink="false">at://did:plc:adcyvgteup64mae5wc5umha5/app.bsky.feed.post/3ltki6cv2ek2r</guid></item></channel></rss>