<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
    <channel>
        <title>Liam Hanrahan</title>
        <link>https://outercloud.dev</link>
        <description>Welcome to my feed from the internet \(^o^)/</description>
        <lastBuildDate>Sat, 05 Sep 2026 05:01:48 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <language>en</language>
        <image>
            <title>Liam Hanrahan</title>
            <url>https://www.outercloud.dev/favicon.png</url>
            <link>https://outercloud.dev</link>
        </image>
        <item>
            <title><![CDATA[Reverse Engineering an ASIC]]></title>
            <link>https://outercloud.dev/blogs/reverse-asic/</link>
            <guid isPermaLink="false">https://outercloud.dev/blogs/reverse-asic/</guid>
            <pubDate>Fri, 04 Sep 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[Jane Street announced a puzzle that tasked you to reverse an ASIC from it's GDS file. With the power of JavaScript we solved the puzzle just in time for my birthday! Here's how we did it.]]></description>
        </item>
        <item>
            <title><![CDATA[Believe Your Dreams are Right Around the Corner]]></title>
            <link>https://outercloud.dev/blogs/dreams/</link>
            <guid isPermaLink="false">https://outercloud.dev/blogs/dreams/</guid>
            <pubDate>Thu, 27 Aug 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[Believe that all of the things you want to do are possible. All of your goals and dreams are right around the corner. Right now, I can not help but smile. Dreams that seem so outlandish are suddenly in front of me, within a short run's distance.]]></description>
        </item>
        <item>
            <title><![CDATA[Achieving Out Of Order in My CPU]]></title>
            <link>https://outercloud.dev/blogs/riscv-3/</link>
            <guid isPermaLink="false">https://outercloud.dev/blogs/riscv-3/</guid>
            <pubDate>Tue, 25 Aug 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[I just finished implementing the new revision of the CPU design I've been working on. Now we support out of order execution. In this blog I explain a bit about how the out of order execution is done and also discuss what bottlenecks I found while debugging programs.]]></description>
        </item>
        <item>
            <title><![CDATA[Rendering Fonts Quickly in WebGPU]]></title>
            <link>https://outercloud.dev/blogs/webgpu-font-rendering/</link>
            <guid isPermaLink="false">https://outercloud.dev/blogs/webgpu-font-rendering/</guid>
            <pubDate>Mon, 13 Jul 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[I've been working on a WebGPU animation renderer and at some point I needed to implement font rendering. Wanting the technical challenge I elected to try implementing a new method I had heard about which actually comes from a recently expired Microsoft patent! I get a bit into spline rendering and a super cool idea about how to render curves efficiently on the GPU.]]></description>
        </item>
        <item>
            <title><![CDATA[Reaching Towards Out Of Order in Our CPU]]></title>
            <link>https://outercloud.dev/blogs/riscv-2/</link>
            <guid isPermaLink="false">https://outercloud.dev/blogs/riscv-2/</guid>
            <pubDate>Sun, 14 Jun 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[It has been four months since I wrote about the first working attempt for our CPU design. Today we've managed to get the same Pong program running on the new pipeline I designed. I want to explain a bit about how the pipeline works, and how it prepares us to move to a fully out of order CPU next!]]></description>
        </item>
        <item>
            <title><![CDATA[late.sh - A good corner of the internet]]></title>
            <link>https://outercloud.dev/blogs/late-sh/</link>
            <guid isPermaLink="false">https://outercloud.dev/blogs/late-sh/</guid>
            <pubDate>Sun, 07 Jun 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[late.sh is a cool little community I think embodies a playful internet. I want to share it with you since it's often hard to find these interesting, smaller communities.]]></description>
        </item>
        <item>
            <title><![CDATA[We Launched a Duct Taped Foam Box 90,000ft]]></title>
            <link>https://outercloud.dev/blogs/leonird-1/</link>
            <guid isPermaLink="false">https://outercloud.dev/blogs/leonird-1/</guid>
            <pubDate>Tue, 05 May 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[I lead software for LEONIRD-I, the high altitude baloon MIT Satelite team launched this weekend. We got some great footage above the earth, and I got to work with radio coms to track the baloon live as we chased it down.]]></description>
        </item>
        <item>
            <title><![CDATA[Obsidian: Organizing without Breaking a Sweat]]></title>
            <link>https://outercloud.dev/blogs/organizing-obsidian/</link>
            <guid isPermaLink="false">https://outercloud.dev/blogs/organizing-obsidian/</guid>
            <pubDate>Sun, 05 Apr 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[I use Obsidian a lot now, and when I first started using it, I had a hard time creating notes and organizing them. Deciding what folders to put a note in and what tags to give a note was genuinely a difficult challenge making it more difficult for me to record things down for later. If you search for tutorials about organizing your notes in Obsidian, there's many out there, but this one is mine. This is how I organize my notes by embracing the mess a little bit, making organization natural and low effort.]]></description>
        </item>
        <item>
            <title><![CDATA[Designing a CPU from Scratch]]></title>
            <link>https://outercloud.dev/blogs/riscv-1/</link>
            <guid isPermaLink="false">https://outercloud.dev/blogs/riscv-1/</guid>
            <pubDate>Mon, 09 Mar 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[My dream is to build a computer from scratch. Literally. And the first step is the processor. Here's a little overview of how I managed to design my first RSIC-V processor with no experience, and then run pong on it.]]></description>
        </item>
        <item>
            <title><![CDATA[Battlecode 2026]]></title>
            <link>https://outercloud.dev/blogs/battlecode-2026/</link>
            <guid isPermaLink="false">https://outercloud.dev/blogs/battlecode-2026/</guid>
            <pubDate>Thu, 05 Feb 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[Recently I lead my team of first time participants to finals in the MIT Battlecode programming competition. Along the way I built the first opensource, fast, distributed game runner for battlecode. Here's how we did it.]]></description>
        </item>
        <item>
            <title><![CDATA[My SCP Writings]]></title>
            <link>https://outercloud.dev/blogs/scp/</link>
            <guid isPermaLink="false">https://outercloud.dev/blogs/scp/</guid>
            <pubDate>Thu, 05 Feb 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[I like reading SCP articles and recently I've tried writing some. Here's a list of what I've written so far as well as thoughts on my view of the Foundation.]]></description>
        </item>
        <item>
            <title><![CDATA[How It's Made]]></title>
            <link>https://outercloud.dev/blogs/meta-site/</link>
            <guid isPermaLink="false">https://outercloud.dev/blogs/meta-site/</guid>
            <pubDate>Wed, 04 Feb 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[Everyone who can, should make a personal website. So here's how I made mine.]]></description>
        </item>
    </channel>
</rss>