{"@attributes":{"version":"2.0"},"channel":{"title":"Joel Ahlgren","link":"https:\/\/www.ahlgren.io\/","description":"Recent content on Joel Ahlgren","generator":"Hugo","language":"en-us","copyright":"This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.","lastBuildDate":"Tue, 07 Apr 2026 00:00:00 +0000","item":[{"title":"Leaving Windows, After 30 Years","link":"https:\/\/www.ahlgren.io\/posts\/2026\/04\/leaving-windows-after-30-years\/","pubDate":"Tue, 07 Apr 2026 00:00:00 +0000","guid":"https:\/\/www.ahlgren.io\/posts\/2026\/04\/leaving-windows-after-30-years\/","description":"<p>For as long as I can recall, video games and computers have fascinated me. When I was about 8 years old my family purchased our first computer, a Pentium (1) running at 133 MHz with 8MB of RAM - and Windows 95.<\/p>\n<p>For much of my childhood, there was no concept of another operating system - Windows 95 was replaced with Windows 98, a friend at a LAN party got me to install Windows 2000 on my own computer. A neighbour&rsquo;s dad tinkered around with Linux variants like Red Hat, but that only ever seemed like some abstract adventure and never a practical option - especially to a teenager who loved playing games on their computer.<\/p>"},{"title":"About me","link":"https:\/\/www.ahlgren.io\/about\/","pubDate":"Mon, 29 Apr 2024 00:00:00 +0000","guid":"https:\/\/www.ahlgren.io\/about\/","description":"<p>My name is Joel.<\/p>\n<p>I&rsquo;m a Software Developer with a kink for build systems, working mostly in C# writing Windows desktop programs and trivial web services. I&rsquo;m mildly engaged in some OSS projects on GitHub, as time permits.<\/p>\n<p>I, very infrequently, write about things like programming, development processes, and random things that catch my mind.<\/p>"},{"title":"The Importance of Frequent Releases","link":"https:\/\/www.ahlgren.io\/posts\/2024\/04\/the-importance-of-frequent-releases\/","pubDate":"Mon, 29 Apr 2024 00:00:00 +0000","guid":"https:\/\/www.ahlgren.io\/posts\/2024\/04\/the-importance-of-frequent-releases\/","description":"<p>When I started working at my current company, nearly 14 years ago now, we had a very waterfall aligned way of working. Back then I was working as a QA engineer, but my work was closely tied to the software release schedule of the software team.<\/p>\n<p>As we produce MedTech devices, they have various requirements on documentation and validation before a release is approved, this affects hardware more severely than software - but we handled development of both essentially as one.<\/p>"},{"title":"The Germans and Sailor Moon","link":"https:\/\/www.ahlgren.io\/posts\/2024\/04\/the-germans-and-sailor-moon\/","pubDate":"Sun, 28 Apr 2024 00:00:00 +0000","guid":"https:\/\/www.ahlgren.io\/posts\/2024\/04\/the-germans-and-sailor-moon\/","description":"<p>I&rsquo;m getting a little side tracked here, but I really need to write this out. What&rsquo;s up with Germans and foreign multimedia?<\/p>\n<p>I don&rsquo;t know why I know this, but at some point I became aware and this knowledge haunts me. There are several approaches to localization when it comes to foreign media: original audio and subtitles, dubbing the dialogue in your language, keeping text and signage in the original language or drawing localized text on top of the orginal video, etc.<\/p>"},{"title":"Abandoning An Open Source Project","link":"https:\/\/www.ahlgren.io\/posts\/2024\/04\/abandoning-an-open-source-project\/","pubDate":"Wed, 10 Apr 2024 00:00:00 +0000","guid":"https:\/\/www.ahlgren.io\/posts\/2024\/04\/abandoning-an-open-source-project\/","description":"<h3 id=\"background\">Background<\/h3>\n<p>Back in May of 2018 I made a <a href=\"https:\/\/github.com\/squid-box\/SevenZipSharp\">fork<\/a> of a <a href=\"https:\/\/github.com\/tomap\/SevenZipSharp\">fork<\/a> of SevenZipSharp (originally found at <a href=\"https:\/\/sevenzipsharp.codeplex.com\/\">https:\/\/sevenzipsharp.codeplex.com\/<\/a> ) - a library which exposed 7zip within C#\/.NET. I did so because another project I was contributing to was using this library to handle archived files, and needed to add support for RAR5 archives - but the maintainer of the fork we used (essentially the most popular fork at the time) had little interest in maintaining his fork.<\/p>"},{"title":"Running Windows Processes Across Sessions","link":"https:\/\/www.ahlgren.io\/posts\/2023\/02\/running-windows-processes-across-sessions\/","pubDate":"Wed, 22 Feb 2023 00:00:00 +0000","guid":"https:\/\/www.ahlgren.io\/posts\/2023\/02\/running-windows-processes-across-sessions\/","description":"<p>At work I encountered a situation where I had to start a Windows process in the active user session, from a system service running under the Local System account. Since it was hard to find a collected explanation on how to do this, I&rsquo;ve decided to document it here.<\/p>\n<h2 id=\"the-problem\">The Problem<\/h2>\n<p>The product I am mainly working on is a Windows Desktop application, which consists of two components, installed as separate products: the application itself, and a system service used to provide updates to the application. The system service runs in the background, polling a server for new updates. When the user starts the application, if there is an available update, the system service will update the application and then launch the new version.<\/p>"},{"title":"Hello World","link":"https:\/\/www.ahlgren.io\/posts\/2022\/10\/hello-world\/","pubDate":"Thu, 13 Oct 2022 00:00:00 +0000","guid":"https:\/\/www.ahlgren.io\/posts\/2022\/10\/hello-world\/","description":"<p>I&rsquo;ll try to post about interesting things I come across either during work, or when working on hobby projects.<\/p>\n<p>This first post will be a short outline of how I set up the website. The site is generated with <a href=\"https:\/\/gohugo.io\">Hugo<\/a> using the <a href=\"https:\/\/github.com\/rhazdon\/hugo-theme-hello-friend-ng\">Hello Friend NG<\/a> theme, hosted compiled on my own <a href=\"https:\/\/gitlab.ahlgren.io\">GitLab instance<\/a> and uploaded automatically to my own nginx webserver.<\/p>\n<p>Using GitLab&rsquo;s CI\/CD system, the site is built and deployed on each commit pushed to the main branch. I&rsquo;m impressed that it takes about 10 seconds from pushing a commit until the site is updated.<\/p>"}]}}