<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0">
    <channel>
        <title><![CDATA[Surface Detail]]></title>
        <description><![CDATA[Posts from Liam Egan]]></description>
        <link>https://www.surface-detail.com</link>
        <image>
            <url>https://www.surface-detail.com/favicon.ico</url>
            <title>Surface Detail</title>
            <link>https://www.surface-detail.com</link>
        </image>
        <generator>RSS for Node</generator>
        <lastBuildDate>Sat, 07 Mar 2026 21:48:29 GMT</lastBuildDate>
        <atom:link href="https://www.surface-detail.com/api/rss" rel="self" type="application/rss+xml"/>
        <pubDate>Sat, 07 Mar 2026 21:48:29 GMT</pubDate>
        <copyright><![CDATA[2026 Surface Detail]]></copyright>
        <language><![CDATA[en]]></language>
        <managingEditor><![CDATA[Surface Detail]]></managingEditor>
        <webMaster><![CDATA[Surface Detail]]></webMaster>
        <ttl>60</ttl>
        <item>
            <title><![CDATA[Rubber banding]]></title>
            <description><![CDATA[Imagine you have a series of points and you want to draw a single line around all of them. This sounds relatively simple, but if you just drew lines between the centers of the balls, it would look like a jumbled, tangled mess. This line wouldn't wrap around the outside. To achieve this, we're going ...]]></description>
            <link>https://www.surface-detail.com/posts/rubber-banding</link>
            <guid isPermaLink="false">d0da817b-d6a1-4460-8b3d-9f28e25dbd87</guid>
            <dc:creator><![CDATA[Surface Detail]]></dc:creator>
            <pubDate>Sat, 20 Sep 2025 15:52:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Let's go deeper]]></title>
            <description><![CDATA[Perturbation, determinism, and line-drawing. In the last post, we saw how we can break down a grid element into separate lines to introduce some seeming complexity, but that ultimately it's something of a simple structure. For reference, here's the pen we ended up with.  In this post, we're going to...]]></description>
            <link>https://www.surface-detail.com/posts/lets-go-deeper</link>
            <guid isPermaLink="false">eb36d65b-a4be-49d5-aa30-88309535fbb2</guid>
            <dc:creator><![CDATA[Surface Detail]]></dc:creator>
            <pubDate>Sat, 02 Aug 2025 18:29:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Iterating on a theme]]></title>
            <description><![CDATA[In the last post, we discussed using a grid to draw diagonal lines in one direction or another, which leads to some reasonably complex outputs. See this codepen. This pen divides space into cells, defined by grid x and y position, and draws lines from the top-centre to the right-centre and bottom-ce...]]></description>
            <link>https://www.surface-detail.com/posts/iterating-and-adding-complexity</link>
            <guid isPermaLink="false">33ace414-f1c1-4f73-aa38-aadc1af566b3</guid>
            <dc:creator><![CDATA[Surface Detail]]></dc:creator>
            <pubDate>Sun, 20 Jul 2025 22:28:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Some useful functions]]></title>
            <description><![CDATA[Before we move onto some more fun stuff, it makes sense to spend some time creating some useful utility functions. These functions will be used over and over again through your grid creation experiments and are really useful. If you just want to see all the utility functions in one place, click here...]]></description>
            <link>https://www.surface-detail.com/posts/some-useful-functions</link>
            <guid isPermaLink="false">e2c340ab-7026-4154-80ee-736a5c132595</guid>
            <dc:creator><![CDATA[Surface Detail]]></dc:creator>
            <pubDate>Sun, 13 Jul 2025 14:21:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[On Grids]]></title>
            <description><![CDATA[Grids form a backbone for so many generative art projects, from providing a structural canvas onto which to create, to providing convenient methods by which to group disparate objects. Learning how to create, use, and express ideas with grids is essential to learning to be creative with code. Grids ...]]></description>
            <link>https://www.surface-detail.com/posts/on-grids</link>
            <guid isPermaLink="false">610859fa-56f0-4b6e-b46a-cfdb5fe9e8f4</guid>
            <dc:creator><![CDATA[Surface Detail]]></dc:creator>
            <pubDate>Sat, 05 Jul 2025 18:59:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Turtles all the way down]]></title>
            <description><![CDATA[I've been meaning to get back into working with plotted generative art for some time now, and I have a few ideas for the development of a few posts about it. But in order to get there, I wanted a simple, SVG based canvas to create such artwork. There are a number of prebuilt options out there - pape...]]></description>
            <link>https://www.surface-detail.com/posts/turtles-all-the-way-down</link>
            <guid isPermaLink="false">590b73ec-15e3-4a61-96fc-ca10eb4d4985</guid>
            <dc:creator><![CDATA[Surface Detail]]></dc:creator>
            <pubDate>Tue, 01 Jul 2025 17:25:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Old man energy]]></title>
            <description><![CDATA[The interview I was in an interview yesterday and the topic came around the the candidate's website. The development manager (the person who would be managing this person) asked them about their "digital garden", and the candidate proceeded to describe their personal website in the following general...]]></description>
            <link>https://www.surface-detail.com/posts/old-man-energy</link>
            <guid isPermaLink="false">66c518de-29dc-42ba-8f94-6946771a2111</guid>
            <dc:creator><![CDATA[Surface Detail]]></dc:creator>
            <pubDate>Thu, 26 Jun 2025 19:57:00 GMT</pubDate>
        </item>
    </channel>
</rss>