

<feed xmlns="http://www.w3.org/2005/Atom">
  <id>/</id>
  <title>Rupert Rutledge</title>
  <subtitle>A site about software engineering and some other things, written by Rupert Rutledge.</subtitle>
  <updated>2026-08-12T16:07:42+01:00</updated>
  <author>
    <name>Rupert Rutledge</name>
    <uri>/</uri>
  </author>
  <link rel="self" type="application/atom+xml" href="/feed.xml"/>
  <link rel="alternate" type="text/html" hreflang="en"
    href="/"/>
  <generator uri="https://jekyllrb.com/" version="4.4.1">Jekyll</generator>
  <rights> © 2026 Rupert Rutledge </rights>
  <icon>/assets/img/favicons/favicon.ico</icon>
  <logo>/assets/img/favicons/favicon-96x96.png</logo>


  
  <entry>
    <title>First anthropic taketh, then they giveth back</title>
    <link href="/posts/first-anthropic-taketh-then-they-giveth-back/" rel="alternate" type="text/html" title="First anthropic taketh, then they giveth back" />
    <published>2026-08-03T10:41:34+01:00</published>
  
    <updated>2026-08-03T10:41:34+01:00</updated>
  
    <id>/posts/first-anthropic-taketh-then-they-giveth-back/</id>
    <content type="text/html" src="/posts/first-anthropic-taketh-then-they-giveth-back/" />
    <author>
      <name>Rupert Rutledge</name>
    </author>

  
    
  

  <summary>Recently I was banned by Anthopic for zero reason, with the following blurb:    I then needed to log into the portal and write them a message to get put in a queue to get my account reinstated. I put very little effort into the message. It essentially said “I have no idea why you have done this ¯\_(ツ)_/¯”.  Lo and behold, over a week later (!!!) I get a message saying the account has been reins...</summary>

  </entry>

  
  <entry>
    <title>The SSH Security Hole in Docker Sandboxes</title>
    <link href="/posts/docker-sbx-s-ssh-security-issue/" rel="alternate" type="text/html" title="The SSH Security Hole in Docker Sandboxes" />
    <published>2026-07-30T14:40:12+01:00</published>
  
    <updated>2026-07-30T14:40:12+01:00</updated>
  
    <id>/posts/docker-sbx-s-ssh-security-issue/</id>
    <content type="text/html" src="/posts/docker-sbx-s-ssh-security-issue/" />
    <author>
      <name>Rupert Rutledge</name>
    </author>

  
    
  

  <summary>I’ve been setting up agents locally using docker’s sandboxes (the sbx command). These are pretty cool, and deal with a lot of issues with the security around the use of agents, and will be how I run my agent workflows going forward.  There is one, quite major, snafu with them at the moment: They try really hard to forward your ssh keys to the sandbox environment. I discovered this when getting ...</summary>

  </entry>

  
  <entry>
    <title>The Dangers of the AI Refactor</title>
    <link href="/posts/dangers-of-the-ai-refactor/" rel="alternate" type="text/html" title="The Dangers of the AI Refactor" />
    <published>2026-07-20T13:35:34+01:00</published>
  
    <updated>2026-07-20T13:35:34+01:00</updated>
  
    <id>/posts/dangers-of-the-ai-refactor/</id>
    <content type="text/html" src="/posts/dangers-of-the-ai-refactor/" />
    <author>
      <name>Rupert Rutledge</name>
    </author>

  
    
  

  <summary>Turning to an LLM to fix your problems is becoming a much more common aspect of modern life. Hit a snag, articulate it to the LLM du jour, and 🤯, your problem is solved like clicking your fingers 🫰! As engineers, this loop takes a lot of pain out of our work: Obscure compilation error? Throw it to the LLM with the logs and it will often suggest a good fix. We do, however, need to check what is ...</summary>

  </entry>

  
  <entry>
    <title>Pipelines: One of my Favourite Language Features</title>
    <link href="/posts/my-favourite-programming-language-feature/" rel="alternate" type="text/html" title="Pipelines: One of my Favourite Language Features" />
    <published>2026-07-07T15:33:54+01:00</published>
  
    <updated>2026-07-07T15:33:54+01:00</updated>
  
    <id>/posts/my-favourite-programming-language-feature/</id>
    <content type="text/html" src="/posts/my-favourite-programming-language-feature/" />
    <author>
      <name>Rupert Rutledge</name>
    </author>

  
    
  

  <summary>One of the features that contributes most to comprehensible code when it is available is “Pipelining”. Pipelining has many different meanings in the technology domain, but what I am specifically referring to is having the ability write code that allows the output of one function to be used simply as the input of another, without needing to add in any intermediate variables.  Example Take a simp...</summary>

  </entry>

  
  <entry>
    <title>The Importance of Idempotence</title>
    <link href="/posts/importance-of-idempotency/" rel="alternate" type="text/html" title="The Importance of Idempotence" />
    <published>2026-06-25T10:40:02+01:00</published>
  
    <updated>2026-06-25T10:40:02+01:00</updated>
  
    <id>/posts/importance-of-idempotency/</id>
    <content type="text/html" src="/posts/importance-of-idempotency/" />
    <author>
      <name>Rupert Rutledge</name>
    </author>

  
    
  

  <summary>Idem-what-now? Idempotenc(y|e) describes an action that will only cause a desired effect once, regardless of the number of times that the action is performed. A kind of janky physical analogy is mowing the lawn. Once you cut the grass, the grass is short and running the lawnmower over it again will not make it shorter. In software systems, we can use this property to simplify error handling in ...</summary>

  </entry>

</feed>


