<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>automation on {bjørn:johansen}</title>
    <link>https://bjornjohansen.com/tag/automation/</link>
    <description>Recent content in automation on {bjørn:johansen}</description>
    <generator>Hugo -- 0.118.2</generator>
    <language>en-US</language>
    <lastBuildDate>Thu, 27 Aug 2026 20:55:00 +0200</lastBuildDate>
    <atom:link href="https://bjornjohansen.com/tag/automation/feed.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Three AI models review every merge request. Then they argue.</title>
      <link>https://bjornjohansen.com/multi-model-code-review/</link>
      <pubDate>Thu, 27 Aug 2026 20:55:00 +0200</pubDate>
       <guid isPermaLink="false">https://bjornjohansen.com/multi-model-code-review/</guid> 
      <description>Every merge request I open gets read by three AI models that debate each other&amp;#39;s findings with code evidence. A deterministic rule, not a model, decides whether it merges.</description>
    </item>
    <item>
      <title>One command per issue: git worktree, tmux and Claude Code</title>
      <link>https://bjornjohansen.com/claude-work/</link>
      <pubDate>Sun, 09 Aug 2026 02:05:00 +0200</pubDate>
       <guid isPermaLink="false">https://bjornjohansen.com/claude-work/</guid> 
      <description>I kept running the same four commands to start work on an issue, so I wrote a script that does it. claude-work gives every issue its own git worktree, branch and tmux session running Claude Code.</description>
    </item>
    <item>
      <title>Automate the upgrade of your DigitalOcean droplets</title>
      <link>https://bjornjohansen.com/automate-the-upgrade-of-your-digitalocean-droplets/</link>
      <pubDate>Fri, 19 Jan 2018 01:27:59 +0000</pubDate>
       <guid isPermaLink="false">urn:uuid:39653564-3061-5663-b064-613763646366</guid> 
      <description>Recently DigitalOcean released &lt;a href=&#34;https://blog.digitalocean.com/new-droplet-plans/&#34;&gt;new pricing plans&lt;/a&gt; where they basically doubled the RAM for the same price of the old plans. But to get the benefits for your existing droplets, you have to upgrade all of your existing droplets in a process that involves shutting them down, selecting the new plan, waiting for the upgrade to happen and power on the droplets again. I have tens of droplets and had no intention of doing this manually, so I wrote a script to use the DigitalOcean API to automate a mass-upgrade of all droplets.</description>
    </item>
    <item>
      <title>The future of Certificate Authorities</title>
      <link>https://bjornjohansen.com/the-future-of-certificate-authorities/</link>
      <pubDate>Mon, 01 Aug 2016 16:38:47 +0000</pubDate>
       <guid isPermaLink="false">urn:uuid:61636461-3766-5538-b865-616338333630</guid> 
      <description>With the advent of the fully automated and free of cost certificate authorities Let’s Encrypt and StartCom there is no doubt that the future of CAs are changing.</description>
    </item>
    <item>
      <title>Let’s Encrypt for Nginx</title>
      <link>https://bjornjohansen.com/letsencrypt-nginx/</link>
      <pubDate>Thu, 31 Mar 2016 20:48:31 +0000</pubDate>
       <guid isPermaLink="false">urn:uuid:38623063-3465-5338-b964-656234343537</guid> 
      <description>Let’s install an SSL-certificate from Let’s Encrypt for Nginx.</description>
    </item>
  </channel>
</rss>
