<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title type="html">Matthew Lang</title>
  <subtitle>Family guy and web developer</subtitle>
  <link href="https://www.matthewlang.me/feed.xml" rel="self" type="application/atom+xml"/>
  <link href="https://www.matthewlang.me/" rel="alternate" type="text/html"/>
  <updated>2026-09-06T20:41:20+00:00</updated>
  <id>https://www.matthewlang.me/</id>
  
  <entry>
    <title></title>
    
    <link href="https://www.matthewlang.me/posts/2026/09/06/i-finished-migrating/" rel="alternate" type="text/html"/>
    <published>2026-09-06T20:40:32+00:00</published>
    <updated>2026-09-06T20:40:32+00:00</updated>
    <id>https://www.matthewlang.me/posts/2026/09/06/i-finished-migrating/</id>
    <content type="html" xml:base="https://www.matthewlang.me/posts/2026/09/06/i-finished-migrating/"><![CDATA[<p>I finished migrating one account over from Sourcehut to GitLab. Most of the work was for Dailymuse to ensure it kept the CI steps I had on Sourcehut and that the deployment process worked. I moved all the issues over as well, but there weren’t too many. I can get on with shipping some features now!</p>
<hr><p>Thank you for reading this post via RSS. ❤️</p>]]></content>
    <author>
      <name>Matthew Lang</name>
    </author>
    <category term="Dailymuse"/>
    <category term="Web Development"/>
    
    <summary type="html"><![CDATA[I finished migrating one account over from Sourcehut to GitLab. Most of the work was for Dailymuse to ensure it kept the CI steps I had on Sourcehut and that the deployment process worked. I moved all the issues over as well, but there weren’t too many. I can get on with shipping some features now!]]></summary>
  </entry>
  
  <entry>
    <title></title>
    
    <link href="https://www.matthewlang.me/posts/2026/09/05/no-plans-this/" rel="alternate" type="text/html"/>
    <published>2026-09-05T08:07:13+00:00</published>
    <updated>2026-09-05T08:07:13+00:00</updated>
    <id>https://www.matthewlang.me/posts/2026/09/05/no-plans-this/</id>
    <content type="html" xml:base="https://www.matthewlang.me/posts/2026/09/05/no-plans-this/"><![CDATA[<p>No plans this weekend, and I intend to keep it that way.</p>

<p>I’m taking each day as it comes. Enjoy the rare luxury of not needing to be anywhere or do anything in particular, and just pottering about the house and seeing what happens.</p>

<p>My idea of a great weekend.</p>
<hr><p>Thank you for reading this post via RSS. ❤️</p>]]></content>
    <author>
      <name>Matthew Lang</name>
    </author>
    <category term="Personal"/>
    
    <summary type="html"><![CDATA[No plans this weekend, and I intend to keep it that way.]]></summary>
  </entry>
  
  <entry>
    <title></title>
    
    <link href="https://www.matthewlang.me/posts/2026/09/04/jen-and-i/" rel="alternate" type="text/html"/>
    <published>2026-09-04T20:37:10+00:00</published>
    <updated>2026-09-04T20:37:10+00:00</updated>
    <id>https://www.matthewlang.me/posts/2026/09/04/jen-and-i/</id>
    <content type="html" xml:base="https://www.matthewlang.me/posts/2026/09/04/jen-and-i/"><![CDATA[<p>Jen and I finished watching season 3 of Silo on Apple TV tonight. I must admit, I don’t recall everything from the books, and I am now wondering how different the TV show is from the book. We still very much enjoyed it. And it did pick up pace towards the end. Slow Horses next!</p>
<hr><p>Thank you for reading this post via RSS. ❤️</p>]]></content>
    <author>
      <name>Matthew Lang</name>
    </author>
    <category term="Television"/>
    
    <summary type="html"><![CDATA[Jen and I finished watching season 3 of Silo on Apple TV tonight. I must admit, I don’t recall everything from the books, and I am now wondering how different the TV show is from the book. We still very much enjoyed it. And it did pick up pace towards the end. Slow Horses next!]]></summary>
  </entry>
  
  <entry>
    <title></title>
    
    <link href="https://www.matthewlang.me/posts/2026/09/03/i-spent-most/" rel="alternate" type="text/html"/>
    <published>2026-09-03T22:24:42+00:00</published>
    <updated>2026-09-03T22:24:42+00:00</updated>
    <id>https://www.matthewlang.me/posts/2026/09/03/i-spent-most/</id>
    <content type="html" xml:base="https://www.matthewlang.me/posts/2026/09/03/i-spent-most/"><![CDATA[<p>I spent most of the night converting a Rails application to the <a href="https://hanakai.org/">Hanakai</a> set of tools. The application itself is an authentication portal for other applications, so it doesn’t have much logic. It was a good learning exercise, though. After fixing a few deployment issues, it’s now up and running. Win!</p>

<hr><p>Thank you for reading this post via RSS. ❤️</p>]]></content>
    <author>
      <name>Matthew Lang</name>
    </author>
    <category term="Web Development"/>
    
    <summary type="html"><![CDATA[I spent most of the night converting a Rails application to the Hanakai set of tools. The application itself is an authentication portal for other applications, so it doesn’t have much logic. It was a good learning exercise, though. After fixing a few deployment issues, it’s now up and running. Win!]]></summary>
  </entry>
  
  <entry>
    <title></title>
    
    <link href="https://www.matthewlang.me/posts/2026/09/02/at-pinperfect-tonight/" rel="alternate" type="text/html"/>
    <published>2026-09-02T18:43:13+00:00</published>
    <updated>2026-09-02T18:43:13+00:00</updated>
    <id>https://www.matthewlang.me/posts/2026/09/02/at-pinperfect-tonight/</id>
    <content type="html" xml:base="https://www.matthewlang.me/posts/2026/09/02/at-pinperfect-tonight/"><![CDATA[<p>At PinPerfect tonight with Drew. He’s practising his golf, while I am rewriting the Sourcehut integration for my PostPress application so that it works with GitLab instead. If you’re reading this post, then it is working!</p>
<hr><p>Thank you for reading this post via RSS. ❤️</p>]]></content>
    <author>
      <name>Matthew Lang</name>
    </author>
    <category term="Tools"/>
    <category term="Golf"/>
    
    <summary type="html"><![CDATA[At PinPerfect tonight with Drew. He’s practising his golf, while I am rewriting the Sourcehut integration for my PostPress application so that it works with GitLab instead. If you’re reading this post, then it is working!]]></summary>
  </entry>
  
  <entry>
    <title type="html">Moving to GitLab</title>
    
    <link href="https://www.matthewlang.me/posts/2026/09/01/moving-to-gitlab/" rel="alternate" type="text/html" title="Moving to GitLab"/>
    <published>2026-09-01T19:38:00+00:00</published>
    <updated>2026-09-01T19:38:00+00:00</updated>
    <id>https://www.matthewlang.me/posts/2026/09/01/moving-to-gitlab/</id>
    <content type="html" xml:base="https://www.matthewlang.me/posts/2026/09/01/moving-to-gitlab/"><![CDATA[<p>Tonight I moved all my personal projects over to GitLab following Sourcehut’s <a href="https://sourcehut.org/blog/2026-08-27-tos-changes-and-llms/">changes to their terms of service regarding LLMs</a>. I’m still not entirely convinced that my projects are in breach of these terms, but I’m making the move anyway.</p>

<p>I have some changes to do to my Rails application that I use to publish posts and upload images to my blog, so I am having to write manual posts at the moment, but it shouldn’t take me long to get this application updated to work with GitLab.</p>

<p>I still have another account to move from Sourcehut to GitLab, but I can take my time with that one.</p>
<hr><p>Thank you for reading this post via RSS. ❤️</p>]]></content>
    <author>
      <name>Matthew Lang</name>
    </author>
    <category term="Web Development"/>
    <category term="Tools"/>
    
    <summary type="html"><![CDATA[Tonight I moved all my personal projects over to GitLab following Sourcehut’s changes to their terms of service regarding LLMs. I’m still not entirely convinced that my projects are in breach of these terms, but I’m making the move anyway.]]></summary>
  </entry>
  
  <entry>
    <title type="html">Time for a new forge</title>
    
    <link href="https://www.matthewlang.me/posts/2026/08/28/time-for-a-new-forge/" rel="alternate" type="text/html" title="Time for a new forge"/>
    <published>2026-08-28T13:52:25+00:00</published>
    <updated>2026-08-28T13:52:25+00:00</updated>
    <id>https://www.matthewlang.me/posts/2026/08/28/time-for-a-new-forge/</id>
    <content type="html" xml:base="https://www.matthewlang.me/posts/2026/08/28/time-for-a-new-forge/"><![CDATA[<p>I need to find a new forge now that <a href="https://sourcehut.org/blog/2026-08-27-tos-changes-and-llms/">Sourcehut is prohibiting the use of LLMs</a>. There’s an <a href="https://lobste.rs/s/iqgrsx/changes_sourcehut_s_terms_service">interesting discussion about this</a> on Lobsters.</p>

<p>I’m still trying to assess whether I am in breach of this with the two paid accounts I have at Sourcehut. The change to the terms is minimal, but I am not entirely convinced that I am breaking the terms and conditions of their service. With these two accounts, I have used LLM tools to generate code that, for the most part, I have amended before committing it.</p>

<p>I also have a repo for a web application I used to publish the content for this blog, which calls on an external LLM to generate alt text for images.</p>

<p>But better to be safe than sorry, so I think I will end up moving these accounts elsewhere. GitHub is out, so I am looking at GitLab again and perhaps Codefloe, which has the benefit of being hosted in Europe, but is only supported by donations. Self-hosting isn’t an option for me. I don’t have the time to maintain my own forge.</p>

<p>A shame that I am making this move, because I like the Sourcehut product. It’s minimalist and does everything I need it to.</p>
<hr><p>Thank you for reading this post via RSS. ❤️</p>]]></content>
    <author>
      <name>Matthew Lang</name>
    </author>
    <category term="Web Development"/>
    <category term="Tools"/>
    
    <summary type="html"><![CDATA[I need to find a new forge now that Sourcehut is prohibiting the use of LLMs. There’s an interesting discussion about this on Lobsters.]]></summary>
  </entry>
  
  <entry>
    <title></title>
    
    <link href="https://www.matthewlang.me/posts/2026/08/28/first-psl-of/" rel="alternate" type="text/html"/>
    <published>2026-08-28T12:40:01+00:00</published>
    <updated>2026-08-28T12:40:01+00:00</updated>
    <id>https://www.matthewlang.me/posts/2026/08/28/first-psl-of/</id>
    <content type="html" xml:base="https://www.matthewlang.me/posts/2026/08/28/first-psl-of/"><![CDATA[<p>First PSL of the autumn. Also learned of the phrase “pumpkin people” from a staff member at Starbucks. Love that!</p>

<p><img src="https://postpress.lon1.digitaloceanspaces.com/images/5d0dd5e4-388d-4a3c-88ee-2fb344810b7e-first-psl-2026-full.jpg" alt="A Starbucks takeout coffee cup on a mosaic patio table, with orange flowers and a brick wall in the background." /></p>
<hr><p>Thank you for reading this post via RSS. ❤️</p>]]></content>
    <author>
      <name>Matthew Lang</name>
    </author>
    <category term="Autumn"/>
    <category term="Coffee"/>
    
    <summary type="html"><![CDATA[First PSL of the autumn. Also learned of the phrase “pumpkin people” from a staff member at Starbucks. Love that!]]></summary>
  </entry>
  
  <entry>
    <title></title>
    
    <link href="https://www.matthewlang.me/posts/2026/07/10/18-holes-with/" rel="alternate" type="text/html"/>
    <published>2026-07-10T15:54:37+00:00</published>
    <updated>2026-07-10T15:54:37+00:00</updated>
    <id>https://www.matthewlang.me/posts/2026/07/10/18-holes-with/</id>
    <content type="html" xml:base="https://www.matthewlang.me/posts/2026/07/10/18-holes-with/"><![CDATA[<p>18 holes with Drew this morning at our home club, Elderslie Golf Club. We both played well which was a bonus!</p>

<p><img src="https://postpress.lon1.digitaloceanspaces.com/images/eb011a74-3470-4d8f-b2e8-d592f0445026-me-and-drew-holiday-golf-full.jpeg" alt="Two people smiling on a golf course, the adult wearing a 150th St Andrews Open Championship cap and the youth in an Adidas cap." /></p>
<hr><p>Thank you for reading this post via RSS. ❤️</p>]]></content>
    <author>
      <name>Matthew Lang</name>
    </author>
    <category term="Family"/>
    <category term="Golf"/>
    
    <summary type="html"><![CDATA[18 holes with Drew this morning at our home club, Elderslie Golf Club. We both played well which was a bonus!]]></summary>
  </entry>
  
  <entry>
    <title></title>
    
    <link href="https://www.matthewlang.me/posts/2026/06/17/a-little-mid-week/" rel="alternate" type="text/html"/>
    <published>2026-06-17T22:47:32+00:00</published>
    <updated>2026-06-17T22:47:32+00:00</updated>
    <id>https://www.matthewlang.me/posts/2026/06/17/a-little-mid-week/</id>
    <content type="html" xml:base="https://www.matthewlang.me/posts/2026/06/17/a-little-mid-week/"><![CDATA[<p>A little mid-week date night with Jen seeing Alyssa Bonagura at The Glad Cafe in Shawlands tonight. Jen’s love of country music is definitely growing on me.</p>

<p><img src="https://postpress.lon1.digitaloceanspaces.com/images/ac3449cb-bf87-4a63-9c76-f9d28fd37502-alyssa-bonagura-glad-cafe-full.jpg" alt="Two musicians performing on stage at an intimate venue bathed in blue light, with a guitarist and a singer wearing a hat, audience silhouettes in foreground." /></p>
<hr><p>Thank you for reading this post via RSS. ❤️</p>]]></content>
    <author>
      <name>Matthew Lang</name>
    </author>
    
    <summary type="html"><![CDATA[A little mid-week date night with Jen seeing Alyssa Bonagura at The Glad Cafe in Shawlands tonight. Jen’s love of country music is definitely growing on me.]]></summary>
  </entry>
  
  <entry>
    <title></title>
    
    <link href="https://www.matthewlang.me/posts/2026/06/16/for-the-first/" rel="alternate" type="text/html"/>
    <published>2026-06-16T21:08:06+00:00</published>
    <updated>2026-06-16T21:08:06+00:00</updated>
    <id>https://www.matthewlang.me/posts/2026/06/16/for-the-first/</id>
    <content type="html" xml:base="https://www.matthewlang.me/posts/2026/06/16/for-the-first/"><![CDATA[<p>For the first time in a long time, I am seriously giving some thought to changing my RSS reader from <a href="https://feedbin.com">Feedbin</a> to something else. I don’t know where I saw the original link posted, but <a href="https://gobbler.press">Gobbler</a> might tick all the boxes for what I need.</p>
<hr><p>Thank you for reading this post via RSS. ❤️</p>]]></content>
    <author>
      <name>Matthew Lang</name>
    </author>
    <category term="Tools"/>
    
    <summary type="html"><![CDATA[For the first time in a long time, I am seriously giving some thought to changing my RSS reader from Feedbin to something else. I don’t know where I saw the original link posted, but Gobbler might tick all the boxes for what I need.]]></summary>
  </entry>
  
  <entry>
    <title></title>
    
    <link href="https://www.matthewlang.me/posts/2026/06/13/grandpa-and-grandson/" rel="alternate" type="text/html"/>
    <published>2026-06-13T16:06:26+00:00</published>
    <updated>2026-06-13T16:06:26+00:00</updated>
    <id>https://www.matthewlang.me/posts/2026/06/13/grandpa-and-grandson/</id>
    <content type="html" xml:base="https://www.matthewlang.me/posts/2026/06/13/grandpa-and-grandson/"><![CDATA[<p><img src="https://postpress.lon1.digitaloceanspaces.com/images/0ef3ec79-e8ec-471f-b5f2-f1760ff04adc-pros-day-2026-medium.jpeg" alt="Two golfers walking on a green hilltop of a golf course under overcast skies, carrying their golf bags." /></p>

<p>Grandpa and grandson together on the course for Pros’ Day at the golf club today. The weather wasn’t great, but good banter and good golf kept us all going.</p>

<hr><p>Thank you for reading this post via RSS. ❤️</p>]]></content>
    <author>
      <name>Matthew Lang</name>
    </author>
    <category term="Family"/>
    <category term="Golf"/>
    
    <summary type="html"><![CDATA[]]></summary>
  </entry>
  
  <entry>
    <title></title>
    
    <link href="https://www.matthewlang.me/posts/2026/06/04/i-have-been/" rel="alternate" type="text/html"/>
    <published>2026-06-04T20:18:40+00:00</published>
    <updated>2026-06-04T20:18:40+00:00</updated>
    <id>https://www.matthewlang.me/posts/2026/06/04/i-have-been/</id>
    <content type="html" xml:base="https://www.matthewlang.me/posts/2026/06/04/i-have-been/"><![CDATA[<p>I have been using the <a href="https://zed.dev">Zed text editor</a> for such a long time now. The nightmares of using VS Code are now distant memories.</p>

<p>So what do I go and do? Install Vim again. This time, it’s the <a href="https://vim-classic.org">Vim Classic</a> version. A fork of Vim 8.x, maintained without the use of generative AI tools.</p>

<hr><p>Thank you for reading this post via RSS. ❤️</p>]]></content>
    <author>
      <name>Matthew Lang</name>
    </author>
    <category term="Tools"/>
    <category term="Web Development"/>
    
    <summary type="html"><![CDATA[I have been using the Zed text editor for such a long time now. The nightmares of using VS Code are now distant memories.]]></summary>
  </entry>
  
  <entry>
    <title type="html">The SaaS desktop app</title>
    
    <link href="https://www.matthewlang.me/posts/2026/06/02/the-saas-desktop-app/" rel="alternate" type="text/html" title="The SaaS desktop app"/>
    <published>2026-06-02T22:55:44+00:00</published>
    <updated>2026-06-02T22:55:44+00:00</updated>
    <id>https://www.matthewlang.me/posts/2026/06/02/the-saas-desktop-app/</id>
    <content type="html" xml:base="https://www.matthewlang.me/posts/2026/06/02/the-saas-desktop-app/"><![CDATA[<p>I’ve been looking at several PostgreSQL clients as I migrate my local development databases away from Docker containers and back to a native PostgreSQL installation.</p>

<p>As I evaluated several desktop apps to manage these databases, I was disappointed to find that many require a monthly subscription.</p>

<p>The subscription model makes sense for server-dependent software. The server is part of how the product works and is often a key component. The product might use the server to sync information between devices or to process information in the background. The subscription model covers the ongoing costs of running and maintaining the servers on which the product depends.</p>

<p>Why a subscription model for a desktop app though? In most cases, the desktop app runs on your own hardware. In the case of a PostgreSQL client, it can open databases that exist on my laptop or even on another remote server, but the product itself doesn’t need a server to do this.</p>

<p>The justification is revenue predictability. One-time purchases tend to spike at launch and taper off, making it hard to forecast earnings or plan for the future. A subscription smooths that out.</p>

<p>I get why developers go down this route. Predictable revenue is easier to build a business around than the feast-and-famine cycle of one-off sales. But predictability is a benefit to the developer, not a justification rooted in the product itself. A $20/month subscription for a desktop app will cost $240 a year, every year, for software whose core functionality was largely complete on day one.</p>

<p>There’s a better model from back in the day before subscriptions. A one-time purchase with an optional paid upgrade for major versions, the approach taken by apps like Postico and TablePlus, gives the developer ongoing revenue tied to actual new work and gives the consumer a cost that reflects what they’re actually getting. If the subscription model is justified by ongoing server costs or continuous development, fine. But if it’s just a pricing decision dressed up as a product decision, it’s not a product that I think I will give my money too.</p>
<hr><p>Thank you for reading this post via RSS. ❤️</p>]]></content>
    <author>
      <name>Matthew Lang</name>
    </author>
    <category term="Tools"/>
    
    <summary type="html"><![CDATA[I’ve been looking at several PostgreSQL clients as I migrate my local development databases away from Docker containers and back to a native PostgreSQL installation.]]></summary>
  </entry>
  
  <entry>
    <title></title>
    
    <link href="https://www.matthewlang.me/posts/2026/06/01/im-still-digesting/" rel="alternate" type="text/html"/>
    <published>2026-06-01T22:42:38+00:00</published>
    <updated>2026-06-01T22:42:38+00:00</updated>
    <id>https://www.matthewlang.me/posts/2026/06/01/im-still-digesting/</id>
    <content type="html" xml:base="https://www.matthewlang.me/posts/2026/06/01/im-still-digesting/"><![CDATA[<p>I’m still digesting the news that the Cleveland Browns’ defensive end Myles Garrett has been traded to the Rams — a massive boost to Los Angeles’ chances of making Super Bowl LXI.</p>
<hr><p>Thank you for reading this post via RSS. ❤️</p>]]></content>
    <author>
      <name>Matthew Lang</name>
    </author>
    <category term="NFL"/>
    
    <summary type="html"><![CDATA[I’m still digesting the news that the Cleveland Browns’ defensive end Myles Garrett has been traded to the Rams — a massive boost to Los Angeles’ chances of making Super Bowl LXI.]]></summary>
  </entry>
  
  <entry>
    <title type="html">Dedicated devices</title>
    
    <link href="https://www.matthewlang.me/posts/2026/05/30/dedicated-devices/" rel="alternate" type="text/html" title="Dedicated devices"/>
    <published>2026-05-30T16:33:40+00:00</published>
    <updated>2026-05-30T16:33:40+00:00</updated>
    <id>https://www.matthewlang.me/posts/2026/05/30/dedicated-devices/</id>
    <content type="html" xml:base="https://www.matthewlang.me/posts/2026/05/30/dedicated-devices/"><![CDATA[<p>Over the last year, a line has been forming between my laptop and my phone. And it became really clear last week when I tried out Obsidian Sync for a few days.</p>

<p>I thought it would be good to run Obsidian on my phone as well as my laptop, so I set up Obsidian Sync, got the remote vault working with my local vault, and set it up on my phone. I must admit, it was tricky to get my local vault up and running with it, but that wasn’t the reason why I cancelled it.</p>

<p>After a few days of use, I found I didn’t like using my phone to interact with Obsidian. I preferred a bigger screen, and so, I found myself reaching for my laptop more during this time. The sync feature wasn’t the problem. Trying out Obsidian Sync solved a different question. Which device do I want to use? The answer was obvious: the laptop, almost every time.</p>

<p>It was from this point that the divide between phone and laptop was clear.</p>

<p>My laptop is for head-down work. Coding, writing, researching. Anything that requires me to spend more than a few minutes on a single task. Anything like that and I use the laptop. There are two benefits to this.</p>

<p>The first is that the laptop is a dedicated workhorse. There are very few social media applications on it, so notifications are infrequent.</p>

<p>The second is that I no longer require as many app subscriptions. Many subscriptions are based on the premise that they can sync your information between devices. With just one device, that cost disappears. And given that just about everything is a subscription these days, that’s not a bad thing.</p>

<p>For everything else I do, and there’s not much left thankfully, there’s my phone.</p>

<p>I use it mostly for messaging family and friends as well as for golf club-related comms. I use it to arrange teams matches, organise competitions for the club’s junior section and organise other junior events.</p>

<p>I do use social media on my phone as well, but I keep my interaction light there. Reddit is still a good source for many things. I’m more of a lurker on Instagram. I prefer to share most of my photos on my blog rather than on Instagram. Then there’s BlueSky and Mastodon for news.</p>

<p>There’s one exception to the laptop rule. I have iA Writer installed on my phone and my laptop. Why? Just for when the need arises for putting some words down and I’m away from my laptop. For everything else, though, the divide between them is clear: each has its own dedicated use.</p>

<p>It’s taken me until I am almost 50 years old to get to this point and recognise that each device has its purpose. It’s taken a while to get here, but at least I have arrived. Better late than never.</p>
<hr><p>Thank you for reading this post via RSS. ❤️</p>]]></content>
    <author>
      <name>Matthew Lang</name>
    </author>
    <category term="Technology"/>
    <category term="Tools"/>
    
    <summary type="html"><![CDATA[Over the last year, a line has been forming between my laptop and my phone. And it became really clear last week when I tried out Obsidian Sync for a few days.]]></summary>
  </entry>
  
  <entry>
    <title></title>
    
    <link href="https://www.matthewlang.me/posts/2026/05/29/we-watched-the/" rel="alternate" type="text/html"/>
    <published>2026-05-29T21:12:37+00:00</published>
    <updated>2026-05-29T21:12:37+00:00</updated>
    <id>https://www.matthewlang.me/posts/2026/05/29/we-watched-the/</id>
    <content type="html" xml:base="https://www.matthewlang.me/posts/2026/05/29/we-watched-the/"><![CDATA[<p>We watched the first two episodes of The Boroughs tonight. I hadn’t paid much attention to this programme when it was being advertised, but after watching the trailer tonight, we decided to give it a go. We loved it!</p>
<hr><p>Thank you for reading this post via RSS. ❤️</p>]]></content>
    <author>
      <name>Matthew Lang</name>
    </author>
    <category term="Media"/>
    
    <summary type="html"><![CDATA[We watched the first two episodes of The Boroughs tonight. I hadn’t paid much attention to this programme when it was being advertised, but after watching the trailer tonight, we decided to give it a go. We loved it!]]></summary>
  </entry>
  
  <entry>
    <title type="html">Digital wandering</title>
    
    <link href="https://www.matthewlang.me/posts/2026/05/28/digital-wandering/" rel="alternate" type="text/html" title="Digital wandering"/>
    <published>2026-05-28T15:26:29+00:00</published>
    <updated>2026-05-28T15:26:29+00:00</updated>
    <id>https://www.matthewlang.me/posts/2026/05/28/digital-wandering/</id>
    <content type="html" xml:base="https://www.matthewlang.me/posts/2026/05/28/digital-wandering/"><![CDATA[<p>Every few months, I start to question the tools and processes I use to build a couple of side projects. It invariably stems from at least one of the following questions:</p>

<ul>
  <li>Is there a better way of doing this?</li>
  <li>Are there better tools than the ones I am currently using?</li>
  <li>Will I be better off with these new tools?</li>
</ul>

<p>What follows is a process that leads me right back to the very beginning. I view it as a curse, and it is in a never-ending loop.</p>

<p>Here’s how it works.</p>

<p>I am wondering if the processes that I am using are working for me. This usually happens between tasks when I think something isn’t quite right. I might have dropped the ball on something, or I haven’t checked in on some code I’ve been writing for a few days. Simply put, I have lost my place. It’s at this point that I start to wonder if there are better tools or apps I could be using.</p>

<p>A few days go by as a gremlin sits in the back of my brain, rewiring my thoughts in favour of how a shiny new tool would solve my woes. After a week, I start to look at different apps and products that will get the job done better. After a couple of weeks, I sign up for one or two apps I may or may not have used before and start trying them out alongside my existing processes. After another week, I conclude that these apps are not going to work for me and delete their accounts.</p>

<p>I then go back to my original tools and find the fault is actually me, not what I am using.</p>

<p>A few weeks later, and the whole process starts again.</p>

<p>So what gives? Why do I put myself through the cycle of doubt and time-wasting?</p>

<p>Reading back what I just wrote at the start of this post, it’s clear that even the slightest break in the routine of progress has me questioning what I use and how I use it. And to be honest, that break in routine is usually me procrastinating or external factors breaking my planned time on something.</p>

<p>I’m sure I’m not alone in this cycle, and it was probably more of a thing back in the day, when we had a new todo app or task manager released every month, and everyone wanted to use the latest and greatest app, but didn’t really know why.</p>

<p>Over the past five years, I can count on both hands the number of times I have tried Todoist and Basecamp in vain attempts to find that golden feature I have missed. I know full well it’s not there, but clicking about through the apps is probably the one highlight from this cycle.</p>

<p>It’s taken me many cycles to get to where I am with the tools I use for web development and writing, too. Many subscriptions to different products and apps, and what has this many years of digital wandering taught me?</p>

<p>It’s the analogue tools that keep sticking. The notebook, the pens, the index cards. Despite all the technological advancements, and with the age of artificial intelligence and LLMs marking a major change in the world, I still fall back on my trusty notebooks. I think for me, they’re more robust than digital tools; they have an offline mode and, finally, they’re a damn sight more interesting to look at than a screen.</p>

<p>Don’t get me wrong, I still use several tools and apps to support my web development, where a notebook can’t be used. I use issue-tracking software to manage a backlog of features and bugs. I use LLMs to act as pairing buddies when working on features. I have digital tools that have their place, and analogue tools that have theirs.</p>

<p>I think I’ve finally found the balance between the two, and I should accept that this works.</p>
<hr><p>Thank you for reading this post via RSS. ❤️</p>]]></content>
    <author>
      <name>Matthew Lang</name>
    </author>
    <category term="Tools"/>
    <category term="Analog"/>
    
    <summary type="html"><![CDATA[Every few months, I start to question the tools and processes I use to build a couple of side projects. It invariably stems from at least one of the following questions:]]></summary>
  </entry>
  
  <entry>
    <title></title>
    
    <link href="https://www.matthewlang.me/posts/2026/05/26/dinner-tonight-at/" rel="alternate" type="text/html"/>
    <published>2026-05-26T18:57:02+00:00</published>
    <updated>2026-05-26T18:57:02+00:00</updated>
    <id>https://www.matthewlang.me/posts/2026/05/26/dinner-tonight-at/</id>
    <content type="html" xml:base="https://www.matthewlang.me/posts/2026/05/26/dinner-tonight-at/"><![CDATA[<p>Dinner tonight at my folks house. First BBQ of the season and it didn’t disappoint!</p>

<p><img src="https://postpress.lon1.digitaloceanspaces.com/images/917a71f1-e106-49bb-91cc-4374c6205a99-bbq-season-full.jpg" alt="A plate with a burger, grilled corn on the cob, pasta salad, coleslaw, and fresh salad, with a Budweiser beer and cola glass." /></p>
<hr><p>Thank you for reading this post via RSS. ❤️</p>]]></content>
    <author>
      <name>Matthew Lang</name>
    </author>
    <category term="Family"/>
    
    <summary type="html"><![CDATA[Dinner tonight at my folks house. First BBQ of the season and it didn’t disappoint!]]></summary>
  </entry>
  
  <entry>
    <title type="html">A great day at Stirling today</title>
    
    <link href="https://www.matthewlang.me/posts/2026/05/24/a-great-day-at-stirling-today/" rel="alternate" type="text/html" title="A great day at Stirling today"/>
    <published>2026-05-24T20:53:47+00:00</published>
    <updated>2026-05-24T20:53:47+00:00</updated>
    <id>https://www.matthewlang.me/posts/2026/05/24/a-great-day-at-stirling-today/</id>
    <content type="html" xml:base="https://www.matthewlang.me/posts/2026/05/24/a-great-day-at-stirling-today/"><![CDATA[<p>Jennifer and I spent the day watching Drew play at Stirling Golf Club today in a Stephen Gallagher Foundation event. Stirling is a fantastic golf course with great views of the castle from just about every hole on the course.</p>

<p><img src="https://postpress.lon1.digitaloceanspaces.com/images/174cf898-a124-4a48-a19b-54ccdb2904ee-drew-at-stirling-full.jpeg" alt="A golfer mid-swing on a lush green course with Stirling Castle perched on a hilltop in the background under cloudy skies." /></p>

<p>Despite a rocky start on the first three holes, Drew found his groove on the back nine and finished second in the net scores. These events are a great opportunity for him to learn more about his golf game and play many courses across the west of Scotland and the central belt. Back at it tomorrow for another SGF event at Whitecraigs Golf Course, which is thankfully, just down the road.</p>
<hr><p>Thank you for reading this post via RSS. ❤️</p>]]></content>
    <author>
      <name>Matthew Lang</name>
    </author>
    <category term="Golf"/>
    <category term="Family"/>
    
    <summary type="html"><![CDATA[Jennifer and I spent the day watching Drew play at Stirling Golf Club today in a Stephen Gallagher Foundation event. Stirling is a fantastic golf course with great views of the castle from just about every hole on the course.]]></summary>
  </entry>
  
</feed>
