<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Geoffrey&#39;s Blog on Geoffrey&#39;s Blogs</title>
    <link>https://geoffrey.run/</link>
    <description>Recent content in Geoffrey&#39;s Blog on Geoffrey&#39;s Blogs</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-gb</language><atom:link href="https://geoffrey.run/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Is Chromium Omaha Updater Bringing Your Site or Service Down</title>
      <link>https://geoffrey.run/computing/omaha-when-chromium-updates-bring-your-site-down/</link>
      <pubDate>Fri, 19 Sep 2025 12:27:24 +0000</pubDate>
      
      <guid>https://geoffrey.run/computing/omaha-when-chromium-updates-bring-your-site-down/</guid>
      <description>For the last two weeks or so, every day at 9:00 a.m. one of the major UK National Health Service &amp;lsquo;NHS&amp;rsquo; websites, I work on, has been getting hit by something strange and was on the brink each time. The regularity of 9:00 a.m. was suspicious.</description>
    </item>
    
    <item>
      <title>Configure Terraform Cloud to Assume an AWS IAM Role via OIDC</title>
      <link>https://geoffrey.run/computing/configure-terraform-cloud-to-assume-an-aws-iam-role-via-oidc/</link>
      <pubDate>Wed, 11 Jun 2025 18:32:32 +0000</pubDate>
      
      <guid>https://geoffrey.run/computing/configure-terraform-cloud-to-assume-an-aws-iam-role-via-oidc/</guid>
      <description>Here is how to configure Terraform Cloud to assume an AWS IAM role via OIDC (OpenID Connect) using only environment variables—no static AWS keys are required.</description>
    </item>
    
    <item>
      <title>Responsible AI Coding: What I’ve Learned So Far</title>
      <link>https://geoffrey.run/computing/responsible-ai-coding-what-ive-learned-so-far/</link>
      <pubDate>Fri, 09 May 2025 10:25:31 +0000</pubDate>
      
      <guid>https://geoffrey.run/computing/responsible-ai-coding-what-ive-learned-so-far/</guid>
      <description>A whole new way of coding. When JetBrains offered me a trial of Junie, an AI assistant built into IntelliJ, I had to give it a go. I soon saw the potential, it&amp;rsquo;s kind of like an AI coding partner (albeit a little dumb at times), but that&amp;rsquo;s okay, if used responsibly. So here’s what I’ve learned about coding responsibly with AI—so far.</description>
    </item>
    
    <item>
      <title>Progress, Nutrition, and Next Marathon Ambitions</title>
      <link>https://geoffrey.run/running/2024-progress-nutrition-and-next-marathon-ambitions/</link>
      <pubDate>Mon, 28 Oct 2024 18:58:42 +0000</pubDate>
      
      <guid>https://geoffrey.run/running/2024-progress-nutrition-and-next-marathon-ambitions/</guid>
      <description>A year has flown by—filled with ups, downs, all in the pursuit of one goal: getting faster. Life, especially with family responsibilities, has been busy. But with a 5K and 10K PB, things are progressing. So let&amp;rsquo;s recap the year, look at what helped me run these PBs, and announce the start of training for the 2025 Ghent Marathon.</description>
    </item>
    
    <item>
      <title>Notes on Successfully Running Ubuntu in VirtualBox</title>
      <link>https://geoffrey.run/computing/running-ubuntu-in-virtualbox/</link>
      <pubDate>Fri, 26 Jan 2024 12:44:04 +0000</pubDate>
      
      <guid>https://geoffrey.run/computing/running-ubuntu-in-virtualbox/</guid>
      <description>As a Software Developer who likes to use Ubuntu for Development but can sometimes only run it as just another window in Windows, I would like to share some nuanced VirtualBox configurations I built up over the years.</description>
    </item>
    
    <item>
      <title>Pushing the Pace: 12 Seconds to Go</title>
      <link>https://geoffrey.run/running/2023-pushing-the-pace-12-seconds-to-go/</link>
      <pubDate>Thu, 21 Dec 2023 09:31:31 +0000</pubDate>
      
      <guid>https://geoffrey.run/running/2023-pushing-the-pace-12-seconds-to-go/</guid>
      <description>Hi there! It&amp;rsquo;s Geoffrey again. Last week, I continued chipping away at setting a new 5K personal best. As you might know from reading my blog, I have been following a relatively regimented weekly workout routine, which includes sessions like 8-Second Hill Sprints and 1K Repeats while also trying to balance recovery. Five weeks into the journey, and according to Strava, on Saturday at the Velopark Torbay Parkrun, where I met up with the Jog On Crew, I ran within 12 seconds of hitting my 5k PB. Today, I&amp;rsquo;ll look back at week 5 of my training and discuss an unexpected twist in my VO2 Max results, which gave me food for thought.</description>
    </item>
    
    <item>
      <title>Embracing the Wind: A Week of Racing, Resting and Learning</title>
      <link>https://geoffrey.run/running/2023-embracing-the-wind-a-week-of-racing-resting-and-learning/</link>
      <pubDate>Wed, 13 Dec 2023 18:19:43 +0000</pubDate>
      
      <guid>https://geoffrey.run/running/2023-embracing-the-wind-a-week-of-racing-resting-and-learning/</guid>
      <description>As I stepped into last week&amp;rsquo;s training, I focused on the City Runs Exmouth 5-Mile race on Wednesday, 6th December, a challenge I eagerly anticipated. Reflecting on the importance of listening to my body, as emphasised in my previous training, I approached this week with a relaxed view. I stepped away from the routine I had been following over the previous weeks to prepare for Wednesday fully. So here is how week four went in my journey towards a new 5K personal best and a seemingly valuable lesson learnt.</description>
    </item>
    
    <item>
      <title>My Third Week on the Road to a 5K Personal Best</title>
      <link>https://geoffrey.run/running/2023-my-third-week-on-the-road-to-a-5k-personal-best/</link>
      <pubDate>Mon, 04 Dec 2023 09:00:26 +0000</pubDate>
      
      <guid>https://geoffrey.run/running/2023-my-third-week-on-the-road-to-a-5k-personal-best/</guid>
      <description>In the third week of my journey towards achieving a new 5K personal best, I found myself in a challenging dance between rest and vigorous training. The intensity of this balancing act came to a head by Thursday, serving as a stark reminder of the crucial role that listening to my body plays in training. The week&amp;rsquo;s standout moment was the Cranbrook Christmas Cracker – a festive Santa run that, while slower than anticipated, was still a moment of joy. Reflecting on this week’s experiences, I am keen to delve into what worked, what didn&amp;rsquo;t, and how I can apply these lessons to not only the coming week but also to my broader training strategy in pursuit of my goal.</description>
    </item>
    
    <item>
      <title>A Runner&#39;s Second Week Towards a 5K Personal Best</title>
      <link>https://geoffrey.run/running/2023-a-runners-second-week-towards-a-5k-personal-best/</link>
      <pubDate>Mon, 27 Nov 2023 08:00:22 +0000</pubDate>
      
      <guid>https://geoffrey.run/running/2023-a-runners-second-week-towards-a-5k-personal-best/</guid>
      <description>In last week&amp;rsquo;s post, I revealed my strategy for chasing my next 5K personal best. In this week&amp;rsquo;s post, I will recap the strategy, and talk about how I have applied it, and reflect on the adjustments I will make for next week. From rigorous intervals to strategic recovery, this week&amp;rsquo;s effort culminated in a 5K course PB at the Cranbrook Parkrun, bringing me one week closer to the 5K personal best I am chasing.</description>
    </item>
    
    <item>
      <title>VO2 Max and Reclaiming the Pace</title>
      <link>https://geoffrey.run/running/2023-vo2-max-and-reclaiming-the-pace/</link>
      <pubDate>Thu, 23 Nov 2023 08:10:19 +0000</pubDate>
      
      <guid>https://geoffrey.run/running/2023-vo2-max-and-reclaiming-the-pace/</guid>
      <description>In pursuing our passions we often find ourselves veering off track occasionally. This year&amp;rsquo;s spring and summer months were a whirlwind of family commitments and garden landscaping that took me away from the roads and trails. In this post I would like to reflect on this period discuss how VO2 Max testing served as a wake-up call and share with you the new goal I am chasing down.</description>
    </item>
    
    <item>
      <title>Setting Default Values in GitHub Actions Workflows</title>
      <link>https://geoffrey.run/computing/setting-default-values-in-github-actions-workflows/</link>
      <pubDate>Fri, 20 Oct 2023 08:12:15 +0000</pubDate>
      
      <guid>https://geoffrey.run/computing/setting-default-values-in-github-actions-workflows/</guid>
      <description>GitHub Actions is a powerful platform for automating workflows and tasks in your software development process. When creating workflows, you often need to set default values for variables or parameters, especially when certain values are not always going to be provided. In this blog post, let&amp;rsquo;s explore two techniques to set default values in GitHub Actions workflows, including a handy &lt;code&gt;! contains()&lt;/code&gt; approach and the double pipe &lt;code&gt;||&lt;/code&gt; hack. We&amp;rsquo;ll also discuss the potential limitations of the double pipe hack.</description>
    </item>
    
    <item>
      <title>The First 10 Days of Building Strength for a Worthy Cause</title>
      <link>https://geoffrey.run/running/2023-the-first-10-days-of-building-strength-for-a-worthy-cause/</link>
      <pubDate>Sun, 11 Jun 2023 07:23:31 +0000</pubDate>
      
      <guid>https://geoffrey.run/running/2023-the-first-10-days-of-building-strength-for-a-worthy-cause/</guid>
      <description>In life, we often find ourselves drawn to causes close to our hearts, seeking meaningful ways to make a difference. As an advocate for Alzheimer&amp;rsquo;s Research UK, I am wholeheartedly embracing their 30-Day Plank Challenge, and I am pushing myself to new limits while helping raise vital funds for a cause that resonates deeply with me. Join me as I recount the first ten days, where planks have become more than just exercises.</description>
    </item>
    
    <item>
      <title>Conquering the Exeter Great West Run</title>
      <link>https://geoffrey.run/running/2023-conquering-the-exeter-great-west-run/</link>
      <pubDate>Fri, 26 May 2023 10:51:54 +0000</pubDate>
      
      <guid>https://geoffrey.run/running/2023-conquering-the-exeter-great-west-run/</guid>
      <description>The Exeter Great West Run is a hilly, challenging half-marathon through my nearest city (Exeter). Being a local closed-road event, it’s kind of essential to participate. Well, it would be rude not to, right? Also, it seemed like anyone in our running club (Cranbrook Running Club) not running was still out cheering. So as you can imagine the atmosphere was fantastic and I enjoyed the event very much.</description>
    </item>
    
    <item>
      <title>Week 12: Running Manchester Marathon</title>
      <link>https://geoffrey.run/running/2023-running-manchester-marathon/</link>
      <pubDate>Thu, 20 Apr 2023 09:15:53 +0000</pubDate>
      
      <guid>https://geoffrey.run/running/2023-running-manchester-marathon/</guid>
      <description>It’s taken a few days to decompress from the Manchester Marathon, hence a late post. Before embarking on this training block, the idea of running a full marathon seemed like a doable but daunting distant dream. But I have done it, and I am proud of the achievement.</description>
    </item>
    
    <item>
      <title>Week 11: Training for the Manchester Marathon</title>
      <link>https://geoffrey.run/running/2023-week-11-training-for-the-manchester-marathon/</link>
      <pubDate>Tue, 11 Apr 2023 18:20:39 +0000</pubDate>
      
      <guid>https://geoffrey.run/running/2023-week-11-training-for-the-manchester-marathon/</guid>
      <description>Happy easter, everyone. I trust you had a good one. I am a little behind posting this week, and I am very excited now with less than a week to go until Manchester Marathon.</description>
    </item>
    
    <item>
      <title>Week 10: Training for the Manchester Marathon</title>
      <link>https://geoffrey.run/running/2023-week-10-training-for-the-manchester-marathon/</link>
      <pubDate>Tue, 04 Apr 2023 09:00:32 +0000</pubDate>
      
      <guid>https://geoffrey.run/running/2023-week-10-training-for-the-manchester-marathon/</guid>
      <description>That’s week 10 of my 12-week training program for the Manchester Marathon done. And I am feeling the pressure mounting. However, despite facing some challenges, I remain determined to cross the finish line.</description>
    </item>
    
    <item>
      <title>Week 9: Training for the Manchester Marathon</title>
      <link>https://geoffrey.run/running/2023-week-9-training-for-the-manchester-marathon/</link>
      <pubDate>Mon, 27 Mar 2023 19:56:42 +0000</pubDate>
      
      <guid>https://geoffrey.run/running/2023-week-9-training-for-the-manchester-marathon/</guid>
      <description>Welcome back to the latest update on my training for the Manchester Marathon! This week, we&amp;rsquo;re looking at my week nine of training and how it went.</description>
    </item>
    
    <item>
      <title>Week 8: Training for the Manchester Marathon</title>
      <link>https://geoffrey.run/running/2023-week-8-training-for-the-manchester-marathon/</link>
      <pubDate>Mon, 20 Mar 2023 11:29:28 +0000</pubDate>
      
      <guid>https://geoffrey.run/running/2023-week-8-training-for-the-manchester-marathon/</guid>
      <description>Last week was challenging for my Manchester Marathon training journey, with a mix of highs, lows, hip pain and a cold.</description>
    </item>
    
    <item>
      <title>Week 7: Training for the Manchester Marathon</title>
      <link>https://geoffrey.run/running/2023-week-7-training-for-the-manchester-marathon/</link>
      <pubDate>Tue, 14 Mar 2023 10:52:46 +0000</pubDate>
      
      <guid>https://geoffrey.run/running/2023-week-7-training-for-the-manchester-marathon/</guid>
      <description>Last week was a busy one for me regarding fitness and training. From cardio and tennis sessions to a 20-mile race.</description>
    </item>
    
    <item>
      <title>Week 6: Training for the Manchester Marathon</title>
      <link>https://geoffrey.run/running/2023-week-6-training-for-the-manchester-marathon/</link>
      <pubDate>Mon, 06 Mar 2023 10:26:25 +0000</pubDate>
      
      <guid>https://geoffrey.run/running/2023-week-6-training-for-the-manchester-marathon/</guid>
      <description>Training for a marathon is proving itself to be no easy feat. Week six began well for me, but I was struggling by the end of the week to keep my energy levels up.</description>
    </item>
    
    <item>
      <title>Week 5: Training for the Manchester Marathon</title>
      <link>https://geoffrey.run/running/2023-week-5-training-for-the-manchester-marathon/</link>
      <pubDate>Sun, 26 Feb 2023 21:02:23 +0000</pubDate>
      
      <guid>https://geoffrey.run/running/2023-week-5-training-for-the-manchester-marathon/</guid>
      <description>Following on from last week&amp;rsquo;s blog, where I reported pain in my right knee during last Sunday’s long run, 16 km in, I have tried to think about what might have gone wrong and how to prevent it from worsening.</description>
    </item>
    
    <item>
      <title>Week 4: Training for the Manchester Marathon</title>
      <link>https://geoffrey.run/running/2023-week-4-training-for-the-manchester-marathon/</link>
      <pubDate>Thu, 16 Feb 2023 18:17:36 +0000</pubDate>
      
      <guid>https://geoffrey.run/running/2023-week-4-training-for-the-manchester-marathon/</guid>
      <description>So far, balancing training for my first marathon with family responsibilities has been challenging, and week four has been no exception. With the added challenge of the kids being off school for half term, finding time to train has been even more of a challenge than usual.</description>
    </item>
    
    <item>
      <title>Week 3: Training for the Manchester Marathon</title>
      <link>https://geoffrey.run/running/2023-week-3-training-for-the-manchester-marathon/</link>
      <pubDate>Wed, 15 Feb 2023 09:53:23 +0000</pubDate>
      
      <guid>https://geoffrey.run/running/2023-week-3-training-for-the-manchester-marathon/</guid>
      <description>In the build-up to the 2023 Exeter City Community Half Marathon, I took it a little easier this week. It was a week of varied workouts, including my regular cardio sessions.</description>
    </item>
    
    <item>
      <title>Week 2: Training for the Manchester Marathon</title>
      <link>https://geoffrey.run/running/2023-week-2-training-for-the-manchester-marathon/</link>
      <pubDate>Sun, 05 Feb 2023 21:11:45 +0000</pubDate>
      
      <guid>https://geoffrey.run/running/2023-week-2-training-for-the-manchester-marathon/</guid>
      <description>I started the week by turning 40 years old. This has at least one advantage, my race age category moves from M35 to M40.</description>
    </item>
    
    <item>
      <title>Week 1: Training for the Manchester Marathon</title>
      <link>https://geoffrey.run/running/2023-week-1-training-for-manchester-marathon/</link>
      <pubDate>Sun, 29 Jan 2023 21:14:44 +0000</pubDate>
      
      <guid>https://geoffrey.run/running/2023-week-1-training-for-manchester-marathon/</guid>
      <description>I have begun training for the 2023 Manchester marathon this week, which will also be my first marathon ever. And the first week of training went well.</description>
    </item>
    
    <item>
      <title>Triggering a GitHub Actions Workflow with a Slack Slash Command</title>
      <link>https://geoffrey.run/computing/triggering-a-github-actions-workflow-with-a-slack-slash-command/</link>
      <pubDate>Mon, 10 May 2021 10:40:22 +0000</pubDate>
      
      <guid>https://geoffrey.run/computing/triggering-a-github-actions-workflow-with-a-slack-slash-command/</guid>
      <description>In this post I am going to show how you can trigger a &lt;a href=&#34;https://github.com/features/actions&#34;&gt;GitHub Actions&lt;/a&gt; workflow with a Slack Slash command.</description>
    </item>
    
    <item>
      <title>Serving Static Assets from Bloomreach CMS</title>
      <link>https://geoffrey.run/computing/serving-static-assets-from-bloomreach-cms/</link>
      <pubDate>Wed, 19 Jun 2019 17:08:25 +0000</pubDate>
      
      <guid>https://geoffrey.run/computing/serving-static-assets-from-bloomreach-cms/</guid>
      <description>Serving a static files with Bloomreach (formally known as Hippo CMS), such as BingVerify.xml, is not as simple as dropping it in the webapp folder. However, with a little extra configuration Bloomreach CMS will serve the file.</description>
    </item>
    
    <item>
      <title>Java JUnit: Reset a singleton</title>
      <link>https://geoffrey.run/computing/java-junit-reset-a-singleton/</link>
      <pubDate>Wed, 28 Feb 2018 10:26:41 +0000</pubDate>
      
      <guid>https://geoffrey.run/computing/java-junit-reset-a-singleton/</guid>
      <description>Java singleton&amp;rsquo;s are hard to unit test because the state of the singleton is altered as each test runs. But for testing sake you can reset the singleton&amp;rsquo;s state use reflection. Here is an example that worked for me.</description>
    </item>
    
    <item>
      <title>Java Stream API: ArrayList to JsonArray</title>
      <link>https://geoffrey.run/computing/java-stream-api-arraylist-to-jsonarray/</link>
      <pubDate>Fri, 03 Feb 2017 16:04:25 +0000</pubDate>
      
      <guid>https://geoffrey.run/computing/java-stream-api-arraylist-to-jsonarray/</guid>
      <description>You can convert an ArrayList to a Java EE JsonArray using a Java Stream in the following way.</description>
    </item>
    
    <item>
      <title>WildFly: Removing a Failed Deployment with JBoss CLI</title>
      <link>https://geoffrey.run/computing/wildfly-removing-a-failed-deployment-with-jboss-cli/</link>
      <pubDate>Mon, 05 Sep 2016 09:37:21 +0000</pubDate>
      
      <guid>https://geoffrey.run/computing/wildfly-removing-a-failed-deployment-with-jboss-cli/</guid>
      <description>I was having trouble working out how to remove the WAR file of a failed deployment from WildFly using the JBoss CLI. I found that I could not simply type &lt;code&gt;undeploy &amp;lt;WAR name&amp;gt;&lt;/code&gt; to remove a failed deployment from WildFly using the JBoss CLI. However, I did find that the following command let me remove a failed deployment and it&amp;rsquo;s WAR file.</description>
    </item>
    
    <item>
      <title>Find the Context Path with JSF</title>
      <link>https://geoffrey.run/computing/find-the-context-path-with-jsf/</link>
      <pubDate>Tue, 22 Sep 2015 08:37:09 +0000</pubDate>
      
      <guid>https://geoffrey.run/computing/find-the-context-path-with-jsf/</guid>
      <description>Sometimes JSF does not have a component that will produce a particular type of HTML element. That&amp;rsquo;s not a problem but, I always forget the three method deep route to the context path. I always find I have to work through an IDE&amp;rsquo;s code completion tool to find the application&amp;rsquo;s path.</description>
    </item>
    
    <item>
      <title>How to Store Variables in JSF Facelets</title>
      <link>https://geoffrey.run/computing/how-to-store-variables-in-jsf-facelets/</link>
      <pubDate>Mon, 07 Sep 2015 11:31:35 +0000</pubDate>
      
      <guid>https://geoffrey.run/computing/how-to-store-variables-in-jsf-facelets/</guid>
      <description>JSF Facelets can store the returned value yielded from a call to an EJB. Doing so will mean the EJB does less work.</description>
    </item>
    
    <item>
      <title>About Geoffrey Hayward</title>
      <link>https://geoffrey.run/about/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://geoffrey.run/about/</guid>
      <description>Running has always been a part of my life, but my journey as a runner didn&amp;rsquo;t truly begin until I stepped onto a gym treadmill at age 34.</description>
    </item>
    
    <item>
      <title>Contact Me</title>
      <link>https://geoffrey.run/contact/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://geoffrey.run/contact/</guid>
      <description>Whether you&amp;rsquo;re interested in collaboration, or simply wish to share your thoughts, Let&amp;rsquo;s talk.</description>
    </item>
    
    <item>
      <title>Thank You for your Message</title>
      <link>https://geoffrey.run/thank-you/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://geoffrey.run/thank-you/</guid>
      <description>I will be in touch soon. Unless you&amp;rsquo;re a spammer, in which case, I won&amp;rsquo;t.</description>
    </item>
    
  </channel>
</rss>
