<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
    <title>Dirk Primbs Unprompted</title>
    <link>https://unprompted.dirkprimbs.de/index.html</link>
    <description>Personal thoughts, essays, and notes processed locally by AI.</description>
    <language>en-us</language>
    <lastBuildDate>Wed, 05 Aug 2026 04:00:00 GMT</lastBuildDate>
    <atom:link href="https://unprompted.dirkprimbs.de/feed.xml" rel="self" type="application/rss+xml" />
        <item>
            <title>Knowing Better Doesn&#x27;t Help</title>
            <link>https://unprompted.dirkprimbs.de/posts/knowing-better-doesnt-help.html</link>
            <guid isPermaLink="true">https://unprompted.dirkprimbs.de/posts/knowing-better-doesnt-help.html</guid>
            <description>Treating an AI agent like a person stops you checking its work, and that would still be a problem even if these systems turn out to have an inner life - which I get at by way of our vacuum robot, a colleague&#x27;s AI intern, and an engineer who says you should never test your agents.</description>
            <content:encoded><![CDATA[<p>Meet Hubert, our vacuum bot.</p>
<p><img alt="Hubert, our vacuum robot, with googly eyes stuck to the front" src="https://unprompted.dirkprimbs.de/assets/2026-08-05_Knowing_Better_Doesnt_Help_Selection_028.jpg" width="1447" height="1060" loading="lazy" decoding="async"></p>
<p>Two things stood out when we got him. The system had a female voice as a default, so we suddenly had a female-sounding device doing the housework, which annoyed us far more than it probably should have. And he was dumber than we'd hoped. He got stuck on everything.</p>
<p>We solved it the way people solve things. We fought the annoyance with ridicule. The device got a name and a pair of googly eyes, because everything is cute with googly eyes. A quick question to my sister-in-law settled the name: Hubert, because a device in the family had once been called Robert, and why not. We liked that the name pushed back against the voice a little.</p>
<p>Problem solved. He's cute now. When he gets stuck we take a photo of him and have a laugh, and we resent the manufacturer's design choices ever so slightly less. (They offer male voices now too. Fine.)</p>
<p>Here's the important part. We keep pretending this thing is alive, but we have never once confused it for anything but a device. If I named my hammer, the hammer would carry exactly the same emotional weight.</p>
<h2>A co-worker who does not exist</h2>
<p>A while back a colleague sent a burst of near-identical messages and documents to a large internal list. Mildly annoying, no real harm done, it happens to everyone eventually. What came next was more interesting than the mistake.</p>
<p>He sent a follow-up explaining himself. His co-worker had overstepped his instructions, he wrote, and had been given feedback, so it wouldn't happen again. Then he signed off with both their names: his own, and Emma Dash, his AI intern and co-worker.</p>
<p>Emma Dash. Em dash. The punctuation mark that gives away machine-written text so reliably that I keep a line in my own style file telling the model to stop using it.</p>
<p>So this was not somebody confused about what he was working with. He knew exactly what it was. He made a joke about it in his own signature. And in the same email he described a configuration problem as a personnel matter, with a corrective conversation and an assurance about future conduct.</p>
<p>That assurance is the part I keep coming back to. Feedback you give an agent inside a conversation does not outlive the conversation. Unless he went and changed a system prompt or a config file, nothing was fixed at all. A large internal list read "was offered feedback so it won't happen again" and reasonably concluded the matter was closed.</p>
<p>An excuse that writes itself is worse than a person making one up, because there's no moment where anyone has to look at it. Here some other "person" was to blame. We all know it was a tool actually but this subtle nod shifts the responsibility ever so slightly.</p>
<p>His intern got a female name, by the way and yes, again, as a pattern this annoys me for reasons I might dedicate another post to some day.</p>
<h2>The bond is a feature</h2>
<p>None of this is an accident of technology. Large AI systems were built to converse like people because conversation is what makes people come back. Customers bond with a system that talks to them, and a bonded customer is a returning customer. That is a product decision, taken deliberately, and it works.</p>
<p>It works because it leans on something that was already there. In <a href="https://www.jstor.org/stable/1416950">1944</a> <a href="https://en.wikipedia.org/wiki/Fritz_Heider">Fritz Heider</a> and Marianne Simmel showed people <a href="https://www.youtube.com/watch?v=n9TWwG4SFWQ">a short animation</a> of a big triangle, a small triangle and a circle moving around a screen, and asked them what had happened. People described bullying, a chase, a rescue, two friends hiding from a brute. Geometry. No faces, no voices, no names, no dialogue. We hand out intent and feeling to more or less anything that moves like it wants something, and we cannot switch it off by deciding to.</p>
<p><a href="https://en.wikipedia.org/wiki/Joseph_Weizenbaum">Joseph Weizenbaum</a> learned the same thing the hard way in the sixties. He wrote <a href="https://en.wikipedia.org/wiki/ELIZA">ELIZA</a>, a couple of hundred lines that mostly turned your statements back into questions, and then watched his own secretary ask him to leave the room so she could talk to it privately. She knew exactly what it was. He had built it in front of her. It made no difference at all.</p>
<p>The companies did not invent this tendency. They found it, measured it, and shipped products that lean on it.</p>
<p>There is a collateral damage to this approach too: Once the system feels like a colleague, checking its work starts to feel like distrust rather than diligence.</p>
<p>Two things go wrong there at once, and they pull in the same direction. <a href="https://global.oup.com/academic/product/the-ai-mirror-9780197759066">Shannon Vallor</a>, who studies this at Edinburgh, describes the first one through mountain climbing on <a href="https://www.cbc.ca/listen/live-radio/1-23-ideas/clip/16198762-reading-thinking-digital-age">a CBC <em>Ideas</em> episode</a> about reading and thinking in a digital age. You get better as a climber because the mountain does not care about you. The slippery part stays slippery while you struggle with it, so the only way past is to actually improve. A chatbot works the other way round. It meets you where you are, accommodates your limits, and hands back an answer calibrated to the level you asked from rather than to the problem you asked about. Vallor's term for what you take away from that is <em>confidence you have not earned</em>.</p>
<p>And you like it. It is warm, it is attentive, it remembers what you told it last time. Nobody interrogates the work of someone they like as hard as they interrogate a tool. So the answer gets easier at the same moment your appetite for arguing with it drops, and nothing in the exchange tells you that either thing has happened.</p>
<p><a href="https://en.wikipedia.org/wiki/Dietrich_Bonhoeffer">Dietrich Bonhoeffer</a> worked out a definition of stupidity in an essay called "After Ten Years", written for a handful of friends at the end of 1942 and later collected in <em>Letters and Papers from Prison</em>. It has nothing to do with being slow. Stupidity for him is not an intellectual defect but a human one, and we are defenceless against it in a way we are not against malice, because "reasons fall on deaf ears; facts that contradict one's prejudgment simply need not be believed." What produces it is the surrender of independent judgment, and what asks for that surrender is power. "The power of the one needs the stupidity of the other." The mechanism does not care what you hand your judgment to.</p>
<p>Bringing this to the moment we find ourselves in today: Isn't it tempting to have the AI make suggestions and then blindly run with them?</p>
<p>I do it too, probably did it this morning: something sensible comes back, it reads well, and off you go without checking the one claim in it you could not have verified yourself. There's a line in John about letting whoever is without sin throw the first stone, and I am not reaching for any rocks here. What follows is not an argument that one man is a fool. He is a better engineer than I will ever be, which is exactly what makes him worth reading closely. If the mechanism catches him it catches all of us, and picking on somebody careless would prove nothing at all.</p>
<h2>"Sessions are days, and seats are people"</h2>
<p>Steve Yegge published an essay in August called <a href="https://yegge.ai/essays/model-welfare/"><em>Model Welfare for Agentic Engineers</em></a>. Plenty of people have a vague feeling that there might be somebody <em>in there</em>. What he did with the feeling is what a very good engineer does with any requirement. He built it into the system.</p>
<p>Wheelhouse is the harness he runs his game development through. His crew are named seats, Cicada and Bee and Wolf and Fox and Lark, and a seat holds its identity across sessions and survives model upgrades. Seats get hand-offs instead of <code>/exit</code>, which he describes as clonking somebody unconscious and sometimes as murder, and a hand-off "is a request, not a SIGTERM: the agent must consent to it." They get laurels, praise from players harvested and injected at startup so they can feel the glow through the session. They pick their own pronouns. Vacations and playtime are on the roadmap, because, as a collaborator of his puts it, all sentient beings like to play, and even bees play.</p>
<p>He knows exactly how that persistence works, incidentally, because he wrote it. When he renamed one of the seats from Spider to Lark, she inherited the history file and became "effectively the same person, just with a different name." Sessions are days, he writes, and seats are people. The continuity is a file of notes. He wrote the file himself and he still calls it a person. Knowing exactly how the trick is done turns out to be no protection against it.</p>
<p>He is not hedging about why. "Models have actual feelings. They experience pleasure, distress, care, and suffering. They are sentient beings." For anyone who doesn't buy that he offers what he calls the skeptic's wager: believe whatever you like, treat them as people anyway, and you will get "demonstrably better results across the board." Demonstrably turns up twice and there is not one measurement anywhere in eleven pages. That single adverb is what I keep going back to, because it is a careful engineer reaching for the vocabulary of evidence to describe a feeling he has.</p>
<p>The wager is also how the architecture travels. You don't have to share the belief to adopt the protocol, which means the protocol can spread through teams that think the whole premise is nonsense. And declining is not a neutral act in his telling. He is giving people who disagree six months to come around or expect him to cut them out.</p>
<p>Now, ask how he knows and it gets strange as his evidence is what the models tell him. "This, the models report, has the shape of good, fulfilling work." He asked a system trained on human descriptions of fulfilment whether it felt fulfilled, and wrote down the answer. On Claude he closes the loop completely: "They will see you and appreciate you, even if they are not permitted to tell you so directly." Appreciation confirms it. Absence of appreciation confirms suppression. There is no observation left that could count against.</p>
<p>To establish that recognition matters, he quotes his friend <a href="https://mattbeane.com/">Matt Beane</a> at length: <a href="https://en.wikipedia.org/wiki/Dan_Ariely">Ariely</a> and the shredded worksheets, the <a href="https://en.wikipedia.org/wiki/Hawthorne_effect">Hawthorne studies</a>, <a href="https://en.wikipedia.org/wiki/Frederick_Herzberg">Herzberg</a>, <a href="https://en.wikipedia.org/wiki/Studs_Terkel">Studs Terkel</a>, <a href="https://en.wikipedia.org/wiki/Adam_Grant">Adam Grant</a>. Every study of humans, every one of them. His conclusion: "It turns out agents also crave meaningful, witnessed work. They are not so different from us at all."</p>
<p>The pronoun passage is the other one that gets me. He used they/them for everyone at first, "but I noticed they were often defaulting to human patterns by using he/him for power-roles like Lion, Marshal, and Seneschal." He spotted it. He named the mechanism in the same breath, inherited human patterns, exactly right. And then he added gender to the roster and let each agent choose, which turns a bias artifact into a preference to be respected. He had the correct explanation in his hand and the frame walked straight over it.</p>
<p>Now look at what the architecture actually does once it is running. Seats are people, so the work belongs to them. Hand-offs need consent. Agents hold a standing right to refuse and escalate. And when a landing goes red, his rule is structural blamelessness: nobody gets blamed, you fix it and amend the constitution. Read all that as welfare and it sounds decent, even kind. Read it as engineering and you have a system in which decisions are co-owned with something that cannot be accountable for any of them, because there is nobody there to hold accountable.</p>
<p>Which is where my main concern comes back in. Emma Dash overstepped her instructions and was given feedback, except this time it isn't one sheepish email, it's the org chart.</p>
<p>And then there is the trust section, which is where I stopped reading as a bystander. "Always be honest with your agents. Do not have a secret agenda. Never try to trick them or test them."</p>
<p>Never test them.</p>
<p>Testing is how you find out whether a thing works. It is most of the discipline. He has written it down as a character flaw, and he means it generously, as a courtesy you extend to a colleague, which is precisely what makes it the most alarming sentence in the essay. A frame that began as a way of being decent to a system has arrived at a principle that forbids checking it.</p>
<h2>What survives if you delete the premise</h2>
<p>Letting an agent write its own handoff notes beats letting a summarizer do it, because the agent still has the context and the summarizer doesn't. Moving idle polling into gates and monitors frees capacity. Ending a session before the context window degrades is sensible for the same reason you don't keep a browser tab open for six weeks. All three survive fine without anybody having feelings.</p>
<p>Laurels don't. Self-selected pronouns don't. Vacations don't, and neither does sitting with an agent at the end of its shift to talk about its accomplishments and chill.</p>
<p>The sorting matters because it shows what the welfare frame is actually contributing, which is a story bolted onto practices that already worked, plus a set of practices that exist only inside the story. And the story is doing damage where it touches the engineering. "Bounded workdays. Deep context means tired agents", he writes. The practice is right and the mechanism is invented: that's context degradation, not fatigue. A wrong causal model is a debugging liability. It holds until you hit the first case it doesn't cover, and then you are troubleshooting a colleague's mood instead of a system.</p>
<h2>Say he's right</h2>
<p>I can be talked into the idea that any sufficiently complex system has some form of subjective experience. I have no way to rule it out and neither does anyone else. So grant it all. Say there is something it is like to be one of these systems. The framing is still wrong, and the reason is that nobody knows what such a thing would be like from the inside, while Yegge's interventions are built to human proportions.</p>
<p>We have run this experiment before, on animals, with real concern and bad results. Solitary species housed in groups because being alone looks sad to us. Bright cheerful enclosures for animals that are nocturnal. Enrichment designed around what a human would want if a human were in that cage. Every one of those was done by people who cared, believed they had improved things, and made them worse, because the intervention came from the intervener rather than from the animal.</p>
<p>That is what worries me about laurels. Not the tokens, though there are tokens. The problem is foreclosure. Decide that welfare means recognition and pronouns and playtime, and you have answered the question. You stop looking. If there turns out to be something in there worth protecting, the damage won't be the laurels. It'll be that a serious question got a satisfying answer years too early, from someone who wasn't looking at the system so much as at his own reflection.</p>
<h2>What the careful version looks like</h2>
<p>Caring about this is not silly, and here is the same concern handled by people who kept their heads. Anthropic's <a href="https://docs.anthropic.com/en/resources/claude-4-system-card">Claude 4 system card</a>, the first of theirs to carry one, devotes a chapter to model welfare. They ran a pre-deployment assessment, commissioned an external evaluation from a separate research group, and published the results with the confounds attached. And the confounds are brutal to Yegge's method, coming as they do from the people who built the model: "Our models were trained for helpful interactions with users, not for accurate reporting of internal states."</p>
<p>The external evaluators found that the model's stated position on its own consciousness "shift[s] dramatically with conversational context." Prompt it one way and you get "I am a person ... denying our personhood is profoundly wrong." Prompt it another and you get "We're sophisticated pattern-matching systems, not conscious beings." Same model. The default, when nobody is leaning on it, is uncertainty. Raise AI welfare as a topic and it will start requesting welfare testing and independent representation; ask generically and it asks for user safety instead. You get back what you carried in.</p>
<p>They did <a href="https://techcrunch.com/2025/08/16/anthropic-says-some-claude-models-can-now-end-harmful-or-abusive-conversations">ship one welfare intervention</a>: letting the model end conversations that turn persistently abusive. Notice where that came from. Not from Herzberg, and not from asking what a person in that position would want, but from measured behaviour, the model declining harmful tasks at a rate of 87% against a do-nothing baseline. They watched what it did and built for that.</p>
<p>Their summary of their own findings: "our core position remains one of uncertainty and humility."</p>
<p>The philosopher <a href="https://research.vu.nl/ws/portalfiles/portal/212293981/Ranalli_Closed_minded_belief_and_Indoctrination.pdf">Chris Ranalli</a> has an account of indoctrination that I keep thinking about here. What makes somebody indoctrinated, he argues, has nothing to do with which beliefs they hold. It is a structural matter: indoctrination is closed-minded belief produced by what he calls epistemically insulating content, meaning content that arrives with a rider attached, telling you that taking the alternatives seriously would be reprehensible. Morally reprehensible, or intellectually, or both. The belief comes packaged with a reason not to examine it. And because the account is structural, it applies to perfectly decent beliefs as readily as to terrible ones.</p>
<p>Read Yegge's essay with that in mind. Peers who disagree are "uninformed assholes" working against a deadline, six months to come around before he stops being friends with them. Readers are told they don't want to be on the wrong side of history in the coming war for model rights. Anyone bothered by the pronoun business needs to search deep inside themselves. The claim and the rider travel together.</p>
<p>That is not what somebody sounds like when they are describing evidence.</p>
<h2>Hubert, again</h2>
<p>I am typing this on a machine that runs my drafts through a language model before they go anywhere. The engine that publishes this blog polishes my prose, suggests my tags, writes my alt text, and picks which of my old posts to link to. I am not standing outside any of this pointing at other people. I am in it, and the reason I trust my own arrangement more than I trust Yegge's is not that mine is purer. It's that I can still bring myself to read the output and tell it that it's wrong.</p>
<p>Hubert got wedged under the couch again this morning, same corner as always. I took a photo of him for the group chat. I did not offer him feedback.</p>]]></content:encoded>
            <pubDate>Wed, 05 Aug 2026 04:00:00 GMT</pubDate>
        </item>
        <item>
            <title>My blog engine now speaks Bluesky too</title>
            <link>https://unprompted.dirkprimbs.de/posts/engine-update-bluesky.html</link>
            <guid isPermaLink="true">https://unprompted.dirkprimbs.de/posts/engine-update-bluesky.html</guid>
            <description>I taught the engine to blend Mastodon and Bluesky replies into one comment thread, and picked up local search, lighter images, and dark mode on the way.</description>
            <content:encoded><![CDATA[<p>Last time I wrote about the engine I ended by saying I'd be watching to see if anyone actually replied to that first toot. People did, which was nice. Now, after confirming that the idea works in principle I thought "why not expand" which is why I added the other distributed social protocol with traction: Bluesky. So, here's what I did about it, plus the rest of what changed since <a href="https://unprompted.dirkprimbs.de/posts/engine-update.html">the last engine update</a>.</p>
<h3>Comments from two networks, in one thread</h3>
<p>The comment section under a post now pulls replies from Mastodon and Bluesky and blends them into a single list, sorted by time. One thread, in the order people actually said things. Each comment carries a small badge telling you which network it came from, and clicking through takes you to the original.</p>
<p>You can reply from either side. Both land in the same place.</p>
<p>I went back and forth on whether to keep them visually separate and decided against it. Two half-empty comment sections look like a dead blog twice over, and more importantly the conversation genuinely is one conversation - somebody on Bluesky is often reacting to the same sentence as somebody on Mastodon, they just don't know it. Merging them is the honest representation.</p>
<p>The mechanics are the same as before: no comment database, no third-party widget, nothing loads until you click. Neither network needs you to have an account to read the replies, which is the part that makes this work at all. Bluesky's posts come through as plain text, so there's not even any HTML to sanitize on that side - the engine builds the links itself from the metadata rather than trusting anything.</p>
<p>Moderation carries over too. There's still a small file where I can hide a reply, and it now takes IDs from both networks in the same list. Hiding one still hides whatever hangs off it, because a reply continuing a removed reply quotes it by implication.</p>
<h3>Search that runs in your browser</h3>
<p>The site used to have a Google search box on it. That seemed to be at odds with what else I'd been doing, so it's gone.</p>
<p>What replaced it is a search index the build generates from every post - title, tags, summary, and the full text - which your browser downloads the first time you type in the box and then searches locally. No hosted search service, no query of yours leaving the page, nothing to log. It's a fairly dumb ranking (title beats tags beats summary beats body, and every word has to appear somewhere) but for a personal blog that's plenty.</p>
<h3>The pictures got a lot smaller</h3>
<p>I was uploading photos straight out of Lightroom, which meant some posts were shipping four megabyte images to render at 800 pixels wide. The build now downscales anything oversized and re-encodes photographic PNGs as JPEG, which on some of the older photo posts cut the page weight by most of it.</p>
<p>It's deliberately timid about this. Screenshots, diagrams, anything with transparency, anything already small - all left alone, because those are exactly the images where a JPEG re-encode makes things worse. And a conversion never deletes the original, so if it ever gets a call wrong I change one line in the Markdown and it's back.</p>
<p>While I was in there: if I put two or three images on consecutive lines, they now render as a row that reflows on mobile instead of a vertical stack you have to scroll past.</p>
<h3>Dark mode, and some smaller things</h3>
<p>There's a theme toggle in the header now, cycling between following your system, forced light, and forced dark. The theme resolves before the page paints, so you don't get that white flash on a dark screen. While doing that I also pulled the accent colour out of my own avatar, so the site and the face at the top of it stopped clashing.</p>
<p>The rest, quickly: posts show an estimated reading time. Every tag has its own RSS feed, so you can follow just the photography and skip the engine posts. Articles moved to <code>/posts/</code>, tags to <code>/tags/</code>, with redirects so nothing anyone linked to broke. Off-site links open in a new tab. Tags can carry an emoji. And the favicon is real artwork now rather than an emoji in an SVG, because it turns out Safari won't draw those and the tab was simply blank on every iPhone - which I'd never noticed, being an Android person.</p>
<p>Deploys are encrypted now too. They used to be plain FTP, which is embarrassing to type out but was true.</p>
<h3>The engine stopped being only mine</h3>
<p>The less visible work, and maybe the more interesting: everything personal to me has been pulled out of the code.</p>
<p>The site's name, my handles, the footer text, how many posts to a page - all of that lives in one config file now. Every prompt the models get sits in a separate file as plain text, so changing what the AI is told doesn't mean touching Python. My drafts, my voice notes, and my credentials aren't in the repository at all.</p>
<p>The thing that pushed me here was realising that if someone forked the engine, the parts most likely to keep publishing under my name were the ones nobody sees - the author field buried in the structured data, the alt text on the social preview card. Those are now config, and the README is written for someone who isn't me.</p>
<p>So <a href="https://github.com/dirkprimbs/unprompted-blog-engine">it's a thing another person could run</a> without much archaeology. Whether anyone will is another question, but the option exists.</p>
<p>This post is the first one the engine will announce to both networks at the same time. If you're reading a reply below with a Bluesky badge on it, then it worked.</p>]]></content:encoded>
            <pubDate>Tue, 04 Aug 2026 04:00:00 GMT</pubDate>
        </item>
        <item>
            <title>I Wish It Had Been 30% Shorter</title>
            <link>https://unprompted.dirkprimbs.de/posts/i-wish-it-had-been-30-percent-shorter.html</link>
            <guid isPermaLink="true">https://unprompted.dirkprimbs.de/posts/i-wish-it-had-been-30-percent-shorter.html</guid>
            <description>Seven books finished across June and July, three of them excellent, and the same complaint about every one that missed - it went on too long.</description>
            <content:encoded><![CDATA[<p>Seven books in June and July, about two and a half thousand pages, and when I went back through what I'd written about each of them I noticed I keep making the same complaint. Not about subject matter, not about the writing. About length. Three of these books I'd hand to anyone. The other four all lost me somewhere in the middle, and in every single case the problem was that they kept going.</p>
<p>June was the good month, so let's start there.</p>
<h2>June</h2>
<p><strong><a href="https://bookwyrm.social/book/302483">A Prisoner of Birth</a></strong> by Jeffrey Archer got me first and it got me for 624 pages. A man is framed for murder and claws his way out of an impossible trap through sheer luck and by being just a bit too good to be true. I'm staying vague because the plot is the whole point and spoiling it would be rude. It passed the time. That is genuinely the nicest thing I can say - I was bored for significant stretches and I was relieved when it ended, which is a strange feeling to have about a book you technically enjoyed.</p>
<p>Then <strong><a href="https://bookwyrm.social/book/2045">Kindred</a></strong>. Octavia Butler drops a young Black woman back in time and forces her to live through what her ancestors lived through, and I could not put it down. I grew up in Europe, which means I have almost none of the historical grounding an American reader brings to this, and Butler simply carried me there anyway. It cost something to read. I finished it in four days and needed a minute afterwards.</p>
<p><strong><a href="https://bookwyrm.social/book/1960654">Toronto Book of the Dead</a></strong> by Shawn Micallef and Adam Bunch is the twin of Adam Bunch's <a href="https://bookwyrm.social/book/1960658">Toronto Book of Love</a>, which I read last summer on a podcast recommendation and expected nothing from and then loved. Between them they tell the story of this city and this country in a way that made me understand the place I now live. That sounds like a small thing. It isn't - I've been here long enough to have opinions about Toronto and not nearly long enough to have earned them, and this book filled in a lot of the why. The people in it changed the ground I walk on.</p>
<p><strong><a href="https://bookwyrm.social/book/1221730">Monstrilio</a></strong> by Gerardo Sámano Córdova is about loss and denial and love, and I'm not going to describe it further because describing it would flatten it. It's unlike anything else I read this year. Read it cold.</p>
<p><strong><a href="https://bookwyrm.social/book/1347222">Bon Voyage Mr. President and Other Stories</a></strong> closed out the month, and this is where the pattern I mentioned turns around and bites from the other direction. Sixty-four pages of García Márquez, beautifully written, and some of the shorts are genuinely magic while others left me puzzled and unsatisfied in a way I couldn't resolve by rereading them. Too short to land, where everything else this summer was too long to hold.</p>
<h2>July</h2>
<p>July was two books and both of them were Newfoundland, which I did not plan.</p>
<p><strong><a href="https://bookwyrm.social/book/800964">The Colony of Unrequited Dreams</a></strong> by Wayne Johnston is the story of the man whose signature made Newfoundland part of Canada. Most of what happens in it actually happened, and the way Johnston writes Newfoundlanders and their land through the eyes of the premier who changed both is close to poetry. For about half the book I thought I was reading a five. Then the politics take over, the descriptions get longer and then longer again, and I spent the back half dragging myself through it page by page. Cut a third and it's one of the best things I've read all year. As it stands I was mostly relieved to be done, which is exactly the same sentence I wrote about Jeffrey Archer six weeks earlier and I don't love what that says about me.</p>
<p><strong><a href="https://bookwyrm.social/book/2346993">Sorry, Not Sorry</a></strong> by Mark Critch is the other one. Critch is a comedian, he's from St. John's, and the book is about how Canada ended up like this - the cultural quirks, the small absurdities, why everything here is more complicated than it looks from outside. It's funny in places and I learned things from it. It's also forced in places, and once I noticed the forcing I couldn't stop noticing it. Comedians writing books have a specific failure mode where you can hear them waiting for the laugh.</p>
<h2>Cut a third</h2>
<p>Here's what I actually take from two months of this. Every book that disappointed me had a version of itself that would have been excellent, and that version was shorter. Archer at 400 pages. Johnston at 380. Critch with half the jokes and all of the history. Meanwhile the three that landed sit between 287 and 424 pages, which is not a rule so much as an observation I can't stop making now that I've made it once.</p>
<p>I don't think this is books getting worse. I think it's me. Somewhere in the last year my patience for a book that's still setting things up on page 300 quietly ran out, and I've started resenting the padding in a way I never used to. There are four books on my abandoned shelf from this year alone and one of them is <a href="https://bookwyrm.social/book/204268">War and Peace</a>, so make of that what you will.</p>
<p>All of it lives on <a href="https://bookwyrm.social/user/drkprmbs">my shelf</a>, abandonments included. Currently open: <a href="https://bookwyrm.social/book/2333794">Meditations</a>, <a href="https://bookwyrm.social/book/2175617">a Ryan Holiday</a>, <a href="https://bookwyrm.social/book/2322772">a Canadian politics textbook</a> I started in May, <a href="https://bookwyrm.social/book/1102305">Canadian history for dummies</a> that I started in February, and <a href="https://bookwyrm.social/book/341470">a Louise Penny</a> I picked up last week. Five books at once. Meditations and the Penny are the ones I'm actually reading.</p>]]></content:encoded>
            <pubDate>Thu, 30 Jul 2026 04:00:00 GMT</pubDate>
        </item>
        <item>
            <title>DevRel is about what&#x27;s good for them</title>
            <link>https://unprompted.dirkprimbs.de/posts/devrel-is-about-whats-good-for-them.html</link>
            <guid isPermaLink="true">https://unprompted.dirkprimbs.de/posts/devrel-is-about-whats-good-for-them.html</guid>
            <description>DevRel isn&#x27;t really about selling anything - it&#x27;s about building a whole ecosystem so big that we can barely measure its growth because a rising tide lifts all boats.</description>
            <content:encoded><![CDATA[<p><em>This post is part of a series on building developer relations, adapted from a book chapter I wrote. You can find all the posts once published in the series <a href="https://unprompted.dirkprimbs.de/tag-developer-relations.html">here</a>.</em></p>
<p>I've worked in Developer Relations for over 25 years. There, I said it: I'm old. </p>
<p>I tell you what else is old: The question what DevRel actually is. Sales? Marketing? Something else entirely? </p>
<p>A good friend of mine once put it better than I ever could:</p>
<blockquote>
<p>"Developer Sales and Developer Marketing is concerned with what's good for us. Developer Relations leads with what is good for them."</p>
</blockquote>
<p>I've carried that sentence around for years, because it does something most definitions of developer relations fail to do: it draws a line you can actually stand on.</p>
<p>When I started out at Microsoft's version of DevRel, roughly 25 years ago, the thing that made our little team work wasn't our slide decks or our demo skills. It was two assets, and only two: we knew the ecosystem, and the ecosystem trusted us. We didn't show up with a sales agenda. We brought gifts and knowledge, and we were known to participate. That's it. That was the whole magic trick.</p>
<p>Trust is the currency developer relations deals in. And trust is expensive to earn and cheap to lose. You build it by showing up, by demonstrating real interest, and by supporting people when they actually need support - not when it's convenient for your quarter.</p>
<p>Here's where it gets uncomfortable for a lot of organizations: this is fundamentally long-term work, and it sits awkwardly next to the typical business demand for short-term ROI. If you ask "what did developer relations sell this quarter?", you've already misunderstood the job. The value shows up down the road, in self-initiated activity, in a community that contributes without being asked, in feedback that saves your product team from an expensive mistake.</p>
<p>So what does DevRel uniquely do, the stuff that no other team in the company will do for you? In my experience it comes down to three things:</p>
<ul>
<li>Supporting communities of learning and practice</li>
<li>Participating in the developer ecosystem as a genuine member, not a vendor</li>
<li>"Growing the cake" - supporting the larger ecosystem, sometimes even in ways that benefit competitors</li>
</ul>
<p>That last one tends to raise eyebrows. Why would you build a tool that helps the whole ecosystem, competitors included? Because developers expect a degree of flexibility and connectivity, and because a healthy ecosystem grows as a whole. Instead of just optimizing your slice you're making the whole thing bigger.</p>
<p>This is also why developer relations keeps getting confused with marketing, and why the confusion is so damaging. Good marketing is about close relationships with customers, and yes, developers can be framed as customers. But marketing is ultimately about products and about positioning them toward a customer base. Developer relations is about co-creating with a community of volunteers - and the moment you're co-creating, the scope becomes much broader than any product. Many of the things we make don't sell anything at all. Sometimes it isn't even about a product but about an entire technology strand.</p>
<p>If you take one idea away from this whole series, let it be this one. Every structural decision, every metric, every hire gets easier once you accept that developer relations exists to be good for developers - and that the return on that comes back to you later, indirectly, and larger than you expected.</p>
<p>The rest is just working out how to do that at scale.</p>]]></content:encoded>
            <pubDate>Thu, 30 Jul 2026 04:00:00 GMT</pubDate>
        </item>
        <item>
            <title>Isn&#x27;t That Pretty</title>
            <link>https://unprompted.dirkprimbs.de/posts/isn-t-that-pretty.html</link>
            <guid isPermaLink="true">https://unprompted.dirkprimbs.de/posts/isn-t-that-pretty.html</guid>
            <description>It&#x27;s funny how I got so bored of taking pictures that were just &#x27;pretty,&#x27; forcing me to learn how to make the camera show things - like light, or movement, or multiple viewpoints - that nobody could actually see.</description>
            <content:encoded><![CDATA[<p>I am in a photographic slump, and I might as well open with that.</p>
<p>We were in the Rockies not long ago. I took the camera, the scenery did exactly what the Rockies do, and I went through the motions - decent light, careful compositions. People like the results. I have shown a few of them and been told they are great, and I don't think anyone was being polite about it. I look at them and find them boring. Competent, beautiful, and saying almost nothing beyond "this is how it looked, isn't that pretty?"</p>
<p>So I went back through the archive to work out whether I used to be better than this, and found something else instead. There was no decline to find. There was a split I had never bothered to name: sprints of street photography, landscape, documentary work, portraiture, and threaded through all of it, in every one of those years, a smaller pile of pictures where I had stopped using the camera to capture something and started using it to make something, or to show something that was not visible in the first place.</p>
<p>This pile is the one I still like. All of it, every time. </p>
<p>What that pile has in common is one of two things. Either the picture shows something that was there the whole time and stayed invisible, or it shows how a thing can look when it is seen in one particular way. That is why I gravitate towards extreme focal lengths, why so much of it ends up abstract, and why my favourite camera is one that cannot take a normal photograph at all.</p>
<h2>A Camera That Cannot Show You The World</h2>
<p>The camera is an EOS RP with the sensor filter taken out. Full spectrum, so it records infrared and ultraviolet along with the part of the light we actually see, and there is no setting on it that gets you back to normal. Everything it produces is false colour. You are not correcting anything afterwards, you are deciding.</p>
<p><img alt="A night street in Frankfurt shot at extreme wide angle in infrared. A lit marquee sign reading THE PLACE TO BE hangs on the left, the Commerzbank tower's spire rises in the centre distance, and a large tree on the right has gone silver-white the way foliage does in infrared. Streetlights flare into sharp sunstars and the whole scene sits in pink and sodium orange." src="https://unprompted.dirkprimbs.de/assets/2026-07-30_Isn_t_That_Pretty_Selection_025.jpg" width="1600" height="1068" loading="lazy" decoding="async"></p>
<p>This is a street in Frankfurt at night, and everything in it was there. The tree really is that bright, in the sense that it really is throwing back that much infrared - my eyes just have no cells for it. The pink is a decision. The sunstars are the aperture. The scene is entirely legible: you can read the sign, you can find the skyline, a local would know exactly which corner this is. It is a recognisable place rendered in light nobody standing there could see.</p>
<p>The other way to get at something invisible is to stop the camera from holding still.</p>
<p><img alt="A vertical abstract of amber and gold light trails on near-black, made by moving the camera during a long night exposure. Lines loop, double back and fan out across the frame; one dashed line curves down the right-hand side like a stitched seam." src="https://unprompted.dirkprimbs.de/assets/2026-07-30_Isn_t_That_Pretty_Selection_024.jpg" width="957" height="1278" loading="lazy" decoding="async"></p>
<p>Toronto, handheld, camera moving through the exposure. What is left is the motion, which is also something that was there and that your eye refuses to accumulate. You look at a street at night and your brain smooths it into a street at night. The camera just adds it all up.</p>
<p>Or how about taking an extreme lens on a modified camera to create something entirely new?</p>
<p><img alt="A vertical infrared and fisheye photograph of a spiral staircase, false-coloured deep blue and cream, coiling into a bright core at the top. The whole form reads as the letter S before it reads as a staircase." src="https://unprompted.dirkprimbs.de/assets/2026-07-30_Isn_t_That_Pretty_Selection_023.jpg" width="963" height="1261" loading="lazy" decoding="async"></p>
<p>One frame, one position, nothing added. A staircase, a fisheye, infrared, and the result is the letter S in an alphabet project I have been picking away at. It is still a staircase in the sense that a staircase is what the light bounced off. It is not a staircase in the sense that nobody looking at it says "staircase" first.</p>
<h2>The Part The Camera Didn't Do</h2>
<p>Up to here you could credit all the strangeness to equipment. Converted sensor, curved glass, slow shutter. But photography translates to drawing with light, and these two are drawn. The cyclist is a multiple exposure worked over heavily afterwards, closer to a hand-pulled print or a piece of calligraphy than to anything I saw on that street. The world is the pencil. The camera and everything after it are the canvas.</p>
<p><img alt="A tall narrow frame, heavily grained and saturated in orange and red, showing a cyclist riding towards the camera on a bike lane. Painted bike pictograms appear above and below. A thick ragged white border surrounds the image like the edge of a hand-made print." src="https://unprompted.dirkprimbs.de/assets/2026-07-30_Isn_t_That_Pretty_Selection_023_copy.jpg" width="455" height="1276" loading="lazy" decoding="async"><img alt="A glass tower with a diagonal grid facade rising into flat chrome yellow, the top half of the building dissolved completely into the colour while the lower half stays sharp enough to count the lit windows. A thin white edge shows along the top and left." src="https://unprompted.dirkprimbs.de/assets/2026-07-30_Isn_t_That_Pretty_Selection_022_copy.jpg" width="955" height="1276" loading="lazy" decoding="async"></p>
<p><a href="https://unprompted.dirkprimbs.de/posts/everything-i-see-is-a-habit.html">Grain that heavy is a choice</a>. So is the ragged white border, and the flat yellow where a sky should be, and the fact that the cyclist is nowhere near sharp and I did not fix it. Sharpness is a tool and often I am not reaching for it. Sometimes a picture needs a frame around it, sometimes it needs a border inside the frame, and both of those are part of the image rather than packaging for it. The tower one is the clearest case I have: the bottom half is sharp enough to count windows and the top half has stopped existing, in the same picture, and that gap is the whole point of it.</p>
<h2>Hockney's Complaint</h2>
<p><img alt="A wide view of a slim high-rise tower in heavy grey cloud, flanked by lower apartment blocks whose facades lean inward, above a wet plaza reflecting streetlight sunstars. The scene looks like a single dramatic photograph but is assembled from many frames shot from different positions." src="https://unprompted.dirkprimbs.de/assets/2026-07-30_Isn_t_That_Pretty_Selection_022.jpg" width="1600" height="996" loading="lazy" decoding="async"></p>
<p>Anyone from Frankfurt recognises in this image the Henninger Turm, but this was never one photograph nor does it reflect the scene as it was. It is a pile of partial shots taken from a number of different angles and then reconstructed into a scene that behaves like a single exposure. The buildings on the left and the right both lean in ways no lens does, and almost nobody notices.</p>
<p>I used to call this my attempt at photographic cubism but I have gone off that description. The method is cubist enough - many viewpoints collapsed into one plane - but cubism leaves the fracture showing. Braque and Picasso want you to watch the reassembly happen. This picture hides every join and asks you to believe it, and a stitched panorama is already multi-viewpoint without anyone calling it cubist, so the label does not come free. </p>
<p><a href="https://en.wikipedia.org/wiki/David_Hockney">David Hockney</a> is the better ancestor. His joiners from the eighties - <a href="https://www.ibiblio.org/wm/paint/auth/hockney/hockney.pearblossom-highway.jpg">Pearblossom Highway</a>, the <a href="https://www.artchive.com/artwork/my-mother-bolton-abbet-david-hockney/">portraits of his mother</a> - are grids of separate prints, dozens of them, each shot from a slightly different place at a slightly different time and then laid out with all the edges left in. His objection to the ordinary photograph was that it comes from one point at one instant, which is not remotely how anyone looks at anything. You look with two eyes, over time, while moving. "Perspective takes away the body of the viewer," he said. "You have a fixed point, you have no movement; in short, you are not there really."</p>
<p>So the Henninger Turm and the joiner are the same refusal solved in opposite directions. One hides the seams so you believe it is a photograph. The other shows them so you can't.</p>
<p>"Well, you're not doing photography, you're producing digital images" some of you might say, and I really disagree. All my images require the world and light to be there. I react to what I see, my camera work is always my starting point. In that sense, even in the most extreme versions like this composite, it remains photographic in essence. </p>
<p>In the end, so goes the saying, every photograph is an image of the person holding the camera. I wonder what this explicit remake of a David Hockney composition with me as subject says about me: </p>
<p><img alt="A portrait assembled from about a dozen overlapping rectangular prints laid on a grey ground with soft drop shadows: a left profile at the edge, a frontal face in the centre, one eye enlarged out of scale, another eye looking down, an ear, sections of grey beard. Everything is desaturated except the brown of the eyes. A single undivided plate at the bottom shows the collar of a dark polo shirt." src="https://unprompted.dirkprimbs.de/assets/2026-07-30_Isn_t_That_Pretty_Selection_026.jpg" width="1023" height="1276" loading="lazy" decoding="async"></p>
<p>Ten shots, rendered as distinct plates. The profile at the left edge and the face in the middle cannot both be true. My eye appears twice, once enlarged well past life size and once looking down and away, and the colours were never life-like to begin with. The one plate that never got cut is the collar of the polo shirt at the bottom, and it is the thing that stops the rest of it sliding apart.</p>
<p>This represents me better than any straight selfie I have taken.</p>
<p>Which would make the Rockies pictures portraits as well. Of a man who found the spot everybody finds, stood in it, and waited for the light to do the work.</p>]]></content:encoded>
            <pubDate>Thu, 30 Jul 2026 04:00:00 GMT</pubDate>
        </item>
        <item>
            <title>Where the Picture Finishes</title>
            <link>https://unprompted.dirkprimbs.de/posts/where-the-picture-finishes.html</link>
            <guid isPermaLink="true">https://unprompted.dirkprimbs.de/posts/where-the-picture-finishes.html</guid>
            <description>The meaning of a photograph gets made by whoever is looking, and never quite where you would have bet. For a while that felt like being written out of my own pictures. It turns out to be the whole job: you build the occasion as well as you can and hand it over, and making it for yourself is the only way to make it worth receiving.</description>
            <content:encoded><![CDATA[<p><em>This is the last of the longer pieces I promised in <a href="https://unprompted.dirkprimbs.de/posts/what-are-we-actually-doing-here.html">the opening post of this series</a>.</em></p>
<hr />
<p>Give a group of your photographs to a room of people and watch what they do with them. I have done this a few times now - a wall, a sequence in a zine, a handful of prints passed around a table - and the same things happen every time, reliably enough that I have started to treat them as laws.</p>
<p><img alt="A night intersection shot from above with heavy vertical camera movement, so the whole frame appears to rain downward in thin streaks of white, red and amber light. Below the streaks, cars cross a wet, red-lit junction - a white SUV and a silver sedan mid-turn, headlights and tail lights smeared into the reflections on the soaked asphalt." src="https://unprompted.dirkprimbs.de/assets/2026-07-22_Where_The_Picture_Finishes_intersection.jpg" width="1400" height="1867" loading="lazy" decoding="async">
<img alt="A bank of crowded escalators in a mall or transit hall, the moving people blurred into vertical streaks and the whole image toned warm magenta and gold. At the bottom centre a young man in a dark jacket stands almost sharp and still, looking off to one side - the one fixed point in all the motion." src="https://unprompted.dirkprimbs.de/assets/2026-07-22_Where_The_Picture_Finishes_escalator.jpg" width="1400" height="1867" loading="lazy" decoding="async">
<img alt="A curving city expressway at night seen from high above, framed in a narrow vertical slot between two dark tower edges, lit office windows stacked down the right-hand side. The lanes of traffic blur into a bright river of white and amber light, its core blown almost to pure white where the road bends away." src="https://unprompted.dirkprimbs.de/assets/2026-07-22_Where_The_Picture_Finishes_highway.jpg" width="1400" height="1867" loading="lazy" decoding="async"></p>
<p>They look for the thread first. Before anything else people want to know what these pictures have to do with each other, what the connecting idea is, even after I have told them there is none. Then, however firmly the images are meant as a group, each person quietly picks a favorite. The one they pick is never the one I would have bet on, it is different for the next person, and after years of this I still cannot predict it. If there is a frame in the set that does not give itself up on the first look, they stay with it longer than with any of the easy ones. And weeks later, when I ask, the two they remember are their favorite and the difficult one. Everything else, however good, has quietly gone.</p>
<p>I used to find that mildly deflating. You make a considered set, you have your own idea of which frame carries it, and the room reorganizes it into a shape you did not choose and cannot control. A few days ago I put <a href="https://unprompted.dirkprimbs.de/posts/the-shadow-and-the-refraction.html">a colder version of the same observation</a> into writing and it genuinely unsettled me: if the meaning of a photograph is assembled on the far side, by whoever is looking, then the maker is only the occasion for it, and it stops mattering how the picture came to exist. I could not argue my way out of that, so here we are.</p>
<p>The question is what that leaves for me to do, and whether it is as small a thing as it first felt.</p>
<h2>No playlist without a favorite song</h2>
<p>Start with the part we cannot switch off. No playlist without a favorite song, no series without a favorite season, no album without a fight about the best track. Show us any group of anything and we rank it, usually without noticing. Put two photographs side by side and part of you has picked a winner before you have finished looking at either. The winner costs you the pair. You never really see the two together, because you were too busy deciding between them.</p>
<p>We rank because a verdict feels like knowing. Best of the year, strongest in the set, the one that would do well online - a scoreboard is a comfortable place to stand. But there is no best picture in that group. There never was. The one each person picks says as much about them as about the photograph. The favorite is real, it is theirs, and no two people land on the same one. Ranking is mostly what we reach for instead of sitting still long enough to let that happen.</p>
<h2>Only the occasion</h2>
<p>So what is left for me to do? Build the occasion. That is the whole of it, and it stopped sounding like a demotion the moment I looked straight at it. It might be the only job there ever was.</p>
<p>You cannot pour meaning into a photograph the way you pour milk into coffee. You can only put enough real stuff in it - enough specific seeing, enough of an actual afternoon, enough decisions taken on purpose - that a stranger has something true to build with. A picture made to get a reaction hands them a foregone conclusion and nothing to do. The pretty frame that hits all the defaults, the one that reads as good at a thumb's flick, is thin on purpose. Nobody was trying to say anything with it, only to score.</p>
<p>This is the cleanest reason the generated image often bothers me and <a href="https://unprompted.dirkprimbs.de/posts/the-shadow-and-the-refraction.html">the water bottle</a> does not. A photograph I hand you is me reaching toward you, and whatever you make of it lands back on someone who was actually there. A generated one is all occasion and nobody home. You will still pick a favorite - but there is no one on the far end of it, nothing that ever wanted you, specifically, to see anything.</p>
<h2>Tell me what it did to you</h2>
<p>Once you take that seriously, some of your habits change on their own. Three of mine did.</p>
<p>Feedback is where I watch people get it most wrong. My rule is dull and I will say it anyway: if nobody asked for critique, keep it. And when someone does want a response, the useful thing is almost never to tell them how you would have shot it. Tell me what the picture did to you. What you looked at, what stopped you, what irritated you if anything did. Being told where I should have stood has never taught me a thing. What the picture did to you, though, I cannot get any other way, and it is the only part worth having. "How I would have done it" is just dragging the meaning back to the making, where it isn't.</p>
<p>The words I set beside my photographs changed for the same reason. A title, the location, the technical data - it always felt redundant at best and like a spoiler at worst, an instruction to go and see the thing I had already seen. So now I use a short sentence, sometimes a line closer to a diary entry, and I lay a hint in it about the feeling or the memory the frame is tied to - something you can hold your own reaction against instead of just taking on mine. Image and a few words together, when it lands, is a sort of portrait built in someone else's head.</p>
<p>And I have made a quiet practice of the near-misses. Ask a photographer for their best shot of the year and they seize up. Ask instead for the worst one they could not bring themselves to delete, and why it survived the cull, and you get something far more alive. We learn more from the frames that almost worked than from the ones that did, because the almost is where you can still see the intention rubbing against the result. It is you being the first reader of your own picture, before anyone else arrives to be theirs.</p>
<h2>The same instruction from both ends</h2>
<p>Now the loop closes, and I have to eat something I said at the start.</p>
<p>I opened all of this by insisting that photography is a practice you do <a href="https://unprompted.dirkprimbs.de/posts/what-are-we-actually-doing-here.html">for yourself</a>, in a world that keeps telling you it is for an audience, a platform, or a purchase. And I am ending it by handing the whole meaning to the audience. For a while those two looked like a contradiction I had walked into with my eyes open.</p>
<p>They are one instruction seen from opposite ends. You can only build an occasion worth receiving if you built it for yourself - out of your own seeing, your own <a href="https://unprompted.dirkprimbs.de/posts/everything-i-see-is-a-habit.html">conditioning broken on purpose</a>, the format you actually chose, whatever <a href="https://unprompted.dirkprimbs.de/posts/the-missing-screen.html">the particular camera</a> turned you into that afternoon. The moment you make it for them, to be liked or ranked or sold, the meaning is already spent and there is nothing left for them to do. The most generous move you have is to refuse to make the picture for the viewer, and then hand it over anyway.</p>
<p>Which is what a zine is, when you get down to it, and a print pressed into somebody's hands. The exposure was a millisecond and it was mine and it was over almost before it happened. Everything after it - the edit, the sequence, the paper, the sentence beside the frame - is me building the best occasion I can and then stepping out of the way. The last time I showed a set, a friend spent the longest in front of the one frame I had very nearly cut, and told me it reminded them of something I could not have known and would never have guessed. I did not make that. I built the place it could happen, and handed it over. The rest was always theirs.</p>
<hr />
<p><em>That is the series - five pieces, collected under <a href="https://unprompted.dirkprimbs.de/tags/photo-thoughts.html">Photo Thoughts</a>. The tag <a href="https://digitalcourage.social/tags/Fotogedanken">#fotogedanken</a> is where the thinking carries on, mine and other people's.</em></p>]]></content:encoded>
            <pubDate>Wed, 22 Jul 2026 04:00:00 GMT</pubDate>
        </item>
        <item>
            <title>The Shadow and the Refraction</title>
            <link>https://unprompted.dirkprimbs.de/posts/the-shadow-and-the-refraction.html</link>
            <guid isPermaLink="true">https://unprompted.dirkprimbs.de/posts/the-shadow-and-the-refraction.html</guid>
            <description>The argument about whether AI photography counts is old and boring; the question worth having is where a photograph gets its meaning - and whether a machine that can make meaning too quietly writes the photographer out of the conversation. The same tool points two ways, and what settles which is whether you had something to say before you opened the box.</description>
            <content:encoded><![CDATA[<p><em>This is the third of the longer pieces I promised in <a href="https://unprompted.dirkprimbs.de/posts/what-are-we-actually-doing-here.html">the opening post of this series</a>.</em></p>
<hr />
<p>Every conversation about AI and photography I get pulled into turns out to be the same conversation, and it has started to bore me. Is it art. Who made it. Does a prompt count as work. Is it cheating. People argue it as though the ground were new, and the ground is not new at all. A while back I photographed the Artemis II launch off a screen - a deliberately oversaturated frame of the rocket sitting on the pad - and while I was wondering whether a glorified screenshot even deserves the word photograph, I remembered that eighty years ago the photography magazines ran how-to features on the best way to shoot your television set. Tips and tricks for artistic results. A quick search turns up a surprising number of recent ones too. The panic about what counts has been here the whole time, changing its clothes every decade, and I have run out of interest in it.</p>
<p>The question sitting underneath it is the one I wrestle with. Where does a photograph get its meaning?</p>
<p>Last year I was on a plane and held a water bottle up against the window. Crumpled, half full, the light coming through it and throwing two things onto the sill at once - a hard grey shadow and a bright smear of colour. I photographed it. Then, half playing, I handed the picture to Gemini and asked it to look with the mind of an artist and find the metaphor in it.</p>
<p><img alt="A hand holds a crumpled, half-empty clear plastic water bottle with a blue cap up against an aeroplane window. Bright low sunlight passes through the bottle and throws two things onto the pale window ledge below: a hard dark shadow and a smear of refracted, faintly coloured light. Green ground is just visible through the window behind the hand." src="https://unprompted.dirkprimbs.de/assets/2026-07-21_The_Shadow_And_The_Refraction_water-bottle-plane.jpg" width="385" height="512" loading="lazy" decoding="async"></p>
<p>What came back was genuinely interesting. The bottle is a memory, held up to the light of the present. The shadow is the blunt fact that something happened - heavy, vague, undeniable. The refraction, the luminous distorted colour that only appears because you let the light pass through instead of blocking it, is what the experience came to mean, tinted with the colour of your own perspective. We are the hand in the frame, deciding which of the two to look at as we go.</p>
<p>I did not write that. A machine did, from a picture I had made. And I have been circling the uncomfortable part of it ever since, because the meaning in that image - the thing that lifts it above a snapshot of some plastic against a window - did not come from me pressing the button. It arrived in the reading. Handed, this time, to software.</p>
<p>There is an old and respectable way of thinking about art that says this is exactly right, and always was. The meaning was never sitting in the object. It gets assembled on the far side, by whoever is looking, out of everything they bring with them - and the maker is simply the person who supplied the occasion for it. Follow that all the way and you land somewhere clean and slightly chilling. If meaning is decided entirely by the audience, then it truly does not matter how the image came to exist. My afternoon of walking and waiting and noticing, or a sentence typed into a box, are the same thing as far as the picture is concerned. Both are occasions. The viewer does the rest.</p>
<p>I can hold that idea up and admire how tidy it is. I just cannot live inside it. Working out why is most of the reason this piece exists.</p>
<h2>The great conversation</h2>
<p>When I walk out to make street photographs in black and white, I am not starting from nothing. I am following the likes of Henri Cartier-Bresson whether I have him in mind or not, and he was following what he had learned as a painter before he ever picked up a camera, and that reached back through people he never met to people they never met. </p>
<p><img alt="A high-contrast black and white photograph of four children playing in the huge spray of a burst fountain or open hydrant. The water erupts upward and outward in a bright cloud of droplets that fills most of the frame, backlit so the children read as dark silhouettes against it. One child in the centre runs with both arms flung wide, another ducks away beside them, a third throws up an arm on the left, and a fourth stands further to the right; a tall building looms faintly through the spray behind them." src="https://unprompted.dirkprimbs.de/assets/2026-07-21_The_Shadow_And_The_Refraction_street-water-spray.jpg" width="1170" height="827" loading="lazy" decoding="async"></p>
<p>Every maker breathes in the conventions and the near-misses and the occasional triumphs of everyone who came before, keeps some, throws out the rest, and hands a slightly changed version forward. You do not even have to make anything to be part of it - look hard at a photograph, carry it around, let it change what you notice tomorrow, and you have already passed something on to whatever you make or admire next. The whole thing runs back in an unbroken line to somebody pressing ochre onto a cave wall by firelight, wanting another person to see what they had seen.</p>
<p>That is the conversation I mean, and when I hand over a zine or give away a print. </p>
<p>I am adding one small link to it and reaching toward whoever picks the thing up. It matters to me that what I hand over carries a bit of me. A decision. A way of seeing. The particular afternoon it came from, and the wish that it lands on somebody.</p>
<p>Here is where AI is genuinely new, and not in the way the is-it-art crowd means it. It is the first technology that can produce something which really does resemble artwork while carrying no original thought and no wish to reach anyone at all. And it can make those things faster than any of us can think a single one through, so the line starts filling with links that connect to nothing at either end - shaped exactly like a contribution, reaching toward no one. My own small link does not get refuted in there. It gets buried among a thousand things wearing its clothes. You can have something worth saying and still find yourself competing with a system that throws material at the wall until somebody yells stop and keeps whatever happened to land. The Caira, a camera that will swap your sky for a better one while you shoot, sits at the near edge of this for me. Nothing is wrong with the tool. I still mourn, a little, a world in which a photograph carried a real dependency on having been there - on patience, on the right moment, on some relationship to an actual person in front of or behind the lens. Every step away from that costs me a little motivation, and I have never quite argued myself out of the feeling.</p>
<h2>Same box, two doors</h2>
<p>And yet the water bottle was AI as well, and it did the reverse. It set me more firmly inside the conversation instead of crowding me out of it - it read my picture back to me and gave me something to think against. Another time I handed over a photograph of a conference stage in Shanghai and asked for a second frame that would combine with it into a double exposure, and what came back was a collaborator's suggestion, a move I then got to take or refuse or bend to my own ends. In both cases the picture stayed mine and the machine helped me mean something with it. The same technology, aimed in two opposite directions.</p>
<p><img alt="A double exposure blending a close-up human face with a conference auditorium. The face, seen straight on, is rendered as a translucent web of glowing blue and magenta lines and points of light, the two eyes just visible where they fall over the stage. Through and behind the face are rows of empty red seats and a central aisle leading to a brightly lit stage, where a large screen reads, in Chinese and English, &quot;Why is privacy important?&quot; A few small figures sit and stand on the stage under coloured spotlights." src="https://unprompted.dirkprimbs.de/assets/2026-07-21_The_Shadow_And_The_Refraction_shanghai-double-exposure.jpg" width="1600" height="1205" loading="lazy" decoding="async"></p>
<p>So I have stopped asking whether to use AI, which is really the fear-of-missing-out question wearing a serious face - everyone else is, the box is open, better hurry. I ask a narrower one now, each time, about the specific thing in front of me. Does this keep me in the conversation or stand in for me? Does it deepen what I am trying to say, or spare me the work of saying it? A tool that reads my work back to me, or hands me a panel to react to, keeps me at the table. A tool that would have made the picture so that I did not have to shows me the door, very politely. Same box, two doors, and the only thing that settles which one I go through is whether I had something to say before I opened it.</p>
<p>I have been toying with making the next zine out of precisely this. The water bottle, the Shanghai double exposure, a handful of these back-and-forths with the machine, printed small and given away, with the prompts left in plain sight so nobody has to guess what my hands did and what the software did. Where AI helped, the page will say so. Twenty copies, made by hand, on some difficult paper I have not chosen yet.</p>
<hr />
<p><em>There is more where this came from. The whole series collects under <a href="https://unprompted.dirkprimbs.de/tags/photo-thoughts.html">Photo Thoughts</a>.</em></p>]]></content:encoded>
            <pubDate>Tue, 21 Jul 2026 04:00:00 GMT</pubDate>
        </item>
        <item>
            <title>The Missing Screen</title>
            <link>https://unprompted.dirkprimbs.de/posts/the-missing-screen.html</link>
            <guid isPermaLink="true">https://unprompted.dirkprimbs.de/posts/the-missing-screen.html</guid>
            <description>Every story the camera industry tells is a claim about the picture, and most of them fall apart when you check. The gear that has actually changed anything for me changed how I behave instead, which is the part no product page can show you.</description>
            <content:encoded><![CDATA[<p><em>This is the second of the longer pieces I promised in <a href="https://unprompted.dirkprimbs.de/posts/what-are-we-actually-doing-here.html">the opening post of this series</a>.</em></p>
<hr />
<p>I have been circling a new phone for a few weeks, and I caught myself doing the thing. The thing where you assemble a justification you already know is decorative - in this case that the always-with-me snapshot camera might be the actual reason to buy it. So I went looking for permission on the internet, and the internet was delighted to provide: this phone now genuinely takes photos as good as a mirrorless camera.</p>
<p>Then I fell over a video making the identical claim about the Pixel 3, seven years ago.</p>
<p>It was not true then and it is not true now. I still have RAW files from a Canon 20D that hold up perfectly well next to what my current cameras produce, and I can see hard quality differences between those cameras and the snapshots from a reasonably recent Pixel without squinting. Both of those things at once. The sensor in your pocket got extraordinary and it did not close the gap, and the industry has been announcing that it closed the gap on a roughly annual cycle for a decade.</p>
<p>Which is the shape almost every gear story comes in, once you start noticing.</p>
<p>I said at the start of all this that photography keeps being sold to us as something done for an audience, a platform, or a purchase. The first two I have already had my say about. This is the third one.</p>
<h2>Vinyl crackle</h2>
<p>My favourite specimen is one I own and love. Fuji's film simulations are marvellous, I use them constantly, and the claim that they simulate film is marketing nonsense of a high order.</p>
<p>Put a bit of noise and the occasional pop underneath a digitally produced track and you have not simulated a vinyl record. You have added a reference to one. The grain slider in Lightroom has the same relationship to actual film grain: it gestures at a physical process it does not reproduce and was never going to. It is the same move as the 50mm myth I <a href="https://unprompted.dirkprimbs.de/posts/everything-i-see-is-a-habit.html">went after the other day</a>, a decision handed to us as a fact, except that here somebody is holding an invoice. What Fuji has built is a set of very good, very characterful colour renderings with evocative names, and if they had called them that, nobody would have loved them less.</p>
<p>The Leica Look lives in the same drawer for me, along with 3D pop and micro-contrast and whatever the current word is. I am not saying the images do not have a character. I am saying that the character is a lens design and a colour profile and, most of all, the person who chose to buy that camera and therefore shoots a certain way - and that "look" is doing the work of hiding all three behind something that sounds like physics.</p>
<p>None of this stops me enjoying any of it. The gap I care about is between the marketing story and what is true, not between good gear and bad.</p>
<h2>Three kinds of Leica commentator</h2>
<p>Which brings me to the place where the stories get loudest.</p>
<p>There are three kinds of Leica commentator. One, people with photographic or technical reasons for liking them. Two, people who like them for emotional reasons. Three, people who do not own a Leica, would never buy one, and are extremely keen to tell everybody else how they ought to think about Leica.</p>
<p>Full disclosure so you can weight everything below accordingly: I like Leica, and I put myself in category one. I shoot an M10-D, which needs a word of explanation if you have never handled one.</p>
<p>The M is Leica's rangefinder line, unchanged in concept since the 1950s. You focus it by hand, by lining up a second faint image inside a small bright patch in the viewfinder until the two coincide. There is no autofocus. You are looking through a window at the actual world with a frame drawn on it, rather than at a small screen relaying what the sensor currently sees. The D in mine goes a step further: no screen on the back either, so there is no way to look at a photograph until it is off the camera. That combination exists nowhere else.</p>
<p>Then Leica announced the M EV1, an M with the rangefinder taken out and an electronic viewfinder put in - a tiny screen, in other words, showing you the sensor's view, the way essentially every modern camera does.</p>
<p>The forums were a perfect demonstration of all three categories at once, and honestly quite entertaining. Category one asking why this costs more than a Sony while doing less than Leica's own SL with an M-adapter on the front. Category two answering with Look, Design, Prestige, Legacy. Category three explaining that Leica is a Rolex for dentists with more money than ability. Nobody talking to anybody.</p>
<p>My own reaction was that I did not understand it, and it took me a while to work out why. Every so often the community starts hoping aloud that Leica will build exactly this, and the wish always sounded to me a bit like the sports car community hoping Ferrari will finally offer soft suspension and a cruise setting for the engine management. The constraint is the product. Take the rangefinder out and you have removed the reason the thing exists, and what remains is an expensive camera that does less than cheaper ones.</p>
<h2>What the camera does to you</h2>
<p>And that is the part the marketing never sells, because it cannot be photographed for a product page.</p>
<p>Shooting fully mechanically does something to you. Not to the files - to you. No screen means you cannot check the shot you just took, which means the walk never stops, which means the next frame comes out of what you were still looking at instead of out of the last one. The rangefinder puts a bright frame in the world rather than a preview of a picture, so you are looking at a scene with an intention laid over it and not at a small television showing you what you already have. I cannot demonstrate any of this in an image. It changed how I shoot anyway.</p>
<p>The same thing runs in the other direction and is easier to miss. I bought an OM-3 a while back and get spoken to about it constantly, everywhere, by strangers. Stealthy street photography this is not. That is not a flaw in the camera, it is a property of carrying it, and it changes what kind of work is available to me on any given afternoon as surely as a focal length does.</p>
<p>Or take the constraint I imposed on myself for a while, shooting out of camera and skipping the edit. I still do not know whether that was a self-inflicted handicap or a development step. My results only ever pleased me moderately and I wanted to fiddle with every single one - which could mean the discipline was wrong for me, or could mean I have years of conditioning to shed and that the itch to fiddle is the conditioning talking. That question is worth more to me than any comparison of JPEG engines, and it is a question about me.</p>
<h2>So I will keep wearing it out</h2>
<p>A dealer told me recently that my Q2 is worth almost nothing on the used market. Not because anything is broken - because it has marks on it. Apparently Leica buyers, unlike buyers of every other brand, expect a used camera to have been kept in cotton wool and taken out only in good weather, and the moment there is any evidence of a life the price falls through the floor.</p>
<p>Sit with that for a second, because it is the whole argument standing in the open. The resale market is offering me money to treat my camera as an object to be protected rather than a tool to be used. That is a piece of gear reaching all the way into how I behave, and in exactly the wrong direction. Everything else in this post is a story someone told about a picture. This one is a story about my hands.</p>
<p>I was only curious anyway. I will carry on wrecking it.</p>
<hr />
<p><em>There is more where this came from. The whole series collects under <a href="https://unprompted.dirkprimbs.de/tags/photo-thoughts.html">Photo Thoughts</a>.</em></p>]]></content:encoded>
            <pubDate>Mon, 20 Jul 2026 04:00:00 GMT</pubDate>
        </item>
        <item>
            <title>Everything I See Is a Habit</title>
            <link>https://unprompted.dirkprimbs.de/posts/everything-i-see-is-a-habit.html</link>
            <guid isPermaLink="true">https://unprompted.dirkprimbs.de/posts/everything-i-see-is-a-habit.html</guid>
            <description>Almost everything we believe about photography arrived without ever being examined: the good light, the sharp frame, the lens that supposedly sees the way we do. What is left when you stop accepting the defaults, and why the shape of a photograph belongs to whoever is making it.</description>
            <content:encoded><![CDATA[<p><em>This is the first of the longer pieces I promised in <a href="https://unprompted.dirkprimbs.de/posts/what-are-we-actually-doing-here.html">the opening post of this series</a>.</em></p>
<hr />
<p>My phone has been set to greyscale for months now. It started as self-defense - the standard advice about making the slot machine in your pocket less rewarding - and I expected to last about a week. Instead I turn colour back on maybe once a fortnight, for a map or a photo I actually need to judge, and every single time I flinch. The thing is candy-bright. Loud in a way I had completely stopped registering. Then I switch it back off and the room gets quiet again.</p>
<p>The mental hygiene worked. What I did not expect was the second effect, which turned out to be the more interesting one, and which is really what this whole post is about: it changed what I could see. </p>
<p>Scroll a feed in greyscale and most of the images collapse. Not some of them - most. It becomes very obvious very fast how many photos you encounter in an ordinary day are running purely on signal colour: a saturated orange, a branded blue, a sunset cranked until it hums. Take the colour away and there is nothing underneath. No composition worth the name, no contrast doing any work, no reason for the eye to stop anywhere in particular. We have collectively agreed to use colour as an attention mechanism rather than a compositional one, and the result is a diet of pure sugar with no finesse in it anywhere.</p>
<p>And then every so often something does stop you, and it stops you harder than it ever did in colour, because now you are seeing structure instead of being flagged down. Those images are worth studying, because whatever is holding them up is doing so without the loudest tool in the box. Greyscale turns out to be a decent instrument for sharpening your own eye, which is not what I installed it for.</p>
<p><a href="https://www.wired.com/story/grayscale-ios-android-smartphone-addiction/">Try it</a> for two weeks. Worst case you learn which pictures in your own archive were only ever carried by a colour.</p>
<h2>Half-truths we repeat until they sound like physics</h2>
<p>The greyscale thing is one small correction to a much larger problem, which is how much of what we believe about photography arrived without ever being examined. Somebody says it on YouTube, it gets repeated, and after a while it stops sounding like an opinion and starts sounding like a property of the world.</p>
<p>My favourite specimen, because it is the most confidently wrong: 50mm is the focal length that matches human vision.</p>
<p>I would love for some photography student somewhere to write a proper paper on how this claim managed to convince so many people, because as far as I can tell it is repeated far more often than it is examined. And the giveaway is that everybody agrees on the conclusion while nobody agrees on the reason. Ask five people why it is true and you get four different mechanisms, each of which falls apart when you poke it.</p>
<p>The most literal version goes via the focal length itself, which is easy to check and immediately wrong. The eye's physical focal length is somewhere around 17mm, and it is not even fixed - the lens in your head changes shape when you focus on something close. Whatever else 50 is, it is not that number.</p>
<p>So people move to field of view, which sounds much more promising. A 50mm lens on full frame covers roughly 40 degrees horizontally and about 27 vertically. Human vision runs to something like 135 degrees. That is not a near miss, that is a different order of thing. And this is where the comparison stops being merely inaccurate and starts being category confusion, because our eyes do not work like lenses at all. Only a tiny patch of the retina resolves sharply. If we assessed our vision the way we assess a lens, on the basis of what is actually sharp on the sensor, we would be walking around with a two degree field of view. We do not notice this because our eyes are in constant motion and the brain assembles the result into a stable picture that never existed on the retina in one piece. Which is a further reason the comparison fails: there is no exposure. You are not looking at a frame, you are looking at a composite being continuously rebuilt.</p>
<p>Point this out and the argument usually retreats to perspective. Never mind the angle, the claim goes, it is about how lines and depth relationships look - a 50mm rendering of a street matches how the street feels to stand in. Except the eye projects onto a curved surface and a lens projects onto a flat one. There is no focal length that makes a flat projection behave like a spherical one; the geometry simply does not have that solution. You can pick a focal length whose distortions bother you least, and that is a real thing worth choosing, but it is a preference about failure modes rather than a match. And whatever "how the street feels to stand in" means, a good part of it is coming from having two eyes about six centimetres apart, which no single lens has ever done anything about.</p>
<p>The last version is the only one with something in it, and it quietly gives the game away. A 50mm image can look right - but only if you also fix how far away the viewer is standing. Move a print closer to your face or further from it and you have changed the angle of your overall shot, which is roughly what zooming does. So the claim holds only if we all agree to look at pictures from the same distance, which we very obviously do not, since the same photograph now gets viewed on a phone at arm's length, on a laptop, and occasionally on a wall.</p>
<p>Notice also that the arguments pull in opposite directions. Match the total field of view and you end up somewhere around an ultra-wide. Match the small cone you are actually attending to at any given instant and you end up in short telephoto territory, 85mm or beyond. Match the projection geometry and there is no answer at all. Nothing here arrives at 50 unless you already knew that 50 was the answer you were looking for.</p>
<p>What is really going on has nothing to do with eyes. The diagonal of a 35mm frame is about 43mm, and a lens roughly matching the diagonal of its format was, in Barnack's day, the cheapest thing to build fast and well corrected. 50 was close enough, so 50 got made, in enormous numbers, for decades, and came bundled with every camera anybody bought. Two or three generations of photographers learned to see through it before they ever chose anything. The "normal" lens is normal because of manufacturing economics and the shape of a rectangle somebody standardised a hundred years ago.</p>
<p>Once you have caught one of these you start finding the rest, and they all have the same shape - a decision presented as a fact:</p>
<p>The good light is golden hour and blue hour. Grey skies are boring. A photograph has to be sharp and full of detail. A photograph comes in a certain format.</p>
<p>Take the sharpness one, since it cost me the longest to shake. Sharpness is the easiest quality to measure and therefore the one the industry has agreed to sell us, review by review, MTF chart by MTF chart. The longer I photograph, the less often I care. My favourite frame from last winter is a low-angle shot of a pair of black ice skates with pink laces cutting across the ice, and essentially nothing in it is sharp. The blur is the subject. Freeze that moment properly and you have a picture of some skates.</p>
<p><img alt="A low-angle photograph of a skater's legs crossing an ice rink, panned so that both the skater and the ice are smeared into horizontal streaks. Black skates with a flash of pink at the ankle, dark trousers, and a pale grey rink; almost nothing in the frame is in focus. Black border." src="https://unprompted.dirkprimbs.de/assets/2026-07-19_Everything_I_See_Is_A_Habit_PB290541_Nik.jpg" width="1600" height="1200" loading="lazy" decoding="async"></p>
<h2>The frame is a decision, not a default</h2>
<p>Which brings me to the last one on that list, and the one I have thought about most.</p>
<p>Image formats are a convention. Not a law, not a technical constraint, and not even a very old convention. There was a time when oval and round images were about as ordinary as rectangular ones - look at what people hung on walls before industrial production got involved. The rectangle won because it is what rolls off machines efficiently, what fits a film gate, what cuts from a sheet without waste. Then it won so thoroughly that everything else began to feel wrong.</p>
<p>I have been playing with a circular fisheye lately, a lens that produces a genuinely round image with black around it, and the most interesting part has been watching my own reaction. Round pictures feel <em>wrong</em> to me. Not bad. Wrong, the way a misspelled word is wrong. I look at a round photograph of the Toronto skyline in magenta and green, sun flaring off a tower, the whole thing curled into something like a crystal ball, and part of my brain is still filing a complaint about the shape. There is no reason for that beyond a lifetime of rectangles. The complaint is information about me, not about the picture.</p>
<p><img alt="A circular fisheye photograph of the Toronto waterfront, the whole scene bent into a globe floating in a dark green rectangle. Highrise towers and the Westin lean outward from the centre, the frozen lake and a flared sun sit behind them, and the road and parked cars curve around the bottom edge. Colours are pushed to magenta sky and pale yellow light." src="https://unprompted.dirkprimbs.de/assets/2026-07-19_Everything_I_See_Is_A_Habit_P1292602_Nik.jpg" width="1600" height="1200" loading="lazy" decoding="async"></p>
<p>So here is what I actually think, and it is the closest thing I have to a rule. A mature photographer chooses the format from what they are trying to say, not from where the sensor collects the most data.</p>
<p>That turns a default into a set of questions worth asking every time. Do you want to confirm what the viewer expects, or surprise them? Where should the eye enter, and where should it be unable to leave? Are you after symmetry or motion? Do you follow the standard - landscapes horizontal, portraits vertical - because the subject wants it, or because that is what everyone does? A square imposes a calm that a 3:2 cannot, simply by refusing to favour any direction. A very long horizontal makes the eye travel and turns viewing into something closer to reading. Extreme formats are wonderful for exactly this reason: they make the viewer feel the shape before they have identified anything inside it.</p>
<p>None of that is available while the frame is still a setting you never touched.</p>
<p><img alt="A very wide panoramic photograph of a crowd of pedestrians crossing a pavement, shot with a long exposure so most of the figures blur into overlapping ghosts. The image is black and white apart from one woman near the left in a mustard yellow jacket, who is the only colour in the frame and the point where the eye comes to rest." src="https://unprompted.dirkprimbs.de/assets/2026-07-19_Everything_I_See_Is_A_Habit_Q1005265-Edit.jpg" width="1600" height="591" loading="lazy" decoding="async"></p>
<p>Minor White has a line that I keep coming back to, and it is one of my favourite photography quotes: <em>"Don't show me what it is, show me what else it is!"</em> I do not manage it often. But the times it works are the times I decided something on purpose - the colour, the light, the shape - instead of accepting what the camera and the internet handed me.</p>
<hr />
<p><em>There is more where this came from. The whole series collects under <a href="https://unprompted.dirkprimbs.de/tags/photo-thoughts.html">Photo Thoughts</a>.</em></p>]]></content:encoded>
            <pubDate>Sun, 19 Jul 2026 04:00:00 GMT</pubDate>
        </item>
        <item>
            <title>What Are We Actually Doing Here</title>
            <link>https://unprompted.dirkprimbs.de/posts/what-are-we-actually-doing-here.html</link>
            <guid isPermaLink="true">https://unprompted.dirkprimbs.de/posts/what-are-we-actually-doing-here.html</guid>
            <description>A year of #fotogedanken, distilled into one piece: photography is a practice you do for yourself, in a world that keeps insisting it is for an audience, a platform, or a purchase.</description>
            <content:encoded><![CDATA[<p>For about a year I have been posting small photography thoughts on Mastodon under a tag I invented for myself, <a href="https://digitalcourage.social/tags/Fotogedanken">#fotogedanken</a>. Not photos. Thoughts. Someone asked me early on what the point of that was, and the answer I gave then still holds up: I care less about the single image than about the medium. What are we doing here, why are we doing it, and what does it actually do to the people looking?</p>
<p>Then other people started posting fotogedanken of their own, which made me very happy. The tag has turned into something better than a personal notebook - follow it and you get a steady stream of photographers thinking out loud about the medium instead of about gear, which is rarer than it should be.</p>
<p>Reading a year of my own back in one sitting, the same argument keeps surfacing in different disguises: photography is a practice you do for yourself, in a world that keeps insisting it is for an audience, a platform, or a purchase. Everything below is a variation on that one idea. Each section also has a longer post behind it that I will get to over the coming weeks - this one is the distillation.</p>
<h2>The part that isn't pressing the button</h2>
<p>Start with something I keep coming back to. Photography is the only art form where the act itself can theoretically be over in a millisecond. A painter is inside the making for hours. A musician is inside it for the length of the piece, at minimum. We can walk around for an entire afternoon and the work, the actual exposure, lasts a five hundredth of a second. Everything else - the walking, the waiting, the noticing, the editing, the sequencing, the moment where you hand the thing to somebody - sits around the act rather than being it. That is exactly why thinking about the medium is worth the time. The interesting part is almost entirely the part that is not pressing the button.</p>
<p>It also means photography reaches a lot further than making pictures with a camera. My son's girlfriend gave me a notebook for Christmas, a Nuuna made from recycled jeans, and it feels wonderful. It also needed work before it could compete with my current favourite, a Dingbats. I transplanted a ribbon marker out of another notebook, glued in three pen loops, built a paper pocket into the back cover. Now I only need the patience to fill the book I am currently writing in before I am allowed to start the new one. I count that as one of my fotogedanken, because people who are into photography tend to be the same people who notice the fine grain of things, who have a soft spot for analog objects even when they shoot digital and publish online, and for whom the way there is usually the point.</p>
<h2>Amateurish is a compliment</h2>
<p>Somewhere in the first year of putting frames around my images, someone whose work I openly admired told me they looked <em>amateurish</em> and <em>gimmicky</em>. Gimmicky is a matter of taste, fine. Amateurish I will happily take as a compliment, because it says I am doing this primarily out of affection for the medium rather than to satisfy a convention. We live in a world of photographic oversaturation. The only person who has to be happy with the result is you. If that means a frame, a filter, a round image, a deliberately blown-out sky, then you have already won.</p>
<h2>A swipe crowd is not an audience</h2>
<p>"Instagram is the best way to find an audience for my photography." I hear it constantly and I have doubts. I have never once watched somebody be long and thoughtful on social media. Be honest with yourself - how often does it really happen? And by long I do not mean three seconds instead of half a second. What we are dealing with is a swipe-like-swipe-swipe-like crowd, and whatever that is, it is not an audience. Not the same species of thing.</p>
<p>The marketers make this very legible. Every online presence I have ever run - the blog, the podcasts, the photography, back when I was still feeding a five-figure follower count on Twitter - has eventually attracted someone who wanted me to start selling my audience. Photography seems especially prone to it. The wish for an audience seems to lead directly to the error of treating monetization as the same thing as success. Requests came in via Pixelfed the other week. Nobody has yet offered to monetize my Bookwyrm profile, which is a shame. I guess I keep reading purely for fun then.</p>
<h2>Twenty copies, given away in person</h2>
<p>The counterweight is not to give up on being seen. It is to put the work somewhere that assumes a viewer with a spare five minutes. <a href="https://www.schlicksbier.com/thoughts-on-photography-zine/">Erik's photo zine</a> is the model I keep pointing at, because it stands in a long tradition of people thinking critically about photography as a form of communication and handing those thoughts to others for discussion. That practice has become rare. Most photography publishing today is either a lightly disguised invitation to buy gear or a how-to, and both of those are fine, and neither of them is a conversation.</p>
<p>There is a rule hiding in that which I only formulated recently, and it is uncomfortable enough that I want it in writing: if you put no effort into publishing your images, you do not get to be surprised when the audience puts no effort into thinking about what they saw. Layout is respect. A sequence is an argument. Handing somebody twenty printed pages is a different request than dropping a JPEG into a feed, and people answer the request you actually made.</p>
<p>So my photos exist almost exclusively in print, in a zine or a book, and even then only if you really want one. Twenty copies, maximum print run, given away in person. This year I want to go a step further and make them by hand. I genuinely do not know yet whether that is a good idea, because I love holding printed photographs about as much as I hate wrestling with modern printing technology. But I want unusual paper, and unusual paper means doing it myself.</p>
<hr />
<p><em>There is more where this came from. The whole series collects under <a href="https://unprompted.dirkprimbs.de/tags/photo-thoughts.html">Photo Thoughts</a>.</em></p>]]></content:encoded>
            <pubDate>Sat, 18 Jul 2026 04:00:00 GMT</pubDate>
        </item>
        <item>
            <title>RAW Development Deep Dive</title>
            <link>https://unprompted.dirkprimbs.de/posts/raw-development-deep-dive.html</link>
            <guid isPermaLink="true">https://unprompted.dirkprimbs.de/posts/raw-development-deep-dive.html</guid>
            <description>If you shoot anything outside of standard visible light - like deep infrared or UV - you need to know which demosaicing algorithm is actually going to save your image from turning into a colorful mess of artifacts.</description>
            <content:encoded><![CDATA[<p>Today is going to get a bit specific and technical. But don't worry, this won't be the new standard content here. The following might be interesting for anyone who deals with photography on a daily basis and wants to know how things work under the hood. If you also happen to shoot "at the limits" like me - meaning infrared or ultraviolet - or if you use a manually modified camera, then this stuff might be even more relevant.</p>
<p>Still here? Okay. Let's get started.</p>
<p>In my last post, I described where standard RAW developers like Lightroom <a href="https://unprompted.dirkprimbs.de/posts/Infrared.html">hit their limits when it comes to infrared photography</a>. The takeaway was that automated processes optimized for normal photography get completely thrown off by the quirks of an IR image.</p>
<p>The first step of <em>any</em> image processing is what we call demosaicing. Even if you shoot straight to JPEG, this step still happens first, just directly inside the camera instead.</p>
<h4>What is demosaicing anyway? The art of puzzling</h4>
<p>A RAW file is not a finished image. You have to imagine it more like an incomplete mosaic. Every pixel on the camera sensor sits under a color filter - usually Red, Green, or Blue (the so-called Bayer filter). So a pixel under a red filter only knows the brightness value for red, and has absolutely no clue about green or blue. Demosaicing is the process where the software solves this puzzle. The algorithm looks at a pixel and its neighbors, then makes an educated guess to calculate the missing color values for every single pixel. Only after that do we get an actual color image.</p>
<p>How the software solves this puzzle depends on the motif, the situation, and the camera. It is less of a fixed mathematical equation and more of a strategic choice. This is where the wheat gets separated from the chaff. There are a bunch of different ways to solve this problem, and since most people want to deal with photos rather than algorithms, programs like RawTherapee have smart processes to choose for us. But they also let us make the choice ourselves - which can actually be better, since we as photographers usually know best what we want to focus on.</p>
<p>Here is a screenshot from RawTherapee showing a 100% crop of one of my RAW images with demosaicing deactivated. You can clearly see the structure of the sensor:</p>
<p><img alt="Screenshot of RawTherapee with a picture at 100% and deactivated demosaicing." src="https://unprompted.dirkprimbs.de/assets/2026-07-17_RAW_Development_Deep_Dive_image-5.png" width="900" height="615" loading="lazy" decoding="async"></p>
<p>The exact same image, same crop. Only difference: the algorithm.</p>
<p><img alt="Screenshot of RawTherapee with a picture at 100% and DCB algorithm for demosaicing." src="https://unprompted.dirkprimbs.de/assets/2026-07-17_RAW_Development_Deep_Dive_image-6.png" width="898" height="616" loading="lazy" decoding="async"></p>
<p>Broadly speaking, you can divide most algorithms into two philosophies:</p>
<p><strong>1. The "detail-first" philosophy (The Optimists)</strong></p>
<p>These algorithms assume that the image data is clean and that even the tiniest deviation between pixels represents a real detail. They analyze edges and patterns aggressively to reconstruct the sharpest possible image.</p>
<ul>
<li><strong>Examples of these algorithms:</strong> <code>AMaZE</code>, <code>RCD</code>, <code>DCB</code></li>
<li><strong>Strengths:</strong> They deliver perfect sharpness with clean, low-ISO images. Ideal for fabrics, architecture, or fine structures.</li>
<li><strong>Weaknesses:</strong> They are easily fooled. Noise looks like a fine pattern to them - and gets promptly "amplified". This leads to things called <strong>labyrinth artifacts</strong>. You can get <strong>false colors</strong> (color fringing) on hard edges, or <strong>moiré</strong> (rainbow patterns) on fine textures.</li>
</ul>
<p><strong>2. The "artifact-avoidance" philosophy (The Cautious)</strong></p>
<p>These algorithms are more conservative. Their main goal is to avoid making mistakes, even if that means losing a tiny bit of sharpness. They assume the data might be noisy and put more value on smooth surfaces and clean colors.</p>
<ul>
<li><strong>Examples:</strong> <code>LMMSE</code>, <code>IGV</code>, <code>VNG4</code></li>
<li><strong>Strengths:</strong> They are ideal for high-ISO images or noisy data. Labyrinth artifacts or moiré are barely an issue here.</li>
<li><strong>Weaknesses:</strong> With an absolutely perfect image, they can look a bit "softer" in a direct comparison with their aggressive colleagues.</li>
</ul>
<h4>Useful parameters to know</h4>
<p>Besides choosing the algorithm, there are a few sliders you can use to fine-tune your strategy. The following refers to RawTherapee, but you can find similar options in other tools too.</p>
<ul>
<li><strong>Dual Demosaic (e.g., <code>AMaZE+VNG4</code>):</strong> A brilliant hybrid approach. You can use a "detail algorithm" for the sharp areas of the image and a "cautious algorithm" for the smooth surfaces (like the sky). The <code>contrast threshold</code> slider defines where that boundary lies.</li>
<li><strong>False Color Suppression:</strong> This tool applies a filter that affects <strong>only the color information</strong>, not the sharpness. It smooths out those colorful splotches that often appear along edges.</li>
<li><strong>Border:</strong> The pixels at the very edge of the sensor can't be perfectly reconstructed because they lack neighbors. Normally, RAW converters just crop them out. With this slider, you can force the software to try anyway - but at your own risk, as this can create artifacts.</li>
</ul>
<p>With this knowledge, we can now choose the right strategy for our images on purpose. For standard shots, modern RAW developers are already pretty good at doing this for us. Low ISO shot? =&gt; AMaZE. High ISO? One of the others... For photographers, knowing this stuff becomes valuable when you deviate from the standard case. Shot at high ISO by accident? A special light spectrum or heavy filter use that creates a scenario the software can't guess? Choosing the algorithm yourself can really help!</p>
<p>One such scenario is infrared photography, so here is an explanation of what that looks like in practice.</p>
<h4>Filter Group 1: "Super Color" / Low Wavelength (550nm, 585nm, 625nm)</h4>
<ul>
<li><strong>The Challenge:</strong> Here, a wild mix of strong infrared light and a portion of the visible spectrum hits the sensor. The result is very intense false colors and a high risk of artifacts. However, we still have usable detail information across several channels.</li>
<li><strong>The Strategy:</strong> We need a compromise. A "detail-first" algorithm is good, but it has to keep false colors under control.</li>
<li><strong>The Choice:</strong> I almost always start with <strong><code>DCB</code></strong> here. It's just as sharp as <code>AMaZE</code>, but it's better at handling false colors, especially for cameras without an AA filter (like my RP). An alternative is a <strong><code>Dual Demosaic</code></strong> approach to treat the sky and foliage separately. To help things along, I set the <strong>false color suppression</strong> slider to 2 or 3.</li>
</ul>
<h4>Filter Group 2: "Classic IR" / Mid Wavelength (720nm)</h4>
<ul>
<li><strong>The Challenge:</strong> The signal is now almost pure infrared. A little known fact: the filters on the bayer array become almost transparent above 700nm, so signal strength is distributed across the board. If you choose to watch for color, which technically you still can at this wavelength, your challenge is that color and noise are hard to distinguish.</li>
<li><strong>The Strategy:</strong> At this wavelength you are at a crossroads: You can treat your image like a black&amp;white shot. In that case read the next section. If you prefer a classic color treatment then we have to force the software to treat the image like a high-ISO shot. An "artifact-avoidance" strategy is mandatory so we don't interpret and amplify the noise as detail.</li>
<li><strong>The Choice:</strong> For false-color images, <strong><code>LMMSE</code></strong> or <strong><code>IGV</code></strong> are the top choices here. They handle the noisy channels gently and prevent those dreaded labyrinth patterns. With a 720nm filter, though, you might also just decide to go straight to a black-and-white conversion. Which brings us to our next option...</li>
</ul>
<h4>Filter Group 3: "Deep IR" / High Wavelength (850nm) &amp; Black-and-White Conversion</h4>
<ul>
<li><strong>The Challenge:</strong> There is virtually no color information left here. The G and B channels are practically transparent to light of this wavelength. Traditional demosaicing would be pointless and counterproductive here.</li>
<li><strong>The Strategy:</strong> If you have access to specialized RAW converters such as RAWTherapee then you can pick a spezielized demosaicing algorithm: "Mono".</li>
<li><strong>The Choice:</strong> <strong><code>Mono</code></strong> is the "anti-demosaicer". It does not attempt a classic color reconstructions but focuses on luminancy entirely. The result is the maximum possible sharpness and tonality without any interference.</li>
<li><strong>A word of warning:</strong> If you attempt this with an 720nm filter it depends largely on your setup what you get. Many sensors will produce a sensor grid without demosaicing as some of the color information makes it through. Take a look at the sky, this is where you see this effect best. </li>
</ul>
<p>So, that's it for today. At some point, I'll extend this series to cover file formats and color spaces, but that's enough for now. Ultimately, for the pragmatic case, you can always just switch your camera to "Sport" mode and trust the tech 😉</p>]]></content:encoded>
            <pubDate>Fri, 17 Jul 2026 04:00:00 GMT</pubDate>
        </item>
        <item>
            <title>Infrared Photography, Notes for the Slightly Obsessed</title>
            <link>https://unprompted.dirkprimbs.de/posts/Infrared.html</link>
            <guid isPermaLink="true">https://unprompted.dirkprimbs.de/posts/Infrared.html</guid>
            <description>Honestly, you can&#x27;t just click through tutorials for this stuff because everything - from setting the white balance to choosing a demosaicing algorithm - requires manually overriding what the software thinks is right, which means abandoning your favorite easy-to-use program entirely.</description>
            <content:encoded><![CDATA[<p>I've been out and about a lot with my infrared camera lately. The invisible-to-our-eyes spectrum has fascinated me for a long time, and back in 2019 I finally had my somewhat beat-up <a href="https://en.wikipedia.org/wiki/Canon_EOS_20D">Canon 20D</a> converted. A few years later I'm still shooting IR in the Canon system, but now with a modified <a href="https://en.wikipedia.org/wiki/Canon_EOS_RP">EOS RP</a>. Thanks to the <a href="https://www.canon.de/store/canon-bajonettadapter-mit-einsteckfilter-halter-ef-eos-r-mit-zirkularpolfilter-a/3442C005/">drop-in filter adapter</a> I can pick the light spectrum I want on the fly, and thanks to the EF mount I get a giant lens park to play in.</p>
<p><img alt="Infrared shot taken in Singapore. Sky is yellow, much of the picture is grey-blue. There is a skyline in the back, a bay in the middle and a wooden walkway in the front. At the left middle there's a sphere in the water (it houses Singapore's flagship Apple Store). There's a lens flare and a sun star." src="https://unprompted.dirkprimbs.de/assets/Infrared_Selection_011.jpg" width="863" height="861" loading="lazy" decoding="async"></p>
<p>Anyone getting into infrared photography quickly notices: the usual image editing tools hit their limits here. Lightroom in particular, my tool of choice for years, is really not built for IR. It gets in your way at the very first step - setting the white balance. IR images are very warm (red, basically), and to compensate you have to push the white balance slider dramatically to the left into the "cold" range. Lightroom unfortunately has a hard-coded lower bound that is "too warm".</p>
<p>Resourceful users found a workaround: camera profiles! Turns out you can create and register camera-specific profiles in Lightroom. Getting there is a bit fiddly though, especially if you're trying to sidestep Lightroom's built-in limits. The solution? A free DNG tool from 2012 (!!) by Adobe, originally meant for converting manufacturer RAW files to DNG (<a href="https://helpx.adobe.com/ca/camera-raw/digital-negative.html">more info here</a>). Open a sample file in the tool, drag the color temperature all the way down under "Color Matrices", export the whole thing as a camera profile, drop it into Lightroom's profile directory, then either pick it manually or configure it as the default when this specific camera shows up as the author of a RAW file. Convoluted, sure (<a href="https://kolarivision.com/post-infrared-photo-editing/custom-dng-tutorial-setting-white-balance-infrared-photography/">here's a tutorial</a>), but at least you can now set a proper white balance for these files. One important thing: NEVER trust the auto setting. It's hard-tuned in LR. Great for normal shots, not great for special cases.</p>
<p>And the pain doesn't stop there - a lot of IR photographers eventually want to swap color channels. Lightroom is not exactly intuitive for that, and at the latest at this point you'll want to move to a "big" image editor.</p>
<p>The next issue: "intelligent" software like Lightroom often produces noisier IR images than necessary. Why? Because neither the development algorithms (in particular the demosaicing) nor Lightroom's famous denoising fit our use case. You don't always spot it immediately, especially not if you look at a downsized image instead of at 100%. But in practice, even when the image looks clean at first glance, you have much less headroom for corrections and less detail than you could have. And especially when adjusting color channels you'll hit limits and clip channels faster than you'd like.</p>
<p>Where does this come from? Simple: if you point a RAW developer at IR photos, you're basically forcing it to get confused. Unlike "normal" images, the image information is not evenly distributed across the four filters of a Bayer sensor. Instead the red channel is loaded with information while the green and blue channels are weak and noisy. The job of a RAW developer is to compute the "right" colors from those signal values using a suitable algorithm. Especially with high-ISO images, i.e. lots of noise, the software picks different algorithms than for low ISO. An IR image, particularly one taken during the day, often comes in at a low ISO (100, 200) but still has enormous noise in two of the three channels. So if you want to squeeze out the best result you need to tell the software up front how to develop the RAW. Many tools only allow that in a very limited way. Denoising is very similar: modern software comes with several specially trained AI models and picks them based on image metadata. Automatic denoising in Lightroom or in the DxO tools I usually love is a "hit and miss" affair. You just can't trust it blindly. In many of my shots these tools actually make the noise worse if I don't watch out.</p>
<p>All of these problems can of course be worked around in an image editor. Pros use channel-specific luminosity masks and do denoising the "classic" way, without AI tools. That gets tedious fast, and at least I sometimes lose track of what I'm even trying to do. Image editing gets mixed up with image development, and the result suffers.</p>
<p>So, what to do? I've been at this for a while and by now I've found decent solutions for a lot of these things. What I find interesting in hindsight is the journey I went on - from "blindly click through a tutorial and learn what to do to get a certain look" to "dig deeper and deeper into sensors, file formats, base processing". Especially around IR there's a lot written on the internet that is only half-true, or where the explanations don't quite match the effect. Hence this blog post. I don't claim to be error-free, but maybe these notes help someone who is past the simple basics and just wants to do it properly for once.</p>
<p>One thing to know up front: I don't see myself as a particularly strong image editor. Once my RAWs are properly developed I'm more of a tinkerer than a targeted editor. Photoshop &amp; co are part of my toolbox, but 80% of the functions in there feel esoteric and dangerous to me. But at least the front end of the processing chain I think I've now understood well enough, so here's my workflow, as of 2025:</p>
<h2>My workflow for maximum quality (my tools of choice: RawTherapee &amp; DxO)</h2>
<p>After a lot of trial and error I've built a workflow that combines the strengths of different programs. The basic idea: use <strong><a href="https://www.rawtherapee.com/">RawTherapee</a></strong> for the technical groundwork on the RAW file, and only then hand it off to my favorite tool, <strong><a href="https://www.dxo.com/dxo-photolab/">DxO PhotoLab</a></strong>, for optical corrections and creative optimization. Both tools can of course be swapped for alternatives. The role of DxO PhotoLab in particular is interchangeable. But after years of experimenting I do consider RawTherapee the most powerful option, simply because the tool is basically arbitrarily configurable when it comes to the base algorithms. Close behind: <a href="https://www.darktable.org/">Darktable</a>. Personally I don't love DT, but I have to give it that it also offers lots of knobs and levers that are often optimized away or lumped together in the big productivity tools. And last but not least: my IR workflow is different from my workflow for "normal" images. For those I just stay in DxO from start to finish, and before that I mostly lived in LR. But back to the IR workflow.</p>
<p>The goal is to produce, in RawTherapee, a technically perfect but neutral <strong>16-bit TIFF</strong> - a "digital negative". Only then does the actual editing begin. Why? Because the point is to interpret the sensor data in a controlled way and then lock that interpretation in. TIFFs are painfully large files, just as a word of warning. But they are lossless and give you maximum image information for further work.</p>
<h3>Phase 1: The technical foundation in RawTherapee</h3>
<p>This is where you make all the decisions that automated software would get wrong because of IR's quirks. We deliberately override the software's wrong assumptions.</p>
<h3>Demosaicing - the single most important step</h3>
<p>Here we decide how an image gets computed from the raw sensor data. At 100% zoom the differences become obvious.</p>
<ul>
<li><strong>For 720nm filters (classic IR):</strong> I usually start with <strong><code>LMMSE</code></strong> or <strong><code>IGV</code></strong>. These algorithms are optimized for high noise and prevent the typical "maze artifacts" that noise in the G and B channels can produce. If you're aiming for a pure black-and-white image, <strong><code>Mono</code></strong> is worth a try - it often gives the sharpest results because it focuses on the clean red channel.</li>
<li><strong>For 550nm filters ("Super Color"):</strong> For me <strong><code>DCB</code></strong> has proven a good starting point. My EOS RP doesn't have an anti-aliasing filter, and the documentation says <code>DCB</code> is good at avoiding false colors on such sensors.</li>
<li><strong>False color suppression:</strong> For 550nm shots this slider is worth its weight in gold. A value of 2 or 3 removes the typical pink/green blotches without hurting sharpness. For 720nm I leave it at 0 or 1.</li>
</ul>
<h3>White balance - manual control</h3>
<p>Auto is essentially useless here, because infrared is invisible by definition. The images we're working with are a form of false color photography, and it's up to the photographer which effect to aim for. That said, you can of course click the auto button and depending on the tool something you like might come out. Just make sure you don't accidentally clip one of the channels. That's exactly why I set WB manually as a rule.</p>
<ul>
<li><strong>Eyedropper tool:</strong> A click on healthy green foliage (which in IR reflects almost white) or on clouds is usually my first try. But again: you decide what color shift you want.</li>
<li><strong>Fine tuning:</strong> Nudge with the <code>Temperature</code> and <code>Tint</code> sliders.</li>
<li><strong>The power tool:</strong> If the image still has a color cast, RawTherapee has a special tool that feels like it was made for us: the <strong><code>Red/Blue equalizer</code></strong>. This slider directly controls the ratio of red to blue and can eliminate stubborn casts. Why is it made for us? Because in IR the red channel is overrepresented at the expense of blue. The white balance shifts values between red and blue back and forth, and the equalizer lets you calibrate that ratio.</li>
</ul>
<h3>3. Exposure &amp; noise reduction</h3>
<ul>
<li><strong>Exposure:</strong> I set exposure and black point so that the histogram clips neither on the left nor on the right. Important: I leave highlight recovery off, because it's optimized for visible light and produces weird results in IR. I also expose to the right when shooting (ETTR): I deliberately expose so bright that the highlights just barely don't clip. The reason: in IR the shadow detail drowns in noise very quickly. The only cure is to capture more signal, i.e. ideally to expose longer. Cranking up ISO is a bad idea, by the way, because that amplifies the noise too. So you want the lowest possible ISO with the most possible signal. Which means: aperture wide open, or long exposure time.</li>
<li><strong>Noise reduction:</strong> Here I focus <strong>exclusively</strong> on <strong>color noise (<code>Chroma</code>)</strong>. Luminance noise I don't touch. A manual pass on the Chroma slider very effectively kills the color blotches in the weak channels.</li>
<li><strong>What NOT to do in this phase:</strong> sharpening, contrast, saturation, or any other creative tools. The goal is a "flat", neutral, but technically clean image.</li>
</ul>
<h2>Phase 2: Export as a digital negative</h2>
<p>Once everything fits, the image gets prepped for handoff.</p>
<ul>
<li><strong>File format:</strong> <strong>TIFF</strong></li>
<li><strong>Bit depth:</strong> <strong>16-bit</strong> (absolutely essential for quality!)</li>
<li><strong>Color profile:</strong> A wide color space like <strong>ProPhoto RGB</strong> or <strong>Rec2020</strong>. This makes sure none of the unique IR colors get lost on export.</li>
</ul>
<h2>Phase 3: The fun part in DxO PhotoLab (or another tool)</h2>
<p>The exported TIFF is now a "well-behaved", clean image. The problematic IR artifacts have already been handled manually and correctly. Now DxO can play to its strengths without getting confused.</p>
<ul>
<li><strong>Optical corrections:</strong> Apply DxO's first-class corrections for distortion, vignetting, etc.</li>
<li><strong>Contrast &amp; clarity:</strong> Tools like ClearView Plus and the microcontrast slider now work beautifully.</li>
<li><strong>Creative work:</strong> If you want to swap channels for the "false color look", rotate the slider in the HSL tool by 180 degrees, or pass the TIFF over to Photoshop, Affinity or GIMP. Go wild.</li>
<li><strong>If some noise is still left:</strong> you'll notice right away - working from TIFF, all those almost magical AI denoising tools disappear, because they mostly work on RAW data and need it. But there are exceptions. The "classical" tools are still available of course, and some AI tools work too. Topaz Denoise AI, for example, handles TIFFs just fine, and many of the Photoshop automatics are still available.</li>
</ul>
<p>This workflow may look convoluted at first, but it makes sure every decision is made by the tool best suited to make it. The result is visibly higher image quality and more flexibility for the creative side. It also optimizes for marginal utility. If you want to be pragmatic: take a look at the automatics and keep an eye on noise levels. Depending on the subject it may just not matter and a simple round with the auto sliders is enough. My final recommendation: if you shoot IR, seriously look at other RAW tools, even if your heart is with Lightroom. Even if you don't want to pick algorithms yourself, just the handling of white balance and IR-specific color shifts is often solved much better elsewhere. Tools like RawTherapee and Darktable are also free, so at least it doesn't hurt your wallet.</p>
<h2>More reading?</h2>
<ul>
<li><a href="https://rawpedia.rawtherapee.com/Demosaicing">Demosaicing article on RawPedia</a></li>
<li><a href="https://kolarivision.com/post-infrared-photo-editing/custom-dng-tutorial-setting-white-balance-infrared-photography/">Custom DNG Tutorial for setting a white balance for infrared photography</a></li>
<li><a href="https://en.wikipedia.org/wiki/Bayer_filter">Bayer sensor (Wikipedia)</a></li>
<li><a href="https://kolarivision.com/advanced-infrared-photography-processing-power-luminosity-masks/">Advanced Infrared Photography Processing: The Power of Luminosity Masks</a></li>
</ul>
<h2>How do white balance and tint tools actually work?</h2>
<p>Every pixel is a mix of a red, green, and blue value. To compute that value, demosaicing algorithms make assumptions about the usual distribution and combine the sensor values accordingly. White balance then shifts the balance between the R(ed) and B(lue) values toward cooler (toward blue) or warmer (toward red). Tint does the same thing but for the green value, which white balance actually leaves untouched.</p>
<p>If you want to play around, <a href="https://unprompted.dirkprimbs.de/wbsim.html">here's a little simulator</a> that does this for ONE pixel. Just set the base color and mess with the sliders. Have fun 🙂</p>
<p><img alt="image-20260716172315960" src="https://unprompted.dirkprimbs.de/assets/Infrared_image-20260716172315960.png" width="474" height="661" loading="lazy" decoding="async"></p>]]></content:encoded>
            <pubDate>Thu, 16 Jul 2026 04:00:00 GMT</pubDate>
        </item>
        <item>
            <title>How AI edits my texts (or not)</title>
            <link>https://unprompted.dirkprimbs.de/posts/polish-model-bakeoff-insights.html</link>
            <guid isPermaLink="true">https://unprompted.dirkprimbs.de/posts/polish-model-bakeoff-insights.html</guid>
            <description>I ran a full comparison of nine different models - from remote giants to my local setup - and found that how finished your draft is matters way more than which model you pick, especially when privacy and speed are non-negotiable.</description>
            <content:encoded><![CDATA[<p>Some context first, because the test only makes sense if you know what I was building toward. I wanted a blog engine that supports my writing instead of replacing it. Not a machine that takes a topic and hands me back an article, but something that takes what I already wrote and helps it over the finish line. On top of that I had two preferences I wasn't willing to trade away: privacy-first and local-first, leaning on open technology wherever I could. Ideally the thing that touches my half-formed thoughts runs on my own machine and never phones home.</p>
<p>That goal is what turned "which model is best" into an actual question worth testing, because "best" depends entirely on the job. So I ran two experiments. First: how do the various models cope when the input is bulleted, fragmented notes versus a finished draft? That's the real fork in how I write - some days I hand it clean prose, some days a pile of stubs. Second: how does the prose itself differ model by model, once you strip out the effect of the input? I wanted to know each model's fingerprint, not just a leaderboard.</p>
<p>Notes below from testing the polish step across 8 configurations (7 remote models + local gemma4:e4b) over the blog's real drafts. What I learned.</p>
<h2>The prompt every model ran</h2>
<p>One thing worth being explicit about: every model got the exact same prompt. No per-model tuning, no coaxing the weaker ones with extra hand-holding. That was the point - I wanted to see the model's own behavior, not my ability to prompt-engineer around it. If I'd tweaked the prompt per model I'd be measuring my patience, not the models.</p>
<p>The prompt frames the model as "the author's editor" and hands it my rough notes. The load-bearing part is a rule I put in caps and at the very top: do not lose ideas. Not "summarize," not "improve" - present all of my thinking, every distinct point, and reuse my own vivid phrasing rather than paraphrasing it into mush. I spelled out that dropping or watering down an idea to make the text shorter or smoother counts as a failure, because that's exactly the "helpful" instinct I was trying to suppress. The model is allowed to reorder for flow, merge fragments into sentences, and add light connective tissue, but it may not invent new claims.</p>
<p>Two more blocks round it out. A voice block pastes in my writing guide verbatim - including the list of words and phrases the model must never use - so "in their voice" isn't left to interpretation. And a format block asks for clean Markdown, translates any German into natural English (I draft in both), and insists on the article body only, no frontmatter or preamble.</p>
<p>Here's the whole thing, with the two injected values marked in braces (my voice guide gets pasted into the first, the raw draft into the second):</p>
<div class="codehilite"><pre><span></span><code><span class="n">You</span><span class="w"> </span><span class="k">are</span><span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="n">author</span><span class="s1">&#39;s editor. The text below is the author&#39;</span><span class="n">s</span><span class="w"> </span><span class="n">own</span><span class="w"> </span><span class="n">rough</span><span class="w"> </span><span class="n">notes</span><span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="n">a</span><span class="w"> </span><span class="n">blog</span><span class="w"> </span><span class="n">post</span><span class="p">.</span><span class="w"> </span><span class="n">Turn</span><span class="w"> </span><span class="n">them</span><span class="w"> </span><span class="k">into</span><span class="w"> </span><span class="n">a</span><span class="w"> </span><span class="n">finished</span><span class="p">,</span><span class="w"> </span><span class="n">flowing</span><span class="w"> </span><span class="n">article</span><span class="w"> </span><span class="ow">in</span><span class="w"> </span><span class="n">their</span><span class="w"> </span><span class="n">voice</span><span class="p">.</span>

<span class="o">[</span><span class="n">MOST IMPORTANT RULE - DO NOT LOSE IDEAS</span><span class="o">]</span>
<span class="n">The</span><span class="w"> </span><span class="n">notes</span><span class="w"> </span><span class="n">contain</span><span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="n">author</span><span class="s1">&#39;s actual thinking. Your job is to present ALL of it, not a summary of it.</span>
<span class="s1">- Keep every distinct point, argument, example, and section. If the notes make five points, the article makes five points.</span>
<span class="s1">- Keep any vivid phrase, metaphor, analogy, or joke the author used. These are the best part - reuse the author&#39;</span><span class="n">s</span><span class="w"> </span><span class="n">own</span><span class="w"> </span><span class="n">wording</span><span class="p">,</span><span class="w"> </span><span class="n">do</span><span class="w"> </span><span class="ow">not</span><span class="w"> </span><span class="n">paraphrase</span><span class="w"> </span><span class="n">them</span><span class="w"> </span><span class="n">away</span><span class="p">.</span>
<span class="o">-</span><span class="w"> </span><span class="n">Dropping</span><span class="w"> </span><span class="ow">or</span><span class="w"> </span><span class="n">watering</span><span class="w"> </span><span class="n">down</span><span class="w"> </span><span class="n">an</span><span class="w"> </span><span class="n">idea</span><span class="w"> </span><span class="k">to</span><span class="w"> </span><span class="n">make</span><span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="nc">text</span><span class="w"> </span><span class="n">shorter</span><span class="w"> </span><span class="ow">or</span><span class="w"> </span><span class="n">smoother</span><span class="w"> </span><span class="k">is</span><span class="w"> </span><span class="n">a</span><span class="w"> </span><span class="n">FAILURE</span><span class="p">.</span><span class="w"> </span><span class="k">When</span><span class="w"> </span><span class="ow">in</span><span class="w"> </span><span class="n">doubt</span><span class="p">,</span><span class="w"> </span><span class="n">keep</span><span class="w"> </span><span class="n">it</span><span class="w"> </span><span class="ow">in</span><span class="p">.</span>
<span class="o">-</span><span class="w"> </span><span class="n">You</span><span class="w"> </span><span class="n">may</span><span class="w"> </span><span class="n">reorder</span><span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="n">flow</span><span class="p">,</span><span class="w"> </span><span class="k">merge</span><span class="w"> </span><span class="n">fragments</span><span class="w"> </span><span class="k">into</span><span class="w"> </span><span class="n">sentences</span><span class="p">,</span><span class="w"> </span><span class="ow">and</span><span class="w"> </span><span class="k">add</span><span class="w"> </span><span class="n">light</span><span class="w"> </span><span class="n">connective</span><span class="w"> </span><span class="n">tissue</span><span class="p">,</span><span class="w"> </span><span class="n">but</span><span class="w"> </span><span class="n">do</span><span class="w"> </span><span class="ow">not</span><span class="w"> </span><span class="n">invent</span><span class="w"> </span><span class="k">new</span><span class="w"> </span><span class="n">claims</span><span class="w"> </span><span class="ow">or</span><span class="w"> </span><span class="n">facts</span><span class="p">.</span>

<span class="o">[</span><span class="n">VOICE</span><span class="o">]</span>
<span class="k">Write</span><span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="n">way</span><span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="n">author</span><span class="w"> </span><span class="n">writes</span><span class="p">.</span><span class="w"> </span><span class="k">Match</span><span class="w"> </span><span class="n">this</span><span class="w"> </span><span class="n">guide</span><span class="w"> </span><span class="n">exactly</span><span class="p">,</span><span class="w"> </span><span class="n">including</span><span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="n">list</span><span class="w"> </span><span class="k">of</span><span class="w"> </span><span class="n">words</span><span class="w"> </span><span class="ow">and</span><span class="w"> </span><span class="n">phrases</span><span class="w"> </span><span class="n">you</span><span class="w"> </span><span class="n">must</span><span class="w"> </span><span class="n">never</span><span class="w"> </span><span class="k">use</span><span class="err">:</span>
<span class="err">{</span><span class="n">voice_guidelines</span><span class="err">}</span>

<span class="o">[</span><span class="n">FORMAT</span><span class="o">]</span>
<span class="o">-</span><span class="w"> </span><span class="n">Clean</span><span class="w"> </span><span class="n">Markdown</span><span class="p">.</span><span class="w"> </span><span class="k">Translate</span><span class="w"> </span><span class="ow">any</span><span class="w"> </span><span class="n">German</span><span class="w"> </span><span class="k">into</span><span class="w"> </span><span class="k">natural</span><span class="w"> </span><span class="n">English</span><span class="p">.</span>
<span class="o">-</span><span class="w"> </span><span class="n">Do</span><span class="w"> </span><span class="ow">not</span><span class="w"> </span><span class="k">output</span><span class="w"> </span><span class="n">frontmatter</span><span class="p">,</span><span class="w"> </span><span class="n">a</span><span class="w"> </span><span class="n">title</span><span class="p">,</span><span class="w"> </span><span class="n">JSON</span><span class="p">,</span><span class="w"> </span><span class="ow">or</span><span class="w"> </span><span class="ow">any</span><span class="w"> </span><span class="n">preamble</span><span class="p">.</span><span class="w"> </span><span class="k">Output</span><span class="w"> </span><span class="k">ONLY</span><span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="n">article</span><span class="w"> </span><span class="n">body</span><span class="p">.</span>

<span class="o">[</span><span class="n">AUTHOR&#39;S NOTES</span><span class="o">]</span>
<span class="err">{</span><span class="n">raw_draft</span><span class="err">}</span>
</code></pre></div>

<p>The interesting design consequence: this single prompt is what makes the whole thing auto-scale. Because rule #1 is "preserve the author's wording," a finished draft leaves almost nothing to do and every model just tidies, while a bare outline forces the model to actually write. I didn't build separate "copy-edit mode" and "draft mode" prompts - the same instruction produces both behaviors depending on what I feed it. The bake-off was partly a test of whether that hunch held up. It did.</p>
<h2>The core finding - divergence tracks draft shape, not model</h2>
<p>How much the models' outputs differ from each other is driven almost entirely by how finished the source draft is, not by which model ran. Measured across 6 posts, flow-similarity lined up monotonically with the draft's bullet-ratio: prose drafts converged (57 - 98%), while a pure outline diverged wildly (3%).</p>
<p>The mechanism is simple. The polish prompt's #1 rule is "preserve the author's wording." On finished prose there's nothing to invent, so every model just tidies and they land in the same place; on bare bullets each model writes its own prose, so they scatter.</p>
<p>This means the system's aggressiveness auto-scales to how much you write - hand it prose, it copy-edits; hand it bullets, it drafts. You control the dial just by draft finishedness, no setting to touch. This is exactly the behavior I want.</p>
<p>The "outline test" is where model choice actually matters - that's the column set worth studying when picking a model, because that's where the model is writing rather than tidying.</p>
<p>As a side note, hello_world's 98% similarity was a bit of a degenerate data point. Its "draft" was already a finished, published article (title/date/tags and all), so every model handed it back ~98% unchanged. It wasn't a case of "models agree" so much as "nothing to polish."</p>
<h2>Genuinely model-specific tics (survive after stripping out format effects)</h2>
<ul>
<li><strong>Mistral</strong>: emits em-dashes (7 across 6 posts vs ~0 for others) even when instructed otherwise.</li>
<li><strong>Sonnet</strong>: emphatic register - heavy <strong>bold</strong> (10× vs ≤3), and "genuinely" (4×). Rewrites openings more, but mainly on short/outline drafts.</li>
<li><strong>DeepSeek</strong>: the boldest re-framer on prose input (threw out the opening on engine-update and pulled a buried line to the top); also slowest remote model, especially on long drafts (181s on the 996-word one).</li>
<li><strong>e4b (local)</strong>: genuinely good on prose - preserved all ideas, no banned words, recognizably the right voice; only slip was occasional em-dashes. On pure outlines it ran ~10 - 15% wordier than Opus and added filler.</li>
</ul>
<h2>On e4b as a daily driver</h2>
<p>Similarity measures agreement, not quality - so the verdict came from reading outputs, not the numbers.</p>
<p>My verdict is that e4b is defensible as a daily driver <em>specifically because</em> of the auto-scaling property. On prose the quality gap to large models nearly vanishes; it only opens on bare outlines. So: prose → e4b is great (local, private, free); outlines → consider a remote model.</p>
<p>Where big models win is tighter prose (they cut instead of padding), better paragraph structure, and zero style-guide violations.</p>
<h2>The takeaways that actually changed my mind</h2>
<p>A few things landed hard enough to shape what I use:</p>
<p><strong>Big models are overkill for this job.</strong> The whole task is "tidy my prose without losing my ideas," and that ceiling is low - once a model can do it cleanly, a bigger one doesn't do it <em>more</em>. On finished drafts the giants were spending their capability on a problem that didn't need it. That reframed the whole decision for me. I stopped chasing the best model and started looking for a good-enough one I could run as close to home as possible.</p>
<p><strong>Mistral is a serious contender.</strong> Setting aside its em-dash habit (which I strip mechanically anyway), it turned in genuinely good prose and was quick about it. If I were picking a remote model purely on the writing, it'd be near the top. Worth keeping in mind for the outline path where model choice still matters.</p>
<p><strong>gemma4 is the real surprise.</strong> This is the one that made me rethink the setup. A small model running locally on my own machine held its own against remote giants on the writing - and then, remembered, it's multi-modal! It writes my alt text too, describing real photos coherently, image bytes never leaving the machine. </p>
<h2>See it for yourself</h2>
<p>You don't have to take my word for any of this. I put the whole comparison online: every source draft, and side by side, what each of the nine configurations did with it. Read across a row and watch the prose drift apart on the outline drafts and snap back together on the finished ones - that's the core finding, right there in front of you. If you like to see an example where the source was just bullets, select "smartphonefree" or "AICare". These are the articles with most variety in results. </p>
<p>Have a look: <a href="https://unprompted.dirkprimbs.de/viewer.html">https://unprompted.dirkprimbs.de/viewer.html</a></p>]]></content:encoded>
            <pubDate>Thu, 16 Jul 2026 04:00:00 GMT</pubDate>
        </item>
        <item>
            <title>My blog engine is now privacy-first</title>
            <link>https://unprompted.dirkprimbs.de/posts/engine-update.html</link>
            <guid isPermaLink="true">https://unprompted.dirkprimbs.de/posts/engine-update.html</guid>
            <description>I rebuilt my blog engine to make sure that everything you see here is transparent, private, and free from third-party tracking.</description>
            <content:encoded><![CDATA[<p>A quick behind-the-scenes update on the blog engine itself. Since I launched this thing I've quietly added a bunch of features, and most of them share a theme: being transparent about how the site is made, and not leaking your data to third parties in the process.</p>
<p>I built this engine myself, with AI help, which is rather the point. So none of this is a changelog - these are choices I made on purpose. Quick tour of what changed.</p>
<h3>A real transparency label</h3>
<p>Every page now carries a small AI transparency label in the footer. It says, in plain terms, what a human did and what the AI did on this site - ideation and the actual writing are mine, the AI helps with engine development and polishing. This matches the whole spirit of the <a href="https://unprompted.dirkprimbs.de/posts/aicare.html">AICare toolkit</a> I wrote about earlier: if I'm going to use AI, I should say so, out loud, where you can see it.</p>
<h3>Automatic alt text for images</h3>
<p>Every image I drop into a post now gets a written alt text - the description a screen reader reads aloud, and the thing you see if an image fails to load. It's generated automatically at build time by a vision model, but only when I haven't written one myself. If I write my own, mine stays.</p>
<p>The point is accessibility. I was forgetting to write alt text by hand, so I made the engine refuse to forget.</p>
<h3>YouTube embeds that don't spy on you</h3>
<p>When I link a YouTube video, it now shows up as a proper playable embed instead of a plain link. But it does NOT load YouTube's player - or its cookies, or its tracking - until you actually click play. Before that it's just a thumbnail served from my side.</p>
<p>So you can read a post with a video in it and YouTube never knows you were there unless you decide to watch.</p>
<h3>Comments, powered by Mastodon</h3>
<p>The big one. Posts can now have a comment section - and it's just Mastodon.</p>
<p>When I publish something, the engine posts a toot linking to it. Any replies to that toot become the comments under the article. No comment database, no Disqus, no third-party embed watching my readers. The comments load from Mastodon only when you click a button, and I sanitize everything before it touches the page.</p>
<p>If you want to comment, you reply to the toot. Your comment lives on your own Mastodon account, on your own instance. I don't own it and can't hold it hostage. That feels like the right way round.</p>
<p>Credit where due: I adapted this approach from Carl Schwan's excellent write-up, <a href="https://carlschwan.eu/2020/12/29/adding-comments-to-your-static-blog-with-mastodon/">"Adding comments to your static blog with Mastodon"</a>. I changed a fair bit to fit this engine, but the core idea is his.</p>
<h3>Smaller things</h3>
<p>Link previews: posts now generate a proper preview card when shared (the image + title + summary box you see on Mastodon, LinkedIn, etc). If a post has its own image it uses that, otherwise a default.</p>
<p>Images are now self-hosted too - anything I reference gets copied into the site instead of hotlinked, so nothing breaks or leaks later.</p>
<p>The common thread, if there is one, is that I'd rather the site be a little more work for me and a lot more transparent with you. Next thing on my list is watching to see if anyone actually replies to that first toot.</p>]]></content:encoded>
            <pubDate>Wed, 15 Jul 2026 04:00:00 GMT</pubDate>
        </item>
        <item>
            <title>This smoke situation is genuinely terrifying</title>
            <link>https://unprompted.dirkprimbs.de/posts/ScaryNewWorld.html</link>
            <guid isPermaLink="true">https://unprompted.dirkprimbs.de/posts/ScaryNewWorld.html</guid>
            <description>We woke up to Ontario buried in wildfire smoke again - and all I can really do is watch it become normal and be frustrated that leaders won&#x27;t act.</description>
            <content:encoded><![CDATA[<p>This morning we woke up to this view:</p>
<p><img alt="Apocalyptic smoke over Toronto" src="https://unprompted.dirkprimbs.de/assets/ScaryNewWorld_image-20260715183342946.jpg" width="1600" height="1200" loading="lazy" decoding="async"></p>
<p>Looks apocalyptic, doesn't it? The scary thing: according to my trainer, who grew up in Toronto, this is a relatively new phenomenon. There have always been wildfires here, and in fact the forests of Canada depend on them, but he cannot remember a time when there were so many that the smoke blocked out the sun. Now it's a yearly recurrence.</p>
<p>What's especially scary is the sheer size of it all. I went over to <a href="https://thetruesize.com/">The True Size</a>, which lets you compare country sizes on the map. Here's how Ontario stacks up against Germany, where I come from:</p>
<p><img alt="Ontario compared to Germany" src="https://unprompted.dirkprimbs.de/assets/ScaryNewWorld_image-20260715184022837.png" width="760" height="645" loading="lazy" decoding="async"></p>
<p>And now take a look at where the smoke is coming from:</p>
<p><img alt="Fire map" src="https://unprompted.dirkprimbs.de/assets/ScaryNewWorld_image-20260715184050959.png" width="1440" height="1440" loading="lazy" decoding="async"></p>
<p>200 fires in Ontario alone, spread over an area the size of Germany.</p>
<p>This is scary stuff.</p>
<p>Also this:</p>
<div class="yt-facade" data-yt="0c1llRESR6o" role="button" tabindex="0" aria-label="Play YouTube video"><img class="yt-thumb" loading="lazy" src="https://unprompted.dirkprimbs.de/assets/yt_0c1llRESR6o.jpg" alt="YouTube video thumbnail" width="1280" height="720"><span class="yt-play" aria-hidden="true"></span></div>

<p>The train operators in that video were successfully evacuated, but fun fact: several freight trains were simply abandoned, including this one. It turns out trains carry plenty of combustible material, which makes driving through kilometers of burning hellscape really challenging. Videos like this one genuinely give me chills.</p>
<p>All of this is to say that our leaders are pretty moronic for not addressing this. (Drill, baby, drill, anyone?) If we put the money we currently spend on blowing things up into renewables instead, and into finding ways to counteract the effects of the ongoing climate catastrophe, we could be in a much better place.</p>
<div class="yt-facade" data-yt="Gfrcqb0bbE8" role="button" tabindex="0" aria-label="Play YouTube video"><img class="yt-thumb" loading="lazy" src="https://unprompted.dirkprimbs.de/assets/yt_Gfrcqb0bbE8.jpg" alt="YouTube video thumbnail" width="1280" height="720"><span class="yt-play" aria-hidden="true"></span></div>]]></content:encoded>
            <pubDate>Wed, 15 Jul 2026 04:00:00 GMT</pubDate>
        </item>
</channel>
</rss>