<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>eggg dot uk</title><link>https://eggg.uk/</link><description>Recent content on eggg dot uk</description><generator>Hugo -- gohugo.io</generator><language>en</language><copyright>eggg</copyright><lastBuildDate>Sun, 05 Apr 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://eggg.uk/index.xml" rel="self" type="application/rss+xml"/><item><title>about</title><link>https://eggg.uk/about/</link><pubDate>Fri, 18 Apr 2025 00:00:00 +0000</pubDate><guid>https://eggg.uk/about/</guid><description>&lt;h2 id="some-socials"&gt;some socials&lt;/h2&gt;
&lt;p&gt;&lt;a href="https://hachyderm.io/@eggg"&gt;mstdn&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://bsky.app/profile/eggg.uk"&gt;bsky&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="tiny-lil-home-on-the-web"&gt;tiny lil home on the web&lt;/h2&gt;
&lt;p&gt;&lt;a href="https://eggg.uk"&gt;you are here&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="github"&gt;github&lt;/h2&gt;
&lt;p&gt;&lt;a href="https://github.com/eggg-uk"&gt;eggg-uk&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="codeberg"&gt;codeberg&lt;/h2&gt;
&lt;p&gt;&lt;a href="https://codeberg.org/eggg-uk"&gt;eggg-uk&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="a-lil-further-info"&gt;a lil further info&lt;/h2&gt;
&lt;h3 id="background"&gt;background&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;work in legal IT, specialised in business systems / SQL / Data / BI.&lt;/li&gt;
&lt;li&gt;music and video game enjoyer&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="current-focuses"&gt;current focuses&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;learning live coding
&lt;ul&gt;
&lt;li&gt;for fun&lt;/li&gt;
&lt;li&gt;to improve my programming knowledge&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;improving at photography&lt;/li&gt;
&lt;li&gt;learning more physical electronics
&lt;ul&gt;
&lt;li&gt;building a couple keyboards atm&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;learning to make my own music
&lt;ul&gt;
&lt;li&gt;music theory is hard lol&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;</description><content:encoded><![CDATA[<h2 id="some-socials">some socials</h2>
<p><a href="https://hachyderm.io/@eggg">mstdn</a></p>
<p><a href="https://bsky.app/profile/eggg.uk">bsky</a></p>
<h2 id="tiny-lil-home-on-the-web">tiny lil home on the web</h2>
<p><a href="https://eggg.uk">you are here</a></p>
<h2 id="github">github</h2>
<p><a href="https://github.com/eggg-uk">eggg-uk</a></p>
<h2 id="codeberg">codeberg</h2>
<p><a href="https://codeberg.org/eggg-uk">eggg-uk</a></p>
<h2 id="a-lil-further-info">a lil further info</h2>
<h3 id="background">background</h3>
<ul>
<li>work in legal IT, specialised in business systems / SQL / Data / BI.</li>
<li>music and video game enjoyer</li>
</ul>
<h3 id="current-focuses">current focuses</h3>
<ul>
<li>learning live coding
<ul>
<li>for fun</li>
<li>to improve my programming knowledge</li>
</ul>
</li>
<li>improving at photography</li>
<li>learning more physical electronics
<ul>
<li>building a couple keyboards atm</li>
</ul>
</li>
<li>learning to make my own music
<ul>
<li>music theory is hard lol</li>
</ul>
</li>
</ul>
]]></content:encoded></item><item><title>fttp on ee into unifi stuff</title><link>https://eggg.uk/scraps/fttp/</link><pubDate>Sun, 05 Apr 2026 00:00:00 +0000</pubDate><guid>https://eggg.uk/scraps/fttp/</guid><description>&lt;h1 id="what"&gt;what?&lt;/h1&gt;
&lt;p&gt;We had a fiber to the property install last week as openreach offer it in my area as of a few months back.&lt;/p&gt;
&lt;p&gt;We definitely don&amp;rsquo;t need it but this 1.6gbps is cheaper than what we were paying for gigabit previously!&lt;/p&gt;
&lt;p&gt;notes at the bottom on the settings which let me run the ONT directly into my unifi stuff, skipping the EE router altogether (which was not well documented, so i figured i&amp;rsquo;d post what worked for me :) )&lt;/p&gt;</description><content:encoded><![CDATA[<h1 id="what">what?</h1>
<p>We had a fiber to the property install last week as openreach offer it in my area as of a few months back.</p>
<p>We definitely don&rsquo;t need it but this 1.6gbps is cheaper than what we were paying for gigabit previously!</p>
<p>notes at the bottom on the settings which let me run the ONT directly into my unifi stuff, skipping the EE router altogether (which was not well documented, so i figured i&rsquo;d post what worked for me :) )</p>
<h2 id="how-did-the-installation-go">how did the installation go?</h2>
<p>The engineer took around 4 hours, I didn&rsquo;t appreciate that it came in overhead from the telegraph poles.</p>
<p>They went and fetched some rolled up fiber from the telegraph pole</p>
<p>drilled their ladder into the wall (for safety!),</p>
<p>added an anchor for the fiber to come in to, i think along with some metal stranded cable (so as not to stress the fiber itself presumably)</p>
<p>attached and tensioned this between the telegraph pole and the house</p>
<p>ran the fiber down to the ground floor, presumably so that neighbours can be split off from there, and then ran a cable back up to the first to enter the property.</p>
<p>The fiber comes in to a tiny box (the openreach ONT)</p>
<p>A few trips into the house during install for the engineer, checking the install location, drilling the hole and passing out the fiber cable which presumably gets spliced onto the incoming cable from the telegraph pole, and a final check of the connection in to the ONT (and a line light level reading which I was told -25 is the limit and mine was -16, which is strong, dunno what the unit of measurement is, but given it&rsquo;s a negative i&rsquo;m going to hazard maybe dB still.)</p>
<p>The amount of engineer time and energy was impressive; they advise 3h or so, our installation took just under 4</p>
<h2 id="openreach-ont">openreach ONT</h2>
<p>behaves as I would expect a modem to. Mine has three ports and a power button, plus four lights.</p>
<ul>
<li>the ports are fibre in, 2.5GBE out, power in</li>
<li>the lights are power, PON, LOS, LAN</li>
</ul>
<h2 id="configuring-my-unifi-stuff-to-work-with-this-directly">configuring my unifi stuff to work with this directly</h2>
<p>So we have the unifi UXG fiber for routing at home; intentionally chosen a few months back for a likely fiber upgrade to our incoming connection.</p>
<p>I was hoping to either put the EE router into modem mode, or run direct from the ONT into my unifi stuff.</p>
<p>Thankfully, after I found the EE router has no modem mode, and after establishing that things were working on that device, I popped it back in its box and plugged the cable straight into the WAN port on the UXG.</p>
<p>Rebooted a few times to no avail, found <a href="https://ee.co.uk/help/broadband/getting-started/using-and-configuring-a-third-party-router">this page on EE&rsquo;s site</a></p>
<p>which states :</p>





<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-text" data-lang="text"><span class="line"><span class="ln">1</span><span class="cl">Fibre and Full Fibre 
</span></span><span class="line"><span class="ln">2</span><span class="cl">    Username or login name: bthomehub@btbroadband.com
</span></span><span class="line"><span class="ln">3</span><span class="cl">    Broadband password: BT (or leave blank)
</span></span><span class="line"><span class="ln">4</span><span class="cl">    Authentication: CHAP
</span></span><span class="line"><span class="ln">5</span><span class="cl">    DNS: Auto or Obtain from ISP (we&#39;ll automatically provide these when you connect)
</span></span><span class="line"><span class="ln">6</span><span class="cl">    VLAN: Active (Full Fibre only) 
</span></span><span class="line"><span class="ln">7</span><span class="cl">    VLAN ID (802.1q): 101 (Full Fibre only) 
</span></span><span class="line"><span class="ln">8</span><span class="cl">    VLAN ID (802.1p): 101 (Full Fibre only) </span></span></code></pre></div><p>Unfortunately, this didn&rsquo;t work.</p>
<p>With some trial and error i found that removing the VLAN tag fixed. Overall my settings changes to the internet section in the unifi menus is :</p>





<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-text" data-lang="text"><span class="line"><span class="ln"> 1</span><span class="cl">Advanced: Manual
</span></span><span class="line"><span class="ln"> 2</span><span class="cl">    VLAN ID: unchecked
</span></span><span class="line"><span class="ln"> 3</span><span class="cl">    MAC Address Clone: unchecked
</span></span><span class="line"><span class="ln"> 4</span><span class="cl">    Smart Queues: unchecked
</span></span><span class="line"><span class="ln"> 5</span><span class="cl">    UPnP: unchecked
</span></span><span class="line"><span class="ln"> 6</span><span class="cl">
</span></span><span class="line"><span class="ln"> 7</span><span class="cl">IPv4 configuration
</span></span><span class="line"><span class="ln"> 8</span><span class="cl">    Connection: PPPoE
</span></span><span class="line"><span class="ln"> 9</span><span class="cl">    Username: bthomehub@btbroadband.com
</span></span><span class="line"><span class="ln">10</span><span class="cl">    Password: bt
</span></span><span class="line"><span class="ln">11</span><span class="cl">    Additional IP addresses: blank
</span></span><span class="line"><span class="ln">12</span><span class="cl">    Auto DNS Server: checked
</span></span><span class="line"><span class="ln">13</span><span class="cl">
</span></span><span class="line"><span class="ln">14</span><span class="cl">IPv6 configuration: 
</span></span><span class="line"><span class="ln">15</span><span class="cl">    Disabled</span></span></code></pre></div><p>might revisit IPv6 later, since the EE hub definitely defaulted to having that enabled when i was looking at it.</p>
]]></content:encoded></item><item><title>web audio playaround</title><link>https://eggg.uk/web/audio/</link><pubDate>Thu, 29 Jan 2026 00:00:00 +0000</pubDate><guid>https://eggg.uk/web/audio/</guid><description>&lt;p&gt;#todo fix the clickiness with maybe gain? idk&lt;/p&gt;
&lt;p&gt;loud btw, do turn vol down before pushing buttons&lt;/p&gt;
&lt;html&gt;
 click:
 &lt;style&gt;
 html {
 font-color: white;
 background-color: slateblue;
 }
 &lt;/style&gt;
 &lt;button id="butts"&gt;bzzzz&lt;/button&gt;
 &lt;br /&gt;hertz:
 &lt;select id="hzsel"&gt;
 &lt;option&gt;15&lt;/option&gt;
 &lt;option selected="selected"&gt;30&lt;/option&gt;
 &lt;option&gt;45&lt;/option&gt;
 &lt;/select&gt;
 &lt;br /&gt;
 wave:
 &lt;select id="oscsel"&gt;
 &lt;option&gt;sawtooth&lt;/option&gt;
 &lt;option selected="selected"&gt;sine&lt;/option&gt;
 &lt;option&gt;square&lt;/option&gt;
 &lt;option&gt;triangle&lt;/option&gt;
 &lt;option&gt;custom&lt;/option&gt;
 &lt;/select&gt;
 &lt;script src="./wa.js"&gt;&lt;/script&gt;
&lt;/html&gt;</description><content:encoded><![CDATA[<p>#todo fix the clickiness with maybe gain? idk</p>
<p>loud btw, do turn vol down before pushing buttons</p>
<html>
        click:
        <style>
            html {
                font-color: white;
                background-color: slateblue;
            }
        </style>
        <button id="butts">bzzzz</button>
        <br />hertz:
        <select id="hzsel">
            <option>15</option>
            <option selected="selected">30</option>
            <option>45</option>
        </select>
        <br />
        wave:
        <select id="oscsel">
            <option>sawtooth</option>
            <option selected="selected">sine</option>
            <option>square</option>
            <option>triangle</option>
            <option>custom</option>
        </select>
        <script src="./wa.js"></script>
</html>
]]></content:encoded></item><item><title>RDRR podcast</title><link>https://eggg.uk/scraps/rdrr/</link><pubDate>Sat, 03 Jan 2026 00:00:00 +0000</pubDate><guid>https://eggg.uk/scraps/rdrr/</guid><description>&lt;h2 id="tldr"&gt;tldr:&lt;/h2&gt;
&lt;p&gt;I&amp;rsquo;ve uploaded (or am uploading at time of typing this) some potentially otherwise lost episodes of an incredible mixtape podcast series.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://archive.org/details/RDRR-Podcast-Radarr.kiev.ua"&gt;you can find them here on archive.org&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="initial-post"&gt;initial post:&lt;/h2&gt;
&lt;blockquote class="mastodon-embed" data-embed-url="https://hachyderm.io/@eggg/115830975047852191/embed" style="background: #FCF8FF; border-radius: 8px; border: 1px solid #C9C4DA; margin: 0; max-width: 540px; min-width: 270px; overflow: hidden; padding: 0;"&gt; &lt;a href="https://hachyderm.io/@eggg/115830975047852191" target="_blank" style="align-items: center; color: #1C1A25; display: flex; flex-direction: column; font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Oxygen, Ubuntu, Cantarell, 'Fira Sans', 'Droid Sans', 'Helvetica Neue', Roboto, sans-serif; font-size: 14px; justify-content: center; letter-spacing: 0.25px; line-height: 20px; padding: 24px; text-decoration: none;"&gt; &lt;svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="32" height="32" viewBox="0 0 79 75"&gt;&lt;path d="M63 45.3v-20c0-4.1-1-7.3-3.2-9.7-2.1-2.4-5-3.7-8.5-3.7-4.1 0-7.2 1.6-9.3 4.7l-2 3.3-2-3.3c-2-3.1-5.1-4.7-9.2-4.7-3.5 0-6.4 1.3-8.6 3.7-2.1 2.4-3.1 5.6-3.1 9.7v20h8V25.9c0-4.1 1.7-6.2 5.2-6.2 3.8 0 5.8 2.5 5.8 7.4V37.7H44V27.1c0-4.9 1.9-7.4 5.8-7.4 3.5 0 5.2 2.1 5.2 6.2V45.3h8ZM74.7 16.6c.6 6 .1 15.7.1 17.3 0 .5-.1 4.8-.1 5.3-.7 11.5-8 16-15.6 17.5-.1 0-.2 0-.3 0-4.9 1-10 1.2-14.9 1.4-1.2 0-2.4 0-3.6 0-4.8 0-9.7-.6-14.4-1.7-.1 0-.1 0-.1 0s-.1 0-.1 0 0 .1 0 .1 0 0 0 0c.1 1.6.4 3.1 1 4.5.6 1.7 2.9 5.7 11.4 5.7 5 0 9.9-.6 14.8-1.7 0 0 0 0 0 0 .1 0 .1 0 .1 0 0 .1 0 .1 0 .1.1 0 .1 0 .1.1v5.6s0 .1-.1.1c0 0 0 0 0 .1-1.6 1.1-3.7 1.7-5.6 2.3-.8.3-1.6.5-2.4.7-7.5 1.7-15.4 1.3-22.7-1.2-6.8-2.4-13.8-8.2-15.5-15.2-.9-3.8-1.6-7.6-1.9-11.5-.6-5.8-.6-11.7-.8-17.5C3.9 24.5 4 20 4.9 16 6.7 7.9 14.1 2.2 22.3 1c1.4-.2 4.1-1 16.5-1h.1C51.4 0 56.7.8 58.1 1c8.4 1.2 15.5 7.5 16.6 15.6Z" fill="currentColor"/&gt;&lt;/svg&gt; &lt;div style="color: #787588; margin-top: 16px;"&gt;Post by @eggg@hachyderm.io&lt;/div&gt; &lt;div style="font-weight: 500;"&gt;View on Mastodon&lt;/div&gt; &lt;/a&gt; &lt;/blockquote&gt; &lt;script data-allowed-prefixes="https://hachyderm.io/" async src="https://hachyderm.io/embed.js"&gt;&lt;/script&gt;
&lt;h2 id="my-knowledge-of-them"&gt;my knowledge of them&lt;/h2&gt;
&lt;p&gt;So I&amp;rsquo;ve no clue how i found these years ago, but this mixtape series was incredible.&lt;/p&gt;</description><content:encoded><![CDATA[<h2 id="tldr">tldr:</h2>
<p>I&rsquo;ve uploaded (or am uploading at time of typing this) some potentially otherwise lost episodes of an incredible mixtape podcast series.</p>
<p><a href="https://archive.org/details/RDRR-Podcast-Radarr.kiev.ua">you can find them here on archive.org</a></p>
<h2 id="initial-post">initial post:</h2>
<blockquote class="mastodon-embed" data-embed-url="https://hachyderm.io/@eggg/115830975047852191/embed" style="background: #FCF8FF; border-radius: 8px; border: 1px solid #C9C4DA; margin: 0; max-width: 540px; min-width: 270px; overflow: hidden; padding: 0;"> <a href="https://hachyderm.io/@eggg/115830975047852191" target="_blank" style="align-items: center; color: #1C1A25; display: flex; flex-direction: column; font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Oxygen, Ubuntu, Cantarell, 'Fira Sans', 'Droid Sans', 'Helvetica Neue', Roboto, sans-serif; font-size: 14px; justify-content: center; letter-spacing: 0.25px; line-height: 20px; padding: 24px; text-decoration: none;"> <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="32" height="32" viewBox="0 0 79 75"><path d="M63 45.3v-20c0-4.1-1-7.3-3.2-9.7-2.1-2.4-5-3.7-8.5-3.7-4.1 0-7.2 1.6-9.3 4.7l-2 3.3-2-3.3c-2-3.1-5.1-4.7-9.2-4.7-3.5 0-6.4 1.3-8.6 3.7-2.1 2.4-3.1 5.6-3.1 9.7v20h8V25.9c0-4.1 1.7-6.2 5.2-6.2 3.8 0 5.8 2.5 5.8 7.4V37.7H44V27.1c0-4.9 1.9-7.4 5.8-7.4 3.5 0 5.2 2.1 5.2 6.2V45.3h8ZM74.7 16.6c.6 6 .1 15.7.1 17.3 0 .5-.1 4.8-.1 5.3-.7 11.5-8 16-15.6 17.5-.1 0-.2 0-.3 0-4.9 1-10 1.2-14.9 1.4-1.2 0-2.4 0-3.6 0-4.8 0-9.7-.6-14.4-1.7-.1 0-.1 0-.1 0s-.1 0-.1 0 0 .1 0 .1 0 0 0 0c.1 1.6.4 3.1 1 4.5.6 1.7 2.9 5.7 11.4 5.7 5 0 9.9-.6 14.8-1.7 0 0 0 0 0 0 .1 0 .1 0 .1 0 0 .1 0 .1 0 .1.1 0 .1 0 .1.1v5.6s0 .1-.1.1c0 0 0 0 0 .1-1.6 1.1-3.7 1.7-5.6 2.3-.8.3-1.6.5-2.4.7-7.5 1.7-15.4 1.3-22.7-1.2-6.8-2.4-13.8-8.2-15.5-15.2-.9-3.8-1.6-7.6-1.9-11.5-.6-5.8-.6-11.7-.8-17.5C3.9 24.5 4 20 4.9 16 6.7 7.9 14.1 2.2 22.3 1c1.4-.2 4.1-1 16.5-1h.1C51.4 0 56.7.8 58.1 1c8.4 1.2 15.5 7.5 16.6 15.6Z" fill="currentColor"/></svg> <div style="color: #787588; margin-top: 16px;">Post by @eggg@hachyderm.io</div> <div style="font-weight: 500;">View on Mastodon</div> </a> </blockquote> <script data-allowed-prefixes="https://hachyderm.io/" async src="https://hachyderm.io/embed.js"></script>
<h2 id="my-knowledge-of-them">my knowledge of them</h2>
<p>So I&rsquo;ve no clue how i found these years ago, but this mixtape series was incredible.</p>
<p>Might try and export all my last fm data and make it searchable later</p>
<h2 id="the-internets-current-knowledge-of-them">the internet&rsquo;s current knowledge of them</h2>
<p>There are little remnants across the web here and there of them, but no archived copies that I can find.</p>
<p>there are 8 later ones on <a href="https://www.mixcloud.com/rdrr/">mixcloud</a></p>
<p>three are mentioned on a site called <a href="https://www.mixesdb.com/w/Category:RDRR_Podcast">mixesdb</a></p>
<p>I don&rsquo;t know what happened to livejournal and won&rsquo;t link to it as it seems riddled with malvertising these days but there&rsquo;s remnants of an old board relating to them there</p>
<p>the original site (radarr.kiev.ua) seems to be cloudflared at the moment</p>
<p>they have literally one mix on an old <a href="https://soundcloud.com/rdrr">soundcloud</a></p>
<p>some of the artists have uploaded theirs to youtube</p>
<p>I found some emails from their mailing list from like 2009 and there was a <a href="https://web.archive.org/web/20111012231129/http://radarr.kiev.ua/rdrrpodcast/podcast.xml">podcast feed</a></p>
<p>and a link to the 26th one <a href="https://web.archive.org/web/20111013161205/radarr.kiev.ua/forums/index.php?showtopic=123966">radarr.kiev.ua/forums/index.php?showtopic=123966</a></p>
<p>sadly there was some anti leech protection in place</p>
<h2 id="archiveorg-upload">archive.org upload</h2>
<p>So after posting one of them which i found on youtube after hearing a song i only know because of them (masto post above)</p>
<p>I decided to see whether any of them existed on archive.org, and they don&rsquo;t!</p>
<p>Me to the rescue.</p>
<p>As I&rsquo;ve recently been organising (or trying to) my photo library, I decided to use exiftool which I&rsquo;ve been learning as part of that, to fetch the metadata for the archive.org upload:</p>





<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="ln">1</span><span class="cl">exiftool . -fileOrder filename -Artist -Year -Duration</span></span></code></pre></div>




<pre tabindex="0"><code class="language-output" data-lang="output">======== ./002-rdrr_podcast_dp-6-radarr.kiev.ua.mp3
Artist                          : DP-6
Year                            : 2007
Duration                        : 1:18:07 (approx)
======== ./003-rdrr_podcast_crab-radarr.kiev.ua.mp3
Artist                          : Crab
Year                            : 2007
Duration                        : 1:00:07 (approx)
======== ./004-rdrr_podcast_guarana-radarr.kiev.ua.mp3
Artist                          : GuaRANa
Year                            : 2007
Duration                        : 0:56:57 (approx)
======== ./005-rdrr_podcast_schmove-radarr.kiev.ua.mp3
Artist                          : Schmove
Year                            : 2007
Duration                        : 0:46:00 (approx)
======== ./006-rdrr_podcast_d8-radarr.kiev.ua.mp3
Artist                          : d8
Year                            : 2007
Duration                        : 1:01:09 (approx)
======== ./007-rdrr_podcast_roman_k-radarr.kiev.ua.mp3
Artist                          : Roman K
Year                            : 2007
Duration                        : 0:59:18 (approx)
======== ./008-rdrr_podcast_tapolsky_and_beauty-radarr.kiev.ua.mp3.mp3
Artist                          : Tapolsky &amp; Beauty
Year                            : 2007
Duration                        : 1:17:09 (approx)
======== ./009-rdrr_podcast_plato-radarr.kiev.ua.mp3
Artist                          : PLATO
Year                            : 2007
Duration                        : 1:12:11 (approx)
======== ./010-rdrr_podcast_iq_live-radarr.kiev.ua.mp3
Artist                          : IQ (Live)
Year                            : 2007
Duration                        : 1:09:26 (approx)
======== ./011-rdrr_podcast_pablo_honey_and_finger-radarr.kiev.ua.mp3
Artist                          : Finger &amp; Pablo Honey
Year                            : 2007
Duration                        : 0:55:55 (approx)
======== ./012-rdrr_podcast_korablove-radarr.kiev.ua.mp3
Artist                          : Korablove
Year                            : 2007
Duration                        : 1:12:42 (approx)
======== ./013-rdrr_podcast_rustam-radarr.kiev.ua.mp3
Artist                          : Rustam
Year                            : 2008
Duration                        : 1:16:09 (approx)
======== ./015-rdrr_podcast_suhar-radarr.kiev.ua.mp3
Artist                          : Suhar
Year                            : 2008
Duration                        : 1:02:53 (approx)
======== ./016-rdrr_podcast_s.peres-radarr.kiev.ua.mp3
Artist                          : S.Peres
Year                            : 2008
Duration                        : 1:00:26 (approx)
======== ./017-rdrr_podcast_valta&amp;minikin-radarr.kiev.ua.mp3
Artist                          : Valta &amp; Minikin
Year                            : 2008
Duration                        : 1:17:22 (approx)
======== ./018-rdrr_podcast_krazia-radarr.kiev.ua.mp3
Artist                          : Krazia
Year                            : 2008
Duration                        : 1:02:02 (approx)
======== ./019-rdrr_podcast_tina_valen-radarr.kiev.ua.mp3
Artist                          : Tina Valen
Year                            : 2008
Duration                        : 0:48:52 (approx)
======== ./020-rdrr_podcast_nadto_sonna-radarr.kiev.ua.mp3
Artist                          : Íàäòî Ñîííà (live)
Year                            : 2008
Duration                        : 1:09:52 (approx)
======== ./021-rdrr_podcast_magic_b-radarr.kiev.ua.mp3
Artist                          : Magic B
Year                            : 2008
Duration                        : 1:06:05 (approx)
======== ./022-rdrr_podcast_glacial-radarr.kiev.ua.mp3
Artist                          : Glacial
Year                            : 2008
Duration                        : 0:59:55 (approx)
======== ./023-rdrr_podcast_udjin-radarr.kiev.ua.mp3
Artist                          : uDJin
Year                            : 2008
Duration                        : 1:17:17 (approx)
======== ./024-rdrr_podcast_tonika-radarr.kiev.ua.mp3
Artist                          : Tonika
Year                            : 2008
Duration                        : 0:45:27 (approx)
    1 directories scanned
   22 image files read</code></pre><p>I&rsquo;ve resisted learning sed&hellip; maybe someday soon&hellip;.!</p>
<p>in the meantime, I chopped this up with replace in a basic text editor to format it</p>
<p>they are currently uploading at an alarmingly slow rate (2GB in total to upload, 108MB done so far in about 45 mins)</p>
<p><a href="https://archive.org/details/RDRR-Podcast-Radarr.kiev.ua">you can find them here on archive.org</a></p>
]]></content:encoded></item><item><title>hydra 6 - sources</title><link>https://eggg.uk/hydra/6/</link><pubDate>Tue, 02 Dec 2025 00:00:00 +0000</pubDate><guid>https://eggg.uk/hydra/6/</guid><description>&lt;pre tabindex="0"&gt;&lt;code class="language-hydra" data-lang="hydra"&gt;osc()
.out(o0)

voronoi()
.out(o1)

noise()
.out(o2)

gradient()
.mult(o0)
.diff(o1)
.sub(o2)
.out(o3)

render()&lt;/code&gt;&lt;/pre&gt;&lt;script src="https://cdn.jsdelivr.net/npm/hydra-synth/dist/hydra-synth.js"&gt;&lt;/script&gt;
&lt;script&gt;
var hydra = new Hydra({detectAudio: false})

osc()
.out(o0)

voronoi()
.out(o1)

noise()
.out(o2)

gradient()
.mult(o0)
.diff(o1)
.sub(o2)
.out(o3)

render()
&lt;/script&gt;</description><content:encoded><![CDATA[




<pre tabindex="0"><code class="language-hydra" data-lang="hydra">osc()
.out(o0)

voronoi()
.out(o1)

noise()
.out(o2)

gradient()
.mult(o0)
.diff(o1)
.sub(o2)
.out(o3)

render()</code></pre><script src="https://cdn.jsdelivr.net/npm/hydra-synth/dist/hydra-synth.js"></script>
<script>
var hydra = new Hydra({detectAudio: false})

osc()
.out(o0)

voronoi()
.out(o1)

noise()
.out(o2)

gradient()
.mult(o0)
.diff(o1)
.sub(o2)
.out(o3)

render()
</script>]]></content:encoded></item><item><title>hydra - snapshot of pastagang hydra visual NaN festival in Karlsruhe 2025-11-29</title><link>https://eggg.uk/hydra/5/</link><pubDate>Sat, 29 Nov 2025 00:00:00 +0000</pubDate><guid>https://eggg.uk/hydra/5/</guid><description>&lt;h2 id="a-snapshot-of-pastagang-hydra-code-during-nan-festival-in-karlsruhe"&gt;a snapshot of pastagang hydra code during &lt;a href="https://n-a-n.info/"&gt;NaN festival in Karlsruhe&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;The visuals got way better than this but i forgot to take more copies&lt;/p&gt;





&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-js" data-lang="js"&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 1&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="nx"&gt;shape&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;P&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;2 3 8 20&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 2&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;color&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;P&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;.1 .2 .6 .9&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;),.&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;,.&lt;/span&gt;&lt;span class="mi"&gt;7&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 3&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;repeat&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;20&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;16&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 4&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;blend&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;o0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="nx"&gt;P&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;.5 .5 .5 .9&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 5&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;scrollX&lt;/span&gt;&lt;span class="p"&gt;(.&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,.&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 6&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;modulateRotate&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;osc&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;P&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;1 3 5 7&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;)))&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 7&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;brightness&lt;/span&gt;&lt;span class="p"&gt;(.&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 8&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;diff&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;o0&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 9&lt;/span&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;10&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;out&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Doctoring it slightly to get it to run in hydra below (removing the &lt;a href="https://codeberg.org/munshkr/flok/src/branch/main/README.md#p-function"&gt;P() stuff which is a flok function&lt;/a&gt;)&lt;/p&gt;</description><content:encoded><![CDATA[<h2 id="a-snapshot-of-pastagang-hydra-code-during-nan-festival-in-karlsruhe">a snapshot of pastagang hydra code during <a href="https://n-a-n.info/">NaN festival in Karlsruhe</a></h2>
<p>The visuals got way better than this but i forgot to take more copies</p>





<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-js" data-lang="js"><span class="line"><span class="ln"> 1</span><span class="cl"><span class="nx">shape</span><span class="p">(</span><span class="nx">P</span><span class="p">(</span><span class="s2">&#34;2 3 8 20&#34;</span><span class="p">))</span>
</span></span><span class="line"><span class="ln"> 2</span><span class="cl"><span class="p">.</span><span class="nx">color</span><span class="p">(</span><span class="nx">P</span><span class="p">(</span><span class="s2">&#34;.1 .2 .6 .9&#34;</span><span class="p">),.</span><span class="mi">5</span><span class="p">,.</span><span class="mi">7</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 3</span><span class="cl"><span class="p">.</span><span class="nx">repeat</span><span class="p">(</span><span class="mi">20</span><span class="p">,</span><span class="mi">16</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 4</span><span class="cl"><span class="p">.</span><span class="nx">blend</span><span class="p">(</span><span class="nx">o0</span><span class="p">,</span><span class="nx">P</span><span class="p">(</span><span class="s2">&#34;.5 .5 .5 .9&#34;</span><span class="p">))</span>
</span></span><span class="line"><span class="ln"> 5</span><span class="cl"><span class="p">.</span><span class="nx">scrollX</span><span class="p">(.</span><span class="mi">1</span><span class="p">,.</span><span class="mi">1</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 6</span><span class="cl"><span class="p">.</span><span class="nx">modulateRotate</span><span class="p">(</span><span class="nx">osc</span><span class="p">(</span><span class="nx">P</span><span class="p">(</span><span class="s2">&#34;1 3 5 7&#34;</span><span class="p">)))</span>
</span></span><span class="line"><span class="ln"> 7</span><span class="cl"><span class="p">.</span><span class="nx">brightness</span><span class="p">(.</span><span class="mi">1</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 8</span><span class="cl"><span class="p">.</span><span class="nx">diff</span><span class="p">(</span><span class="nx">o0</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 9</span><span class="cl">
</span></span><span class="line"><span class="ln">10</span><span class="cl"><span class="p">.</span><span class="nx">out</span><span class="p">()</span></span></span></code></pre></div><p>Doctoring it slightly to get it to run in hydra below (removing the <a href="https://codeberg.org/munshkr/flok/src/branch/main/README.md#p-function">P() stuff which is a flok function</a>)</p>





<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-js" data-lang="js"><span class="line"><span class="ln"> 1</span><span class="cl"><span class="nx">bpm</span><span class="o">=</span><span class="mi">130</span>
</span></span><span class="line"><span class="ln"> 2</span><span class="cl">
</span></span><span class="line"><span class="ln"> 3</span><span class="cl"><span class="nx">shape</span><span class="p">([</span><span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">,</span> <span class="mi">8</span><span class="p">,</span> <span class="mi">20</span><span class="p">])</span>
</span></span><span class="line"><span class="ln"> 4</span><span class="cl"><span class="p">.</span><span class="nx">color</span><span class="p">([.</span><span class="mi">1</span><span class="p">,</span> <span class="p">.</span><span class="mi">2</span><span class="p">,</span> <span class="p">.</span><span class="mi">6</span><span class="p">,</span> <span class="p">.</span><span class="mi">9</span><span class="p">],.</span><span class="mi">5</span><span class="p">,.</span><span class="mi">7</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 5</span><span class="cl"><span class="p">.</span><span class="nx">repeat</span><span class="p">(</span><span class="mi">20</span><span class="p">,</span><span class="mi">16</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 6</span><span class="cl"><span class="p">.</span><span class="nx">blend</span><span class="p">(</span><span class="nx">o0</span><span class="p">,[.</span><span class="mi">5</span><span class="p">,</span> <span class="p">.</span><span class="mi">5</span><span class="p">,</span> <span class="p">.</span><span class="mi">5</span><span class="p">,</span> <span class="p">.</span><span class="mi">9</span><span class="p">])</span>
</span></span><span class="line"><span class="ln"> 7</span><span class="cl"><span class="p">.</span><span class="nx">scrollX</span><span class="p">(.</span><span class="mi">1</span><span class="p">,.</span><span class="mi">1</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 8</span><span class="cl"><span class="p">.</span><span class="nx">modulateRotate</span><span class="p">(</span><span class="nx">osc</span><span class="p">([</span><span class="mi">1</span><span class="p">,</span> <span class="mi">3</span><span class="p">,</span> <span class="mi">5</span><span class="p">,</span> <span class="mi">7</span><span class="p">]))</span>
</span></span><span class="line"><span class="ln"> 9</span><span class="cl"><span class="p">.</span><span class="nx">brightness</span><span class="p">(.</span><span class="mi">1</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">10</span><span class="cl"><span class="p">.</span><span class="nx">diff</span><span class="p">(</span><span class="nx">o0</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">11</span><span class="cl">
</span></span><span class="line"><span class="ln">12</span><span class="cl"><span class="p">.</span><span class="nx">out</span><span class="p">()</span></span></span></code></pre></div><script src="https://cdn.jsdelivr.net/npm/hydra-synth/dist/hydra-synth.js"></script>
<script>
var hydra = new Hydra({detectAudio: false})
bpm=130

shape([2, 3, 8, 20])
.color([.1, .2, .6, .9],.5,.7)
.repeat(20,16)
.blend(o0,[.5, .5, .5, .9])
.scrollX(.1,.1)
.modulateRotate(osc([1, 3, 5, 7]))
.brightness(.1)
.diff(o0)

.out()
</script>
]]></content:encoded></item><item><title>web permissions testing</title><link>https://eggg.uk/web/testingpermissions/</link><pubDate>Sat, 29 Nov 2025 00:00:00 +0000</pubDate><guid>https://eggg.uk/web/testingpermissions/</guid><description>&lt;p&gt;To be clear, this all runs in your browser and I&amp;rsquo;m collecting nothing here&lt;/p&gt;
&lt;p&gt;&lt;a href="https://codeberg.org/eggg-uk/eggg.uk/src/branch/main/content/web"&gt;source code is all on codeberg if you want to check&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Hopefully this will help me to understand what aspects of info browsers provide unprompted to sites I visit (which could be collected)&lt;/p&gt;
&lt;p&gt;very much a work in progress&lt;/p&gt;
&lt;style&gt;
 thead {
 font-weight: bold;
 }
&lt;/style&gt;
&lt;html&gt;
 &lt;body&gt;
 &lt;div class="container" id="container"&gt;&lt;/div&gt;
 &lt;script src=webtest.js&gt;&lt;/script&gt;
 &lt;/body&gt;
&lt;/html&gt;</description><content:encoded><![CDATA[<p>To be clear, this all runs in your browser and I&rsquo;m collecting nothing here</p>
<p><a href="https://codeberg.org/eggg-uk/eggg.uk/src/branch/main/content/web">source code is all on codeberg if you want to check</a></p>
<p>Hopefully this will help me to understand what aspects of info browsers provide unprompted to sites I visit (which could be collected)</p>
<p>very much a work in progress</p>
<style>
    thead {
        font-weight: bold;
    }
</style>
<html>
  <body>
    <div class="container" id="container"></div>
    <script src=webtest.js></script>
  </body>
</html>
]]></content:encoded></item><item><title>hydra - live set @ algorhythms - eggg 2025-11-05</title><link>https://eggg.uk/hydra/4/</link><pubDate>Wed, 05 Nov 2025 00:00:00 +0000</pubDate><guid>https://eggg.uk/hydra/4/</guid><description>&lt;h2 id="the-outcome-of-another-live-visual-set--algorhythms---eggg"&gt;the outcome of another live visual set @ algorhythms - eggg&lt;/h2&gt;





&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-js" data-lang="js"&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 1&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;//eggg live visual set 2025-11-05 at algorhythms (Zoeya on audio)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 2&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;&lt;/span&gt;&lt;span class="nx"&gt;noise&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;P&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;100 3 8 32 128 30000 640000 2147000000000&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;&lt;span class="c1"&gt;//more numbers pls
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 3&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;sub&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;shape&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;P&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;2 3 8 32&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;)).&lt;/span&gt;&lt;span class="nx"&gt;repeat&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;8&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nx"&gt;modulateRotate&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;osc&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;8&lt;/span&gt;&lt;span class="p"&gt;,.&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;)))&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 4&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;//hi
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 5&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;colorama&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;P&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;1.76 1.5 [8 3]&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;&lt;span class="c1"&gt;//1.76 best value. nobody understands this. if you do,,lmk?
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 6&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;voronoi&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;30&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;0.5&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nx"&gt;color&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mf"&gt;0.1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;0.2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;0.5&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 7&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;scrollY&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mf"&gt;0.1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;0.1&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 8&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;thresh&lt;/span&gt;&lt;span class="p"&gt;(.&lt;/span&gt;&lt;span class="mi"&gt;75&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 9&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;modulateScale&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;osc&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mf"&gt;0.1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;0.5&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;10&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;blend&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;src&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;o0&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nx"&gt;pixelate&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;P&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;16&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;32&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;64&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;&lt;span class="mi"&gt;12&lt;/span&gt;&lt;span class="p"&gt;),.&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;11&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;//sorry in advance?
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;12&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;shape&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nx"&gt;color&lt;/span&gt;&lt;span class="p"&gt;(.&lt;/span&gt;&lt;span class="mi"&gt;6&lt;/span&gt;&lt;span class="p"&gt;,.&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nx"&gt;repeat&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;16&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;12&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nx"&gt;modulateRotate&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;o0&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nx"&gt;scrollY&lt;/span&gt;&lt;span class="p"&gt;(.&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;13&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;blend&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;o0&lt;/span&gt;&lt;span class="p"&gt;,.&lt;/span&gt;&lt;span class="mi"&gt;8&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;14&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;out&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;15&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;//someone kept using P()
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;16&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;//IT TIES BACK TO STRUDEL THX LU
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Doctoring it slightly to get it to run in hydra below (removing the &lt;a href="https://codeberg.org/munshkr/flok/src/branch/main/README.md#p-function"&gt;P() stuff which is a flok function&lt;/a&gt;)&lt;/p&gt;</description><content:encoded><![CDATA[<h2 id="the-outcome-of-another-live-visual-set--algorhythms---eggg">the outcome of another live visual set @ algorhythms - eggg</h2>





<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-js" data-lang="js"><span class="line"><span class="ln"> 1</span><span class="cl"><span class="c1">//eggg live visual set 2025-11-05 at algorhythms (Zoeya on audio)
</span></span></span><span class="line"><span class="ln"> 2</span><span class="cl"><span class="c1"></span><span class="nx">noise</span><span class="p">(</span><span class="nx">P</span><span class="p">(</span><span class="s2">&#34;100 3 8 32 128 30000 640000 2147000000000&#34;</span><span class="p">))</span><span class="c1">//more numbers pls
</span></span></span><span class="line"><span class="ln"> 3</span><span class="cl"><span class="c1"></span><span class="p">.</span><span class="nx">sub</span><span class="p">(</span><span class="nx">shape</span><span class="p">(</span><span class="nx">P</span><span class="p">(</span><span class="s2">&#34;2 3 8 32&#34;</span><span class="p">)).</span><span class="nx">repeat</span><span class="p">(</span><span class="mi">8</span><span class="p">).</span><span class="nx">modulateRotate</span><span class="p">(</span><span class="nx">osc</span><span class="p">(</span><span class="mi">8</span><span class="p">,.</span><span class="mi">1</span><span class="p">)))</span>
</span></span><span class="line"><span class="ln"> 4</span><span class="cl"><span class="c1">//hi
</span></span></span><span class="line"><span class="ln"> 5</span><span class="cl"><span class="c1"></span><span class="p">.</span><span class="nx">colorama</span><span class="p">(</span><span class="nx">P</span><span class="p">(</span><span class="s2">&#34;1.76 1.5 [8 3]&#34;</span><span class="p">))</span><span class="c1">//1.76 best value. nobody understands this. if you do,,lmk?
</span></span></span><span class="line"><span class="ln"> 6</span><span class="cl"><span class="c1"></span><span class="p">.</span><span class="nx">add</span><span class="p">(</span><span class="nx">voronoi</span><span class="p">(</span><span class="mi">30</span><span class="p">,</span><span class="mf">0.5</span><span class="p">).</span><span class="nx">color</span><span class="p">(</span><span class="mf">0.1</span><span class="p">,</span><span class="mf">0.2</span><span class="p">,</span><span class="mf">0.5</span><span class="p">))</span>
</span></span><span class="line"><span class="ln"> 7</span><span class="cl"><span class="p">.</span><span class="nx">scrollY</span><span class="p">(</span><span class="mf">0.1</span><span class="p">,</span><span class="mf">0.1</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 8</span><span class="cl"><span class="p">.</span><span class="nx">thresh</span><span class="p">(.</span><span class="mi">75</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 9</span><span class="cl"><span class="p">.</span><span class="nx">modulateScale</span><span class="p">(</span><span class="nx">osc</span><span class="p">(</span><span class="mf">0.1</span><span class="p">,</span><span class="mf">0.5</span><span class="p">))</span>
</span></span><span class="line"><span class="ln">10</span><span class="cl"><span class="p">.</span><span class="nx">blend</span><span class="p">(</span><span class="nx">src</span><span class="p">(</span><span class="nx">o0</span><span class="p">).</span><span class="nx">pixelate</span><span class="p">(</span><span class="nx">P</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span><span class="mi">16</span><span class="p">,</span><span class="mi">32</span><span class="p">,</span><span class="mi">64</span><span class="p">),</span><span class="mi">12</span><span class="p">),.</span><span class="mi">3</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">11</span><span class="cl"><span class="c1">//sorry in advance?
</span></span></span><span class="line"><span class="ln">12</span><span class="cl"><span class="c1"></span><span class="p">.</span><span class="nx">add</span><span class="p">(</span><span class="nx">shape</span><span class="p">(</span><span class="mi">3</span><span class="p">).</span><span class="nx">color</span><span class="p">(.</span><span class="mi">6</span><span class="p">,.</span><span class="mi">3</span><span class="p">,</span><span class="mi">0</span><span class="p">).</span><span class="nx">repeat</span><span class="p">(</span><span class="mi">16</span><span class="p">,</span><span class="mi">12</span><span class="p">).</span><span class="nx">modulateRotate</span><span class="p">(</span><span class="nx">o0</span><span class="p">).</span><span class="nx">scrollY</span><span class="p">(.</span><span class="mi">3</span><span class="p">,</span><span class="o">-</span><span class="p">.</span><span class="mi">2</span><span class="p">))</span>
</span></span><span class="line"><span class="ln">13</span><span class="cl"><span class="p">.</span><span class="nx">blend</span><span class="p">(</span><span class="nx">o0</span><span class="p">,.</span><span class="mi">8</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">14</span><span class="cl"><span class="p">.</span><span class="nx">out</span><span class="p">()</span>
</span></span><span class="line"><span class="ln">15</span><span class="cl"><span class="c1">//someone kept using P()
</span></span></span><span class="line"><span class="ln">16</span><span class="cl"><span class="c1">//IT TIES BACK TO STRUDEL THX LU
</span></span></span></code></pre></div><p>Doctoring it slightly to get it to run in hydra below (removing the <a href="https://codeberg.org/munshkr/flok/src/branch/main/README.md#p-function">P() stuff which is a flok function</a>)</p>
<p><a href="https://youtu.be/tEWgG6jbUeU?t=8560">(yt link with timestamp) I was taught how to use this and what it was mid set.</a></p>





<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-js" data-lang="js"><span class="line"><span class="ln"> 1</span><span class="cl"><span class="c1">//eggg live visual set 2025-11-05 at algorhythms (Zoeya on audio)
</span></span></span><span class="line"><span class="ln"> 2</span><span class="cl"><span class="c1"></span><span class="nx">noise</span><span class="p">([</span><span class="mi">100</span><span class="p">,</span> <span class="mi">3</span><span class="p">,</span> <span class="mi">8</span><span class="p">,</span> <span class="mi">32</span><span class="p">,</span> <span class="mi">128</span><span class="p">,</span> <span class="mi">30000</span><span class="p">,</span> <span class="mi">640000</span><span class="p">,</span> <span class="mi">2147000000000</span><span class="p">])</span><span class="c1">//more numbers pls
</span></span></span><span class="line"><span class="ln"> 3</span><span class="cl"><span class="c1"></span><span class="p">.</span><span class="nx">sub</span><span class="p">(</span><span class="nx">shape</span><span class="p">([</span><span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">,</span> <span class="mi">8</span><span class="p">,</span> <span class="mi">32</span><span class="p">]).</span><span class="nx">repeat</span><span class="p">(</span><span class="mi">8</span><span class="p">).</span><span class="nx">modulateRotate</span><span class="p">(</span><span class="nx">osc</span><span class="p">(</span><span class="mi">8</span><span class="p">,.</span><span class="mi">1</span><span class="p">)))</span>
</span></span><span class="line"><span class="ln"> 4</span><span class="cl"><span class="c1">//hi
</span></span></span><span class="line"><span class="ln"> 5</span><span class="cl"><span class="c1"></span><span class="p">.</span><span class="nx">colorama</span><span class="p">([</span><span class="mf">1.76</span><span class="p">,</span> <span class="mf">1.5</span><span class="p">,</span> <span class="mi">8</span><span class="p">,</span> <span class="mi">3</span><span class="p">])</span><span class="c1">//1.76 best value. nobody understands this. if you do,,lmk?
</span></span></span><span class="line"><span class="ln"> 6</span><span class="cl"><span class="c1"></span><span class="p">.</span><span class="nx">add</span><span class="p">(</span><span class="nx">voronoi</span><span class="p">(</span><span class="mi">30</span><span class="p">,</span><span class="mf">0.5</span><span class="p">).</span><span class="nx">color</span><span class="p">(</span><span class="mf">0.1</span><span class="p">,</span><span class="mf">0.2</span><span class="p">,</span><span class="mf">0.5</span><span class="p">))</span>
</span></span><span class="line"><span class="ln"> 7</span><span class="cl"><span class="p">.</span><span class="nx">scrollY</span><span class="p">(</span><span class="mf">0.1</span><span class="p">,</span><span class="mf">0.1</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 8</span><span class="cl"><span class="p">.</span><span class="nx">thresh</span><span class="p">(.</span><span class="mi">75</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 9</span><span class="cl"><span class="p">.</span><span class="nx">modulateScale</span><span class="p">(</span><span class="nx">osc</span><span class="p">(</span><span class="mf">0.1</span><span class="p">,</span><span class="mf">0.5</span><span class="p">))</span>
</span></span><span class="line"><span class="ln">10</span><span class="cl"> <span class="p">.</span><span class="nx">blend</span><span class="p">(</span><span class="nx">src</span><span class="p">(</span><span class="nx">o0</span><span class="p">).</span><span class="nx">pixelate</span><span class="p">([</span><span class="mi">1</span><span class="p">,</span><span class="mi">16</span><span class="p">,</span><span class="mi">32</span><span class="p">,</span><span class="mi">64</span><span class="p">],</span><span class="mi">12</span><span class="p">),.</span><span class="mi">3</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">11</span><span class="cl"><span class="c1">//sorry in advance?
</span></span></span><span class="line"><span class="ln">12</span><span class="cl"><span class="c1"></span><span class="p">.</span><span class="nx">add</span><span class="p">(</span><span class="nx">shape</span><span class="p">(</span><span class="mi">3</span><span class="p">).</span><span class="nx">color</span><span class="p">(.</span><span class="mi">6</span><span class="p">,.</span><span class="mi">3</span><span class="p">,</span><span class="mi">0</span><span class="p">).</span><span class="nx">repeat</span><span class="p">(</span><span class="mi">16</span><span class="p">,</span><span class="mi">12</span><span class="p">).</span><span class="nx">modulateRotate</span><span class="p">(</span><span class="nx">o0</span><span class="p">).</span><span class="nx">scrollY</span><span class="p">(.</span><span class="mi">3</span><span class="p">,</span><span class="o">-</span><span class="p">.</span><span class="mi">2</span><span class="p">))</span>
</span></span><span class="line"><span class="ln">13</span><span class="cl"><span class="p">.</span><span class="nx">blend</span><span class="p">(</span><span class="nx">o0</span><span class="p">,.</span><span class="mi">8</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">14</span><span class="cl"><span class="p">.</span><span class="nx">out</span><span class="p">()</span>
</span></span><span class="line"><span class="ln">15</span><span class="cl"><span class="c1">//someone kept using P()
</span></span></span><span class="line"><span class="ln">16</span><span class="cl"><span class="c1">//IT TIES BACK TO STRUDEL THX LU
</span></span></span></code></pre></div><script src="https://cdn.jsdelivr.net/npm/hydra-synth/dist/hydra-synth.js"></script>
<script>
var hydra = new Hydra({detectAudio: false})
//eggg live visual set 2025-11-05 at algorhythms (Zoeya on audio)
noise([100, 3, 8, 32, 128, 30000, 640000, 2147000000000])//more numbers pls
.sub(shape([2, 3, 8, 32]).repeat(8).modulateRotate(osc(8,.1)))
//hi
.colorama([1.76, 1.5, 8, 3])//1.76 best value. nobody understands this. if you do,,lmk?
.add(voronoi(30,0.5).color(0.1,0.2,0.5))
.scrollY(0.1,0.1)
.thresh(.75)
.modulateScale(osc(0.1,0.5))
 .blend(src(o0).pixelate([1,16,32,64],12),.3)
//sorry in advance?
.add(shape(3).color(.6,.3,0).repeat(16,12).modulateRotate(o0).scrollY(.3,-.2))
.blend(o0,.8)
.out()
//someone kept using P()
//IT TIES BACK TO STRUDEL THX LU
</script>
]]></content:encoded></item><item><title>strudel 2</title><link>https://eggg.uk/strudel/2/</link><pubDate>Tue, 04 Nov 2025 00:00:00 +0000</pubDate><guid>https://eggg.uk/strudel/2/</guid><description>&lt;h2 id="something-groovy-i-made-this-eve"&gt;Something groovy i made this eve&lt;/h2&gt;





&lt;pre tabindex="0"&gt;&lt;code class="language-strudel" data-lang="strudel"&gt;$: s(&amp;#34;- [- cp*2],bd*4&amp;#34;).bank(&amp;#34;TR909&amp;#34;).duck(.8).room(.3).roomsize(3)

$: s(&amp;#34;cabasa:4*8&amp;#34;).delay(.5).sometimes(n=&amp;gt;n.press()).ribbon(3,2)

$: s(&amp;#34;white(-11,16)&amp;#34;).clip(.05)

$: n(&amp;#34;- - [- &amp;lt;1 3 5 2&amp;gt;*4]&amp;#34;)
 .scale(&amp;#34;g:mixolydian&amp;#34;)
 .sound(&amp;#34;sawtooth&amp;#34;)
 .delay(.3)
 .coarse(16)
 .fm(&amp;#34;&amp;lt;1 2 2 .5&amp;gt;&amp;#34;).fmh(1.01)
 .transpose(&amp;#34;0,&amp;lt;-7 -12 [-12, -21] -21 &amp;gt;&amp;#34;)
 .pan(rand)
 .postgain(.7)

$: n(&amp;#34;&amp;lt;1 -3 3 0&amp;gt;(&amp;lt;-3 7 5 3&amp;gt;,8) -&amp;#34;)
 .scale(&amp;#34;f1:minor&amp;#34;)
 .sound(&amp;#34;pulse,sine&amp;#34;).attack(&amp;#34;&amp;lt;.1 0 .05 .1&amp;gt;&amp;#34;)
 .postgain(1.5).jux(rev)//thanks yaxu

$: s(&amp;#34;compurhythm1000_cp, bossdr550_misc:1&amp;#34;).speed(.25).striate(12).coarse(sine.range(10,200))&lt;/code&gt;&lt;/pre&gt;&lt;iframe
src="https://strudel.cc/#JDogcygiLSBbLSBjcCoyXSxiZCo0IikuYmFuaygiVFI5MDkiKS5kdWNrKC44KS5yb29tKC4zKS5yb29tc2l6ZSgzKQoKJDogcygiY2FiYXNhOjQqOCIpLmRlbGF5KC41KS5zb21ldGltZXMobj0%2Bbi5wcmVzcygpKS5yaWJib24oMywyKQoKJDogcygid2hpdGUoLTExLDE2KSIpLmNsaXAoLjA1KQoKJDogbigiLSAtICBbLSA8MSAzIDUgMj4qNF0iKQogIC5zY2FsZSgiZzptaXhvbHlkaWFuIikKICAuc291bmQoInNhd3Rvb3RoIikKICAuZGVsYXkoLjMpCiAgLmNvYXJzZSgxNikKICAuZm0oIjwxIDIgMiAuNT4iKS5mbWgoMS4wMSkKICAudHJhbnNwb3NlKCIwLDwtNyAtMTIgWy0xMiwgLTIxXSAtMjEgPiIpCiAgLnBhbihyYW5kKQogIC5wb3N0Z2FpbiguNykKCiQ6IG4oIjwxIC0zIDMgMD4oPC0zIDcgNSAzPiw4KSAtIikKICAuc2NhbGUoImYxOm1pbm9yIikKICAuc291bmQoInB1bHNlLHNpbmUiKS5hdHRhY2soIjwuMSAwIC4wNSAuMT4iKQogIC5wb3N0Z2FpbigxLjUpLmp1eChyZXYpLy90aGFua3MgeWF4dQoKJDogcygiY29tcHVyaHl0aG0xMDAwX2NwLCBib3NzZHI1NTBfbWlzYzoxIikuc3BlZWQoLjI1KS5zdHJpYXRlKDEyKS5jb2Fyc2Uoc2luZS5yYW5nZSgxMCwyMDApKQoK"
width="900"
height="900"
&gt;&lt;/iframe&gt;</description><content:encoded><![CDATA[<h2 id="something-groovy-i-made-this-eve">Something groovy i made this eve</h2>





<pre tabindex="0"><code class="language-strudel" data-lang="strudel">$: s(&#34;- [- cp*2],bd*4&#34;).bank(&#34;TR909&#34;).duck(.8).room(.3).roomsize(3)

$: s(&#34;cabasa:4*8&#34;).delay(.5).sometimes(n=&gt;n.press()).ribbon(3,2)

$: s(&#34;white(-11,16)&#34;).clip(.05)

$: n(&#34;- -  [- &lt;1 3 5 2&gt;*4]&#34;)
  .scale(&#34;g:mixolydian&#34;)
  .sound(&#34;sawtooth&#34;)
  .delay(.3)
  .coarse(16)
  .fm(&#34;&lt;1 2 2 .5&gt;&#34;).fmh(1.01)
  .transpose(&#34;0,&lt;-7 -12 [-12, -21] -21 &gt;&#34;)
  .pan(rand)
  .postgain(.7)

$: n(&#34;&lt;1 -3 3 0&gt;(&lt;-3 7 5 3&gt;,8) -&#34;)
  .scale(&#34;f1:minor&#34;)
  .sound(&#34;pulse,sine&#34;).attack(&#34;&lt;.1 0 .05 .1&gt;&#34;)
  .postgain(1.5).jux(rev)//thanks yaxu

$: s(&#34;compurhythm1000_cp, bossdr550_misc:1&#34;).speed(.25).striate(12).coarse(sine.range(10,200))</code></pre><iframe
src="https://strudel.cc/#JDogcygiLSBbLSBjcCoyXSxiZCo0IikuYmFuaygiVFI5MDkiKS5kdWNrKC44KS5yb29tKC4zKS5yb29tc2l6ZSgzKQoKJDogcygiY2FiYXNhOjQqOCIpLmRlbGF5KC41KS5zb21ldGltZXMobj0%2Bbi5wcmVzcygpKS5yaWJib24oMywyKQoKJDogcygid2hpdGUoLTExLDE2KSIpLmNsaXAoLjA1KQoKJDogbigiLSAtICBbLSA8MSAzIDUgMj4qNF0iKQogIC5zY2FsZSgiZzptaXhvbHlkaWFuIikKICAuc291bmQoInNhd3Rvb3RoIikKICAuZGVsYXkoLjMpCiAgLmNvYXJzZSgxNikKICAuZm0oIjwxIDIgMiAuNT4iKS5mbWgoMS4wMSkKICAudHJhbnNwb3NlKCIwLDwtNyAtMTIgWy0xMiwgLTIxXSAtMjEgPiIpCiAgLnBhbihyYW5kKQogIC5wb3N0Z2FpbiguNykKCiQ6IG4oIjwxIC0zIDMgMD4oPC0zIDcgNSAzPiw4KSAtIikKICAuc2NhbGUoImYxOm1pbm9yIikKICAuc291bmQoInB1bHNlLHNpbmUiKS5hdHRhY2soIjwuMSAwIC4wNSAuMT4iKQogIC5wb3N0Z2FpbigxLjUpLmp1eChyZXYpLy90aGFua3MgeWF4dQoKJDogcygiY29tcHVyaHl0aG0xMDAwX2NwLCBib3NzZHI1NTBfbWlzYzoxIikuc3BlZWQoLjI1KS5zdHJpYXRlKDEyKS5jb2Fyc2Uoc2luZS5yYW5nZSgxMCwyMDApKQoK"
width="900"
height="900"
></iframe>
]]></content:encoded></item><item><title>some browser advice</title><link>https://eggg.uk/blog/2025-10-06-browsers/</link><pubDate>Mon, 06 Oct 2025 00:00:00 +0000</pubDate><guid>https://eggg.uk/blog/2025-10-06-browsers/</guid><description>&lt;h1 id="brief-summary-of-advice"&gt;brief summary of advice:&lt;/h1&gt;
&lt;ol&gt;
&lt;li&gt;use firefox if you can &lt;a href="https://www.firefox.com/en-GB/"&gt;https://www.firefox.com/en-GB/&lt;/a&gt;
and use &lt;a href="https://support.mozilla.org/en-US/kb/firefox-reader-view-clutter-free-web-pages"&gt;reader view&lt;/a&gt; within firefox if a page is particularly noisy&lt;/li&gt;
&lt;li&gt;install ublock origin &lt;a href="https://ublockorigin.com/"&gt;https://ublockorigin.com/&lt;/a&gt;
the website above should detect your browser and send you to the appropriate place to install it from (typically the add-on store for your browser)
the default settings in the addin are typically fine for most people.&lt;/li&gt;
&lt;li&gt;use a privacy respecting default search engine over google/bing/etc: &lt;a href="https://duckduckgo.com/"&gt;https://duckduckgo.com/&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;h1 id="intro--reasoning"&gt;intro / reasoning&lt;/h1&gt;
&lt;p&gt;Writing this initially off the back of a scouts evening covering &amp;ldquo;digital citizen&amp;rdquo; in which the scouts aired their grievances about web popups, adverts and whatnot and I had some suggested actions.&lt;/p&gt;</description><content:encoded><![CDATA[<h1 id="brief-summary-of-advice">brief summary of advice:</h1>
<ol>
<li>use firefox if you can <a href="https://www.firefox.com/en-GB/">https://www.firefox.com/en-GB/</a>
and use <a href="https://support.mozilla.org/en-US/kb/firefox-reader-view-clutter-free-web-pages">reader view</a> within firefox if a page is particularly noisy</li>
<li>install ublock origin <a href="https://ublockorigin.com/">https://ublockorigin.com/</a>
the website above should detect your browser and send you to the appropriate place to install it from (typically the add-on store for your browser)
the default settings in the addin are typically fine for most people.</li>
<li>use a privacy respecting default search engine over google/bing/etc:  <a href="https://duckduckgo.com/">https://duckduckgo.com/</a></li>
</ol>
<h1 id="intro--reasoning">intro / reasoning</h1>
<p>Writing this initially off the back of a scouts evening covering &ldquo;digital citizen&rdquo; in which the scouts aired their grievances about web popups, adverts and whatnot and I had some suggested actions.</p>
<p>The idea here is that I&rsquo;m attempting to provide advice which is straight forward to follow with links to help avoid potential pitfalls.</p>
<p>This guidance is aimed at users on mobile devices as well as desktops or laptops.</p>
<p>The main point here is to improve your experience on the web</p>
<p>added side effects of the three actions here are that your browsing will be <em>slightly</em> less tracked than before, and big companies will have a marginally harder time building their profiles on you.</p>
<h1 id="detailed-recommendations">detailed recommendations:</h1>
<h2 id="1-web-browser-choice">1. web browser choice</h2>
<p>I anticipate a lot of people use the default browser which comes with their device.</p>
<p>on an iphone this will be safari</p>
<p>on most android phones this is usually chrome, but on a samsung device it&rsquo;s &ldquo;samsung internet&rdquo;</p>
<p>on windows this is probably edge</p>
<p>my general recommendation here is to switch to <strong>firefox</strong>.</p>
<p>firefox is a browser which isn&rsquo;t owned by one of the large tech companies who would like to collect LOTS OF information about your browser usage.</p>
<h3 id="where-to-install-from">where to install from:</h3>
<p>If you&rsquo;re using an iphone/ipad, the link is: <a href="https://apps.apple.com/gb/app/firefox-fast-private-browser/id989804926">https://apps.apple.com/gb/app/firefox-fast-private-browser/id989804926</a></p>
<p>on android: <a href="https://play.google.com/store/apps/details?id=org.mozilla.firefox&amp;hl=en-GB">https://play.google.com/store/apps/details?id=org.mozilla.firefox&amp;hl=en-GB</a></p>
<p>on any other device: <a href="https://www.firefox.com/en-GB/">https://www.firefox.com/en-GB/</a></p>
<h3 id="further-info">further info</h3>
<p>you don&rsquo;t need an account, it may offer you one when opened for the first time. This is optional. I do use it however, to keep tabs in sync between my devices</p>
<p><a href="https://support.mozilla.org/en-US/kb/manage-firefox-data-collection-privacy-settings">firefox does still collect data, but is more transparent about what it is, and more limited in what they collect. </a></p>
<p>even if you don&rsquo;t do this step, you can do the ublock portion on most modern browsers too&hellip; but the experience is significantly better outside of chrome/edge.</p>
<p>firefox is by no means perfect, but it&rsquo;s a far better option than the defaults on most mainstream devices</p>
<p>google (chrome) has a <a href="https://radar.cloudflare.com/reports/browser-market-share-2025-q1">huge monopoly</a> on browsers currently, and their cracking down on ad blockers within their ecosystem is a pretty serious overreach in my opinion.</p>
<h4 id="reader-view-in-firefox">reader view in firefox</h4>
<p>This feature is killer, if you ever get sick of going to a webpage to read something and seeing:</p>
<ul>
<li>a bunch of videos autoplaying</li>
<li>JOIN OUR MAILING LIST</li>
<li>cookie popups</li>
<li>etc</li>
</ul>
<p>reader view shows on some (but not all) sites and collapses the page into pure text and images, without all of the clutter, bloat, and distractions</p>
<p><a href="https://support.mozilla.org/en-US/kb/firefox-reader-view-clutter-free-web-pages">https://support.mozilla.org/en-US/kb/firefox-reader-view-clutter-free-web-pages</a></p>
<h2 id="2-ublock-origin">2. ublock origin</h2>
<p>if you use multiple browsers, you can likely get this for -all- of them.</p>
<p>I have it on chrome and firefox on my home pc, firefox on my phone</p>
<p>It is -less- good on chrome or edge or safari which is why I recommend firefox.</p>
<p>Apple and google (who own the aforementioned browsers) have cracked down on extensions like ublock because it is probably in their interests to serve you adverts.</p>
<h3 id="where-to-install-from-1">where to install from:</h3>
<p>install ublock origin <a href="https://ublockorigin.com/">https://ublockorigin.com/</a></p>
<p>I&rsquo;d recommend doing so on all browsers on all of your devices</p>
<p>the default settings are fine, no config or further steps needed. Enjoy ad free web browsing.</p>
<h3 id="limitations">limitations</h3>
<p>obviously this doesn&rsquo;t work on e.g. instagram which is a purely app based experience. That&rsquo;s by design. sorry.</p>
<p>and youtube (the website, rather than the app) does have its ads blocked by this at the moment, but there is an active battle going on between google and ublock, where google tries to degrade your experience to make you turn it off.</p>
<ul>
<li>I&rsquo;ve seen:
<ul>
<li>videos occasionally failing to play immediately</li>
<li>occasional skips or jumps forward</li>
</ul>
</li>
</ul>
<p>The experience is still significantly better than using it without.</p>
<h2 id="3-search-engine-use">3. search engine use</h2>
<p>setting your default search engine to a privacy respecting search engine is strongly recommended</p>
<p>I use duckduckgo: <a href="https://duckduckgo.com/">https://duckduckgo.com/</a></p>
]]></content:encoded></item><item><title>Google Nest camera ownership timeline and price increases</title><link>https://eggg.uk/blog/2025-10-03-google-nest-camera-ownership-timeline-and-price-increases/</link><pubDate>Fri, 03 Oct 2025 00:00:00 +0000</pubDate><guid>https://eggg.uk/blog/2025-10-03-google-nest-camera-ownership-timeline-and-price-increases/</guid><description>&lt;h2 id="why-now"&gt;why now?&lt;/h2&gt;
&lt;p&gt;Google wants to raise the price by 2-3x annually so I thought I&amp;rsquo;d take stock&lt;/p&gt;
&lt;h2 id="history"&gt;history:&lt;/h2&gt;
&lt;h3 id="2018"&gt;2018&lt;/h3&gt;
&lt;p&gt;I bought a Nest camera on amazon in September 2018 for £162&lt;/p&gt;
&lt;p&gt;My email history shows me at the time subscribing to &amp;ldquo;Nest aware&amp;rdquo; on November 1st (after a free trial) at &lt;strong&gt;£40/year&lt;/strong&gt; for 5-day (24/7) video history&lt;/p&gt;
&lt;h3 id="2019"&gt;2019&lt;/h3&gt;
&lt;p&gt;It renewed at &lt;strong&gt;£40/year&lt;/strong&gt; in 2019 with the same benefit&lt;/p&gt;
&lt;h3 id="2022"&gt;2022&lt;/h3&gt;
&lt;p&gt;I&amp;rsquo;m missing a couple of years of history, but in 2022, I can see that google had taken over collecting payments, and were charging me &lt;strong&gt;£100/year&lt;/strong&gt; for 60 days of events and 10 days of 24/7 history:&lt;/p&gt;</description><content:encoded><![CDATA[<h2 id="why-now">why now?</h2>
<p>Google wants to raise the price by 2-3x annually so I thought I&rsquo;d take stock</p>
<h2 id="history">history:</h2>
<h3 id="2018">2018</h3>
<p>I bought a Nest camera on amazon in September 2018 for £162</p>
<p>My email history shows me at the time subscribing to &ldquo;Nest aware&rdquo; on November 1st (after a free trial) at <strong>£40/year</strong> for 5-day (24/7) video history</p>
<h3 id="2019">2019</h3>
<p>It renewed at <strong>£40/year</strong> in 2019 with the same benefit</p>
<h3 id="2022">2022</h3>
<p>I&rsquo;m missing a couple of years of history, but in 2022, I can see that google had taken over collecting payments, and were charging me <strong>£100/year</strong> for 60 days of events and 10 days of 24/7 history:</p>
<h3 id="2023">2023</h3>
<p><strong>£100/year</strong> again in 2023.</p>
<p>The camera stopped working around here and I replaced it. 5 years is not -terrible- innings for something exposed to the elements.
Paid another £169 for basically the same thing but with a battery in it (which makes no diff as I&rsquo;ve got it wired in)</p>
<p>Email 2023-09-01:
We are putting the price up to <strong>£120/year</strong>:</p>
<h3 id="2024">2024</h3>
<p>Then nest aware became part of google one, which I was forced or encouraged to join in March 2024 by a broken payment system, in order to continue having a functioning camera</p>
<p>so i got back to paying about <strong>£80/year</strong> which revoked the 60 days of history and 10 days of 24/7
I don&rsquo;t recall what the 24/7 cost here, but it was evidently more than I was willing to pay.</p>
<h3 id="2025">2025</h3>
<p>My next payment is showing as an upcoming <strong>£80/year</strong> in march</p>
<p>but today (2025-10-03) I received an email telling me they were revoking the only thing i subbed for as at Oct 2026:</p>





<pre tabindex="0"><code> As a Premium Google One member, you are currently receiving Home Premium and Fitbit Premium as part of your plan. These benefits will no longer be offered with your Premium plan effective October 1st, 2026.

Here is what this means for you:

    As long as your existing Premium Google One subscription remains active, you can continue to enjoy Home Premium and Fitbit Premium as part of your plan until October 1st, 2026
    On October 1st, 2026 the benefit will be removed from your plan and any remaining Home Premium Advanced add-on credit (if applicable) will be refunded
    To help with the transition, we are offering a special 50% discount on our Google AI Pro plan for 1 year, an upgraded plan which includes Home Premium and Fitbit Premium, plus Google AI features</code></pre><h2 id="subscriptions-now">subscriptions now:</h2>
<p>So I went to inspect the damage - the nest/home/whatever bit is missing now from the benefits of this subscription altogether</p>
<p>The current standard home subscription (Google home premium standard) just gives you clips where it detects something, rather than the 24/7 history.</p>
<p>It has NEVER been particularly good at this, and hasn&rsquo;t really come along at all in the near-10-years I&rsquo;ve had the camera and an active subscription.
Given that that processing all occurs server side, friends, if you&rsquo;re selling a device with a subscription and the cloud based elements don&rsquo;t improve with time&hellip; where else could the benefits be for anyone who isn&rsquo;t a shareholder I wonder</p>
<p>What we&rsquo;re after is the advanced (Google home premium advanced) subscription, to see why something randomly appeared in frame when it doesn&rsquo;t pick things up.</p>
<p>I had an initial rummage for the cheapest subscription they offer with the advanced plan, and initially only found it available on none of these annual prices:
£190 £200 £480 £960 £1440
but rather, according to their desktop site, you have to subscribe to GOOGLE AI ULTRA 30TB for (after the bargain first three months half price): £2446/year</p>
<h2 id="cost-overview">Cost overview</h2>
<p>Over the 7 years i&rsquo;ve owned the device, I&rsquo;ve spent:</p>
<ul>
<li>£162 on a device in 2018</li>
<li>£169 on a replacement device in 2023</li>
<li>£40 (2018)</li>
<li>£40 (2019)</li>
<li>£40 (2020 assumed)</li>
<li>£100 (2021 assumed)</li>
<li>£100 (2022)</li>
<li>£120 (2023)</li>
<li>£80 (2024)</li>
<li>£80 (2025)</li>
</ul>
<p>totalling £600 on subscription and £331 on devices</p>
<h2 id="conclusion-for-the-moment">Conclusion for the moment:</h2>
<p><strong>I have found an option with the 2TB subscription, for £228/year for what is equivalent to my £80
To get the 24/7 stuff, tack on another £96/year for the advanced features.</strong></p>
<p><strong>This puts you at a min of £324/year for feature parity with what was originally £40/year in 2018.</strong></p>
<p><strong>I&rsquo;ve just cancelled altogether, and have now about 5 months on the clock to set up my own re-streaming or IP system but I do feel terrible for those who would be less willing to try and do so themselves. Doubling/Tripling the price of a subscription for a physical object while also degrading the subscription to bump people up tiers is a bit much</strong></p>
]]></content:encoded></item><item><title>hydra - live set @ algorhythms - eggg 2025-07-02</title><link>https://eggg.uk/hydra/3/</link><pubDate>Fri, 03 Oct 2025 00:00:00 +0000</pubDate><guid>https://eggg.uk/hydra/3/</guid><description>&lt;h2 id="the-outcome-of-a-live-visual-set---algorhythms---eggg"&gt;the outcome of a live visual set @ algorhythms - eggg&lt;/h2&gt;





&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-js" data-lang="js"&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 1&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;//eggg live visual set 2025-07-02 at algorhythms (everysongiown on audio)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 2&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;&lt;/span&gt;&lt;span class="nx"&gt;shape&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;8&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 3&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;scale&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mf"&gt;1.8&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nx"&gt;modulateScrollY&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;osc&lt;/span&gt;&lt;span class="p"&gt;(),&lt;/span&gt;&lt;span class="mf"&gt;0.1&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 4&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;repeat&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;8&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;8&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 5&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;// .color(1,voronoi(3,1),0)
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 6&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;voronoi&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;8&lt;/span&gt;&lt;span class="p"&gt;,.&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nx"&gt;colorama&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mf"&gt;8.7&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 7&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;posterize&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 8&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;modulateRotate&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;osc&lt;/span&gt;&lt;span class="p"&gt;())&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 9&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;blend&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;o0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;0.5&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;10&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;pixelate&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;128&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;96&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;11&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;blend&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;o1&lt;/span&gt;&lt;span class="p"&gt;,.&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;12&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;scrollY&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mf"&gt;0.1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;0.3&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;13&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;rotate&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mf"&gt;0.3&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;14&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;out&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;o0&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;15&lt;/span&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;16&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="nx"&gt;shape&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;12&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nx"&gt;modulateScale&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;noise&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mf"&gt;0.5&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;8&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;17&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;repeat&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;6&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;18&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;modulateRotate&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;osc&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;0.5&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;&lt;span class="mf"&gt;1.8&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;19&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;// .modulatePixelate(voronoi()*2,osc(1,3))
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;20&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;blend&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;o1&lt;/span&gt;&lt;span class="p"&gt;,.&lt;/span&gt;&lt;span class="mi"&gt;9&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;21&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;out&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;o1&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;script src="https://cdn.jsdelivr.net/npm/hydra-synth/dist/hydra-synth.js"&gt;&lt;/script&gt;
&lt;script&gt;
var hydra = new Hydra({detectAudio: false})
//eggg live visual set 2025-07-02 at algorhythms (everysongiown on audio)
shape(8)
.scale(1.8).modulateScrollY(osc(),0.1)
.repeat(8,8)
// .color(1,voronoi(3,1),0)
.add(voronoi(8,.1).colorama(8.7))
.posterize(1)
.modulateRotate(osc())
.blend(o0,0.5)
.pixelate(128,96)
.blend (o1,.5)
.scrollY(0.1,0.3)
.rotate(0.3)
.out(o0)

shape(12).modulateScale(noise(0.5,8))
.repeat(6,4)
.modulateRotate(osc(3,0.5),1.8)
// .modulatePixelate(voronoi()*2,osc(1,3))
.blend(o1,.9)
.out(o1)
&lt;/script&gt;</description><content:encoded><![CDATA[<h2 id="the-outcome-of-a-live-visual-set---algorhythms---eggg">the outcome of a live visual set  @ algorhythms - eggg</h2>





<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-js" data-lang="js"><span class="line"><span class="ln"> 1</span><span class="cl"><span class="c1">//eggg live visual set 2025-07-02 at algorhythms (everysongiown on audio)
</span></span></span><span class="line"><span class="ln"> 2</span><span class="cl"><span class="c1"></span><span class="nx">shape</span><span class="p">(</span><span class="mi">8</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 3</span><span class="cl"><span class="p">.</span><span class="nx">scale</span><span class="p">(</span><span class="mf">1.8</span><span class="p">).</span><span class="nx">modulateScrollY</span><span class="p">(</span><span class="nx">osc</span><span class="p">(),</span><span class="mf">0.1</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 4</span><span class="cl"><span class="p">.</span><span class="nx">repeat</span><span class="p">(</span><span class="mi">8</span><span class="p">,</span><span class="mi">8</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 5</span><span class="cl"><span class="c1">// .color(1,voronoi(3,1),0)
</span></span></span><span class="line"><span class="ln"> 6</span><span class="cl"><span class="c1"></span><span class="p">.</span><span class="nx">add</span><span class="p">(</span><span class="nx">voronoi</span><span class="p">(</span><span class="mi">8</span><span class="p">,.</span><span class="mi">1</span><span class="p">).</span><span class="nx">colorama</span><span class="p">(</span><span class="mf">8.7</span><span class="p">))</span>
</span></span><span class="line"><span class="ln"> 7</span><span class="cl"><span class="p">.</span><span class="nx">posterize</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 8</span><span class="cl"><span class="p">.</span><span class="nx">modulateRotate</span><span class="p">(</span><span class="nx">osc</span><span class="p">())</span>
</span></span><span class="line"><span class="ln"> 9</span><span class="cl"><span class="p">.</span><span class="nx">blend</span><span class="p">(</span><span class="nx">o0</span><span class="p">,</span><span class="mf">0.5</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">10</span><span class="cl"><span class="p">.</span><span class="nx">pixelate</span><span class="p">(</span><span class="mi">128</span><span class="p">,</span><span class="mi">96</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">11</span><span class="cl"><span class="p">.</span><span class="nx">blend</span> <span class="p">(</span><span class="nx">o1</span><span class="p">,.</span><span class="mi">5</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">12</span><span class="cl"><span class="p">.</span><span class="nx">scrollY</span><span class="p">(</span><span class="mf">0.1</span><span class="p">,</span><span class="mf">0.3</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">13</span><span class="cl"><span class="p">.</span><span class="nx">rotate</span><span class="p">(</span><span class="mf">0.3</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">14</span><span class="cl"><span class="p">.</span><span class="nx">out</span><span class="p">(</span><span class="nx">o0</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">15</span><span class="cl">
</span></span><span class="line"><span class="ln">16</span><span class="cl"><span class="nx">shape</span><span class="p">(</span><span class="mi">12</span><span class="p">).</span><span class="nx">modulateScale</span><span class="p">(</span><span class="nx">noise</span><span class="p">(</span><span class="mf">0.5</span><span class="p">,</span><span class="mi">8</span><span class="p">))</span>
</span></span><span class="line"><span class="ln">17</span><span class="cl"><span class="p">.</span><span class="nx">repeat</span><span class="p">(</span><span class="mi">6</span><span class="p">,</span><span class="mi">4</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">18</span><span class="cl"><span class="p">.</span><span class="nx">modulateRotate</span><span class="p">(</span><span class="nx">osc</span><span class="p">(</span><span class="mi">3</span><span class="p">,</span><span class="mf">0.5</span><span class="p">),</span><span class="mf">1.8</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">19</span><span class="cl"><span class="c1">// .modulatePixelate(voronoi()*2,osc(1,3))
</span></span></span><span class="line"><span class="ln">20</span><span class="cl"><span class="c1"></span><span class="p">.</span><span class="nx">blend</span><span class="p">(</span><span class="nx">o1</span><span class="p">,.</span><span class="mi">9</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">21</span><span class="cl"><span class="p">.</span><span class="nx">out</span><span class="p">(</span><span class="nx">o1</span><span class="p">)</span></span></span></code></pre></div><script src="https://cdn.jsdelivr.net/npm/hydra-synth/dist/hydra-synth.js"></script>
<script>
var hydra = new Hydra({detectAudio: false})
//eggg live visual set 2025-07-02 at algorhythms (everysongiown on audio)
shape(8)
.scale(1.8).modulateScrollY(osc(),0.1)
.repeat(8,8)
// .color(1,voronoi(3,1),0)
.add(voronoi(8,.1).colorama(8.7))
.posterize(1)
.modulateRotate(osc())
.blend(o0,0.5)
.pixelate(128,96)
.blend (o1,.5)
.scrollY(0.1,0.3)
.rotate(0.3)
.out(o0)

shape(12).modulateScale(noise(0.5,8))
.repeat(6,4)
.modulateRotate(osc(3,0.5),1.8)
// .modulatePixelate(voronoi()*2,osc(1,3))
.blend(o1,.9)
.out(o1)
</script>
]]></content:encoded></item><item><title>strudel cheatsheet</title><link>https://eggg.uk/strudel/cheatsheet/</link><pubDate>Mon, 01 Sep 2025 00:00:00 +0000</pubDate><guid>https://eggg.uk/strudel/cheatsheet/</guid><description>&lt;h3 id="note"&gt;Note&lt;/h3&gt;
&lt;p&gt;OK I started with a grand plan to make a cheat sheet but quickly found myself learning a different way. Given this now seems to be quite high in search results i&amp;rsquo;m gonna leave it here.&lt;/p&gt;
&lt;p&gt;For an excellent list of strudel resources, check this nicely curated list by terryds on gh: &lt;a href="https://github.com/terryds/awesome-strudel"&gt;link&lt;/a&gt;&lt;/p&gt;
&lt;h3 id="my-path-towards-learning-strudel"&gt;my path towards learning strudel&lt;/h3&gt;
&lt;p&gt;Honestly the thing which has helped me the most in learning these tools is spending time participating on &lt;a href="https://nudel.cc"&gt;nudel.cc&lt;/a&gt;&lt;/p&gt;</description><content:encoded><![CDATA[<h3 id="note">Note</h3>
<p>OK I started with a grand plan to make a cheat sheet but quickly found myself learning a different way. Given this now seems to be quite high in search results i&rsquo;m gonna leave it here.</p>
<p>For an excellent list of strudel resources, check this nicely curated list by terryds on gh: <a href="https://github.com/terryds/awesome-strudel">link</a></p>
<h3 id="my-path-towards-learning-strudel">my path towards learning strudel</h3>
<p>Honestly the thing which has helped me the most in learning these tools is spending time participating on <a href="https://nudel.cc">nudel.cc</a></p>
<p>If you&rsquo;re not familiar, you should first visit <a href="https://www.pastagang.cc/">pastagang.cc</a> which should tell you a bit about all this</p>
<h3 id="instruments-and-synths">instruments and synths</h3>
<p>Listed under sounds in the right side panel on strudel.cc</p>
<p>very useful resource for discovering new sounds, synths, etc</p>
<p>categorised under samples, drum-machines, synths, wavetables, user, import-sounds</p>
<h3 id="a-few-effects-with-brief-explainers">a few effects with brief explainers</h3>





<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-js" data-lang="js"><span class="line"><span class="ln"> 1</span><span class="cl"><span class="c1">//todo: more examples
</span></span></span><span class="line"><span class="ln"> 2</span><span class="cl"><span class="c1"></span>
</span></span><span class="line"><span class="ln"> 3</span><span class="cl"><span class="c1">//drums:
</span></span></span><span class="line"><span class="ln"> 4</span><span class="cl"><span class="c1"></span><span class="nx">$</span><span class="o">:</span> <span class="nx">s</span><span class="p">(</span><span class="s2">&#34;bd!4,cp?*8&#34;</span><span class="p">)</span> <span class="c1">//plays a bass drum sound and sometimes (?) plays a clap sound (on eighth notes)
</span></span></span><span class="line"><span class="ln"> 5</span><span class="cl"><span class="c1"></span>  <span class="p">.</span><span class="nx">bank</span><span class="p">(</span><span class="s2">&#34;RolandTR808&#34;</span><span class="p">)</span> <span class="c1">//from the 808 bank of drums
</span></span></span><span class="line"><span class="ln"> 6</span><span class="cl"><span class="c1"></span>  <span class="p">.</span><span class="nx">gain</span><span class="p">(.</span><span class="mi">75</span><span class="p">)</span> <span class="c1">//lowers the volume (default is 1)
</span></span></span><span class="line"><span class="ln"> 7</span><span class="cl"><span class="c1"></span>  <span class="p">.</span><span class="nx">speed</span><span class="p">(</span><span class="o">-</span><span class="mi">8</span><span class="p">)</span> <span class="c1">//plays the sample at 8x speed in reverse
</span></span></span><span class="line"><span class="ln"> 8</span><span class="cl"><span class="c1"></span>
</span></span><span class="line"><span class="ln"> 9</span><span class="cl"><span class="c1">//plays some notes. items between angled brackets 
</span></span></span><span class="line"><span class="ln">10</span><span class="cl"><span class="c1">//Commas are kind of an &#34;and&#34;, thus there are two patterns playing at once
</span></span></span><span class="line"><span class="ln">11</span><span class="cl"><span class="c1"></span><span class="nx">$</span><span class="o">:</span> <span class="nx">n</span><span class="p">(</span><span class="s2">&#34;&lt;0 - 1!2&gt;, &lt;3 -  4!2&gt;&#34;</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">12</span><span class="cl">  <span class="p">.</span><span class="nx">s</span><span class="p">(</span><span class="s2">&#34;sawtooth&#34;</span><span class="p">)</span> <span class="c1">//the sound for this note is a sawtooth
</span></span></span><span class="line"><span class="ln">13</span><span class="cl"><span class="c1"></span>  <span class="p">.</span><span class="nx">scale</span><span class="p">(</span><span class="s2">&#34;G2:minor&#34;</span><span class="p">)</span> <span class="c1">//the scale applied to the notes
</span></span></span><span class="line"><span class="ln">14</span><span class="cl"><span class="c1"></span>  <span class="p">.</span><span class="nx">fast</span><span class="p">(</span><span class="mi">2</span><span class="p">)</span> <span class="c1">//the pattern plays through twice as quickly in relation to everything else
</span></span></span><span class="line"><span class="ln">15</span><span class="cl"><span class="c1"></span>  <span class="p">.</span><span class="nx">speed</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span> <span class="c1">//default speed is 1
</span></span></span><span class="line"><span class="ln">16</span><span class="cl"><span class="c1"></span>  <span class="p">.</span><span class="nx">gain</span><span class="p">(.</span><span class="mi">6</span><span class="p">)</span> 
</span></span><span class="line"><span class="ln">17</span><span class="cl">  <span class="p">.</span><span class="nx">transpose</span><span class="p">(</span><span class="s2">&#34;&lt;0 -7&gt;&#34;</span><span class="p">.</span><span class="nx">slow</span><span class="p">(</span><span class="mi">3</span><span class="p">))</span> <span class="c1">//transposes the notes in the scale down by 0 or 7 semitones
</span></span></span><span class="line"><span class="ln">18</span><span class="cl"><span class="c1"></span>  <span class="p">.</span><span class="nx">fm</span><span class="p">(</span><span class="s2">&#34;&lt;1 2 8&gt;&#34;</span><span class="p">)</span> <span class="c1">//rotates through a few values for frequency modulation, 1 is the default
</span></span></span><span class="line"><span class="ln">19</span><span class="cl"><span class="c1"></span>  <span class="p">.</span><span class="nx">ply</span><span class="p">(</span><span class="s2">&#34;4 8&#34;</span><span class="p">)</span> <span class="c1">//fires each note 4 or 8 times instead of the default 1 
</span></span></span><span class="line"><span class="ln">20</span><span class="cl"><span class="c1"></span>
</span></span><span class="line"><span class="ln">21</span><span class="cl"><span class="c1">//crow(s):
</span></span></span><span class="line"><span class="ln">22</span><span class="cl"><span class="c1"></span><span class="nx">$</span><span class="o">:</span> <span class="nx">s</span><span class="p">(</span><span class="s2">&#34;crow -&#34;</span><span class="p">)</span> <span class="c1">//plays a crow sound intermittently
</span></span></span><span class="line"><span class="ln">23</span><span class="cl"><span class="c1"></span>  <span class="p">.</span><span class="nx">speed</span><span class="p">(</span><span class="o">-</span><span class="mi">1</span><span class="p">)</span> <span class="c1">//backwards
</span></span></span></code></pre></div><iframe
src="https://strudel.cc/#Ly9kcnVtczoKJDogcygiYmQhNCxjcD8qOCIpIC8vcGxheXMgYSBiYXNzIGRydW0gc291bmQgYW5kIHNvbWV0aW1lcyAoPykgcGxheXMgYSBjbGFwIHNvdW5kIChvbiBlaWdodGggbm90ZXMpCiAgLmJhbmsoIlJvbGFuZFRSODA4IikgLy9mcm9tIHRoZSA4MDggYmFuayBvZiBkcnVtcwogIC5nYWluKC43NSkgLy9sb3dlcnMgdGhlIHZvbHVtZSAoZGVmYXVsdCBpcyAxKQogIC5zcGVlZCgtOCkgLy9wbGF5cyB0aGUgc2FtcGxlIGF0IDh4IHNwZWVkIGluIHJldmVyc2UKCi8vcGxheXMgc29tZSBub3Rlcy4gaXRlbXMgYmV0d2VlbiBhbmdsZWQgYnJhY2tldHMgCi8vQ29tbWFzIGFyZSBraW5kIG9mIGFuICJhbmQiLCB0aHVzIHRoZXJlIGFyZSB0d28gcGF0dGVybnMgcGxheWluZyBhdCBvbmNlCiQ6IG4oIjwwIC0gMSEyPiwgPDMgLSAgNCEyPiIpCiAgLnMoInNhd3Rvb3RoIikgLy90aGUgc291bmQgZm9yIHRoaXMgbm90ZSBpcyBhIHNhd3Rvb3RoCiAgLnNjYWxlKCJHMjptaW5vciIpIC8vdGhlIHNjYWxlIGFwcGxpZWQgdG8gdGhlIG5vdGVzCiAgLmZhc3QoMikgLy90aGUgcGF0dGVybiBwbGF5cyB0aHJvdWdoIHR3aWNlIGFzIHF1aWNrbHkgaW4gcmVsYXRpb24gdG8gZXZlcnl0aGluZyBlbHNlCiAgLnNwZWVkKDEpIC8vZGVmYXVsdCBzcGVlZCBpcyAxCiAgLmdhaW4oLjYpIAogIC50cmFuc3Bvc2UoIjwwIC03PiIuc2xvdygzKSkgLy90cmFuc3Bvc2VzIHRoZSBub3RlcyBpbiB0aGUgc2NhbGUgZG93biBieSAwIG9yIDcgc2VtaXRvbmVzCiAgLmZtKCI8MSAyIDg%2BIikgLy9yb3RhdGVzIHRocm91Z2ggYSBmZXcgdmFsdWVzIGZvciBmcmVxdWVuY3kgbW9kdWxhdGlvbiwgMSBpcyB0aGUgZGVmYXVsdAogIC5wbHkoIjQgOCIpIC8vZmlyZXMgZWFjaCBub3RlIDQgb3IgOCB0aW1lcyBpbnN0ZWFkIG9mIHRoZSBkZWZhdWx0IDEgCgovL2Nyb3cocyk6CiQ6IHMoImNyb3cgLSIpIC8vcGxheXMgYSBjcm93IHNvdW5kIGludGVybWl0dGVudGx5CiAgLnNwZWVkKC0xKSAvL2JhY2t3YXJkcw%3D%3D"
width="900"
height="900"
></iframe>





<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-js" data-lang="js"><span class="line"><span class="ln"> 1</span><span class="cl"><span class="c1">//young buck - get buck beat/tuba
</span></span></span><span class="line"><span class="ln"> 2</span><span class="cl"><span class="c1"></span><span class="nx">setcpm</span><span class="p">(</span><span class="mi">80</span><span class="o">/</span><span class="mi">4</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 3</span><span class="cl">
</span></span><span class="line"><span class="ln"> 4</span><span class="cl"><span class="nx">$</span><span class="o">:</span> <span class="nx">s</span><span class="p">(</span><span class="s2">&#34;bd - - bd cp - bd - - - bd - cp bd - -&#34;</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 5</span><span class="cl"><span class="p">.</span><span class="nx">bank</span><span class="p">(</span><span class="s2">&#34;RolandTR909&#34;</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 6</span><span class="cl">
</span></span><span class="line"><span class="ln"> 7</span><span class="cl"><span class="p">.</span><span class="nx">early</span><span class="p">(.</span><span class="mi">02</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 8</span><span class="cl"><span class="p">.</span><span class="nx">gain</span><span class="p">(.</span><span class="mi">5</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 9</span><span class="cl"><span class="p">.</span><span class="nx">room</span><span class="p">(.</span><span class="mi">25</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">10</span><span class="cl">
</span></span><span class="line"><span class="ln">11</span><span class="cl"><span class="nx">$</span><span class="o">:</span> <span class="nx">note</span><span class="p">(</span><span class="s2">&#34;b1 - - b1 - - c2 - b1 - d2 - d2 c#2 c2 - &#34;</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">12</span><span class="cl"><span class="p">.</span><span class="nx">s</span><span class="p">(</span><span class="s2">&#34;gm_tuba&#34;</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">13</span><span class="cl"><span class="p">.</span><span class="nx">gain</span><span class="p">(</span><span class="mf">1.25</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">14</span><span class="cl"><span class="p">.</span><span class="nx">crush</span><span class="p">(</span><span class="mf">4.5</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">15</span><span class="cl"><span class="p">.</span><span class="nx">delay</span><span class="p">(.</span><span class="mi">15</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">16</span><span class="cl"><span class="p">.</span><span class="nx">sometimesBy</span><span class="p">(.</span><span class="mi">1</span><span class="p">,</span><span class="nx">n</span><span class="p">=&gt;</span><span class="nx">n</span><span class="p">.</span><span class="nx">jux</span><span class="p">(</span><span class="nx">rev</span><span class="p">))</span></span></span></code></pre></div><h3 id="nudel-has-features-beyond-the-native-tools">Nudel has features beyond the native tools</h3>
<p>Such as Spagda and Hubda.</p>
<ul>
<li>if you&rsquo;re exporting what you found into strudel you may need to import additional js to use some of the code you exfiltrate</li>
<li>the latest version of this lives <a href="https://codeberg.org/pastagang/nudel/src/commit/e838bdc30bbf793bc0e462ac51bd5bed6e44f7fa/public/assets/std.js#">here</a> on codeberg for the raw js behind it
<ul>
<li>or <a href="https://codeberg.org/pastagang/nudel/src/branch/main/docs">here</a> from a docs perspective</li>
</ul>
</li>
</ul>
<h3 id="changelog">changelog</h3>
<p>[2025-03-26] began to write up instument/effect detail</p>
<p>[2025-04-18] updates as i prep for posting</p>
<p>[2025-10-03] Lil bit more stuff included, if you find yourself here, sorry it&rsquo;s not more fleshed out :-)</p>
<p>[2025-12-29] found out yesterday that someone found this and was put onto nudel by it so figured i&rsquo;d nudge it more in that direction. yes it&rsquo;s not really a cheatsheet</p>
<h3 id="to-do-list">to do list</h3>
<ul>
<li>add to some of the nudel docs on codeberg rather than here</li>
<li>mybe explain the things i struggled with such as getting the syntax right for feeding a synth with a scale or a chord</li>
</ul>
]]></content:encoded></item><item><title>what is a "jon game"?</title><link>https://eggg.uk/blog/2025-07-05-jongames/</link><pubDate>Sat, 05 Jul 2025 00:00:00 +0000</pubDate><guid>https://eggg.uk/blog/2025-07-05-jongames/</guid><description>&lt;h2 id="what-constitutes-a-jon-game"&gt;what constitutes a jon game?&lt;/h2&gt;
&lt;p&gt;Usually something non traditional which defies your expectations and is likely silly in some way. It may not quite have the broad appeal that most more well known games do. Often single player.&lt;/p&gt;
&lt;h3 id="common-themes"&gt;common themes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;flow state inducing&lt;/li&gt;
&lt;li&gt;speed run / time attack encouraged&lt;/li&gt;
&lt;li&gt;rhythm action&lt;/li&gt;
&lt;li&gt;mischief&lt;/li&gt;
&lt;li&gt;Incremental&lt;/li&gt;
&lt;li&gt;Bullet hell&lt;/li&gt;
&lt;li&gt;Controls which &lt;em&gt;feel&lt;/em&gt; good / impactful&lt;/li&gt;
&lt;li&gt;peculiar
&lt;ul&gt;
&lt;li&gt;gameplay&lt;/li&gt;
&lt;li&gt;themes&lt;/li&gt;
&lt;li&gt;art style&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;smaller budget&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="jon-games"&gt;jon games&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Trombone champ
&lt;ul&gt;
&lt;li&gt;because it is unadulterated silliness all the way through&lt;/li&gt;
&lt;li&gt;also rhythm games are great&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Return of the obra dinn
&lt;ul&gt;
&lt;li&gt;Lucas pope just has a great eye and puts in so much work and polish into his creations&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Mars after midnight
&lt;ul&gt;
&lt;li&gt;ditto&lt;/li&gt;
&lt;li&gt;this was such a charming game&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Golf with your friends
&lt;ul&gt;
&lt;li&gt;i have some awful friends who really love to punish you when you&amp;rsquo;re doing well&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Arctic eggs
&lt;ul&gt;
&lt;li&gt;was bought this by a friend because&amp;hellip; eggs&amp;hellip; did not expect it to be anywhere near as charming or compelling&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;untitled goose game
&lt;ul&gt;
&lt;li&gt;top tier mischief&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Neon white
&lt;ul&gt;
&lt;li&gt;proper flowstate game which nudges you into a speedrunning mindstate&lt;/li&gt;
&lt;li&gt;super smooth gameplay, which allows for creative routes&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Donut county
&lt;ul&gt;
&lt;li&gt;mischief, just pure mischief&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;The gnorp apologue
&lt;ul&gt;
&lt;li&gt;incremental games have always scratched a hell of an itch for me, but none of the others have cutie gnorps&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Jazzpunk
&lt;ul&gt;
&lt;li&gt;of everything i&amp;rsquo;ve played in the past few years, I think this one made me laugh the most often&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Teardown
&lt;ul&gt;
&lt;li&gt;mischief sim&lt;/li&gt;
&lt;li&gt;with cool voxel destruction&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Thumper
&lt;ul&gt;
&lt;li&gt;rhythm / flowstate&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;I wanna be the guy
&lt;ul&gt;
&lt;li&gt;been a long time since i played this now but i struggled at this for years and years. classic. Don&amp;rsquo;t think i actually finished 100% but i recall beating the majority of bosses&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Nidhogg II
&lt;ul&gt;
&lt;li&gt;only played this for a short time, the combat is brutal and fast&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;I am your beast
&lt;ul&gt;
&lt;li&gt;another flowstate / speedrun encouraging game&lt;/li&gt;
&lt;li&gt;really rewards learning the weapons and maps and pushing for quicker completions&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Cryptmaster
&lt;ul&gt;
&lt;li&gt;very silly concept, executed really well.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Firewatch
&lt;ul&gt;
&lt;li&gt;very uncomfortable setting without being jumpscareish&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Speedrunners
&lt;ul&gt;
&lt;li&gt;there was a period of time when I played this for hours a night with a great group. I miss those nights&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Battlebit remastered
&lt;ul&gt;
&lt;li&gt;mandatory open mic as you die, and a less toxic community than similar large scale FPS games = players acting out their deaths over hot mic&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Sayonara wild hearts
&lt;ul&gt;
&lt;li&gt;gorgeous art style and soundtrack&lt;/li&gt;
&lt;li&gt;smooth and unpunishing gameplay&lt;/li&gt;
&lt;li&gt;rhythm&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Lethal company
&lt;ul&gt;
&lt;li&gt;not much to say, many good jumpscares and holes to fall in among friends&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Thank goodness you&amp;rsquo;re here
&lt;ul&gt;
&lt;li&gt;slap&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Gun frog
&lt;ul&gt;
&lt;li&gt;name is a spoiler&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Tuna hakes underwater
&lt;ul&gt;
&lt;li&gt;psx era gfx and music style thps gameplay style but you&amp;rsquo;re a fish doing flips&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;various playdate titles in season 2
&lt;ul&gt;
&lt;li&gt;chance&amp;rsquo;s lucky escape is fantastic&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Sektori
&lt;ul&gt;
&lt;li&gt;hard techno x bullet hell&lt;/li&gt;
&lt;li&gt;excellent controls&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="upcoming"&gt;upcoming&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Big walk&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="some-historic-games-which-contributed-to-my-taste"&gt;some historic games which contributed to my taste&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://en.wikipedia.org/wiki/Liero"&gt;Liero&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;local multiplayer, one player uses the left half of the kb one uses the right&lt;/li&gt;
&lt;li&gt;enormous multitude of pc hardware punishing weapon effects&lt;/li&gt;
&lt;li&gt;basically realtime worms (though that undersells it)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;jazz jackrabbit
&lt;ul&gt;
&lt;li&gt;one of the &lt;a href="https://youtu.be/usQzoyODH30?t=1038"&gt;greatest soundtracks of all time (yt link)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;only had the demo/shareware version of number 1 as a kid&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;elite beat agents
&lt;ul&gt;
&lt;li&gt;probably my most played ds game, definitely the rhythm action game which got me hooked&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="other-suggestions"&gt;other suggestions&lt;/h2&gt;
&lt;p&gt;&lt;em&gt;I would love to hear of other stuff which should be on my radar, mayhaps @ me with reccs?&lt;/em&gt;&lt;/p&gt;</description><content:encoded><![CDATA[<h2 id="what-constitutes-a-jon-game">what constitutes a jon game?</h2>
<p>Usually something non traditional which defies your expectations and is likely silly in some way. It may not quite have the broad appeal that most more well known games do. Often single player.</p>
<h3 id="common-themes">common themes</h3>
<ul>
<li>flow state inducing</li>
<li>speed run / time attack encouraged</li>
<li>rhythm action</li>
<li>mischief</li>
<li>Incremental</li>
<li>Bullet hell</li>
<li>Controls which <em>feel</em> good / impactful</li>
<li>peculiar
<ul>
<li>gameplay</li>
<li>themes</li>
<li>art style</li>
</ul>
</li>
<li>smaller budget</li>
</ul>
<h2 id="jon-games">jon games</h2>
<ul>
<li>Trombone champ
<ul>
<li>because it is unadulterated silliness all the way through</li>
<li>also rhythm games are great</li>
</ul>
</li>
<li>Return of the obra dinn
<ul>
<li>Lucas pope just has a great eye and puts in so much work and polish into his creations</li>
</ul>
</li>
<li>Mars after midnight
<ul>
<li>ditto</li>
<li>this was such a charming game</li>
</ul>
</li>
<li>Golf with your friends
<ul>
<li>i have some awful friends who really love to punish you when you&rsquo;re doing well</li>
</ul>
</li>
<li>Arctic eggs
<ul>
<li>was bought this by a friend because&hellip; eggs&hellip; did not expect it to be anywhere near as charming or compelling</li>
</ul>
</li>
<li>untitled goose game
<ul>
<li>top tier mischief</li>
</ul>
</li>
<li>Neon white
<ul>
<li>proper flowstate game which nudges you into a speedrunning mindstate</li>
<li>super smooth gameplay, which allows for creative routes</li>
</ul>
</li>
<li>Donut county
<ul>
<li>mischief, just pure mischief</li>
</ul>
</li>
<li>The gnorp apologue
<ul>
<li>incremental games have always scratched a hell of an itch for me, but none of the others have cutie gnorps</li>
</ul>
</li>
<li>Jazzpunk
<ul>
<li>of everything i&rsquo;ve played in the past few years, I think this one made me laugh the most often</li>
</ul>
</li>
<li>Teardown
<ul>
<li>mischief sim</li>
<li>with cool voxel destruction</li>
</ul>
</li>
<li>Thumper
<ul>
<li>rhythm / flowstate</li>
</ul>
</li>
<li>I wanna be the guy
<ul>
<li>been a long time since i played this now but i struggled at this for years and years. classic. Don&rsquo;t think i actually finished 100% but i recall beating the majority of bosses</li>
</ul>
</li>
<li>Nidhogg II
<ul>
<li>only played this for a short time, the combat is brutal and fast</li>
</ul>
</li>
<li>I am your beast
<ul>
<li>another flowstate / speedrun encouraging game</li>
<li>really rewards learning the weapons and maps and pushing for quicker completions</li>
</ul>
</li>
<li>Cryptmaster
<ul>
<li>very silly concept, executed really well.</li>
</ul>
</li>
<li>Firewatch
<ul>
<li>very uncomfortable setting without being jumpscareish</li>
</ul>
</li>
<li>Speedrunners
<ul>
<li>there was a period of time when I played this for hours a night with a great group. I miss those nights</li>
</ul>
</li>
<li>Battlebit remastered
<ul>
<li>mandatory open mic as you die, and a less toxic community than similar large scale FPS games = players acting out their deaths over hot mic</li>
</ul>
</li>
<li>Sayonara wild hearts
<ul>
<li>gorgeous art style and soundtrack</li>
<li>smooth and unpunishing gameplay</li>
<li>rhythm</li>
</ul>
</li>
<li>Lethal company
<ul>
<li>not much to say, many good jumpscares and holes to fall in among friends</li>
</ul>
</li>
<li>Thank goodness you&rsquo;re here
<ul>
<li>slap</li>
</ul>
</li>
<li>Gun frog
<ul>
<li>name is a spoiler</li>
</ul>
</li>
<li>Tuna hakes underwater
<ul>
<li>psx era gfx and music style thps gameplay style but you&rsquo;re a fish doing flips</li>
</ul>
</li>
<li>various playdate titles in season 2
<ul>
<li>chance&rsquo;s lucky escape is fantastic</li>
</ul>
</li>
<li>Sektori
<ul>
<li>hard techno x bullet hell</li>
<li>excellent controls</li>
</ul>
</li>
</ul>
<h2 id="upcoming">upcoming</h2>
<ul>
<li>Big walk</li>
</ul>
<h2 id="some-historic-games-which-contributed-to-my-taste">some historic games which contributed to my taste</h2>
<ul>
<li><a href="https://en.wikipedia.org/wiki/Liero">Liero</a>
<ul>
<li>local multiplayer, one player uses the left half of the kb one uses the right</li>
<li>enormous multitude of pc hardware punishing weapon effects</li>
<li>basically realtime worms (though that undersells it)</li>
</ul>
</li>
<li>jazz jackrabbit
<ul>
<li>one of the <a href="https://youtu.be/usQzoyODH30?t=1038">greatest soundtracks of all time (yt link)</a></li>
<li>only had the demo/shareware version of number 1 as a kid</li>
</ul>
</li>
<li>elite beat agents
<ul>
<li>probably my most played ds game, definitely the rhythm action game which got me hooked</li>
</ul>
</li>
</ul>
<h2 id="other-suggestions">other suggestions</h2>
<p><em>I would love to hear of other stuff which should be on my radar, mayhaps @ me with reccs?</em></p>
<h2 id="todo">todo</h2>
<p>recall and list more historic games which left a mark</p>
]]></content:encoded></item><item><title>Creative coding 2025 Jan-Apr</title><link>https://eggg.uk/blog/2025-04-creative-coding-jan-apr-2025/</link><pubDate>Wed, 04 Jun 2025 00:00:00 +0000</pubDate><guid>https://eggg.uk/blog/2025-04-creative-coding-jan-apr-2025/</guid><description>&lt;h2 id="what-led-me-here"&gt;what led me here?&lt;/h2&gt;
&lt;p&gt;I migrated to mastodon a little while back, and fully weaned myself off the old place last year some time.
I found myself following lots of people I knew from the old place, and then seeing them reposting further interesting people.
I seem to have unconsciously developed a rule of if I see a post by someone I don&amp;rsquo;t follow, I have a gander at a few of their other recent posts and follow them if their posts are interesting to me.
So presumably after some time of doing that i have run into some strudel/algorave content posted by one of the awesome champions of the medium. I&amp;rsquo;ll track it back some time.&lt;/p&gt;</description><content:encoded><![CDATA[<h2 id="what-led-me-here">what led me here?</h2>
<p>I migrated to mastodon a little while back, and fully weaned myself off the old place last year some time.
I found myself following lots of people I knew from the old place, and then seeing them reposting further interesting people.
I seem to have unconsciously developed a rule of if I see a post by someone I don&rsquo;t follow, I have a gander at a few of their other recent posts and follow them if their posts are interesting to me.
So presumably after some time of doing that i have run into some strudel/algorave content posted by one of the awesome champions of the medium. I&rsquo;ll track it back some time.</p>
<h2 id="what-is-keeping-me-here">what is keeping me here?</h2>
<p>the community of live coders have been INCREDIBLY welcoming, friendly, accepting of anyone at any knowledge level.</p>
<p>Multiple times I&rsquo;ve been encouraged to try things I wasn&rsquo;t yet comfortable with, and given nudges/guidance in the right direction, which has really helped to accelerate my learning, and kept me super keen to keep participating.</p>
<p>the events being organised by truly awesome folks who are organising events which they themselves want to attend and perform at</p>
<h2 id="whatve-i-been-doing">what&rsquo;ve i been doing?</h2>
<h3 id="self-guided-practice">self guided practice</h3>
<p>playing around on nudel and separately on strudel and hydra
reading the ref docs and sounds/synths/etc lists on strudel
reading the short and sweet api ref on hydra&rsquo;s site
trial and error
picking apart things I&rsquo;ve seen performed online or in person and trying to understand how the code and its parts work</p>
<h4 id="functionscommands-i-learnt-and-like-maybe-by-date">functions/commands i learnt and like, maybe by date:</h4>
<p>//possibly a separate post tbh</p>
<h4 id="hydra">hydra</h4>
<ul>
<li>modulateblah (2025-03)
<ul>
<li>honestly just throwing a few modulates (scale, rotate, scroll x / y ) fed by osc/voronoi/noise/other outputs can yield  some visual beauty</li>
</ul>
</li>
<li>fft (2025-04)
<ul>
<li>still trying to figure the full power of these but i love what others are achieving</li>
<li>syntax a little weird</li>
</ul>
</li>
<li>blend (2025-04)
<ul>
<li>pablo showed me that if you feed the whole thing back into itself with a high (e.g 0.99) figure, you get some very cool effects
<ul>
<li><code>.blend(o0,0.99)</code></li>
</ul>
</li>
</ul>
</li>
</ul>
<h4 id="strudel">strudel</h4>
<ul>
<li>fm and fmh (2025-03)
<ul>
<li>right after march algorhythms, specifically due to the code block below, i read up on fm, fmh, and frequency modulation in general. I had been aware that it existed but lacked any kind of understanding of what it does and how it works. Not saying I get it now, but maybe I know a bit more than I did.</li>
<li>I&rsquo;m using these a hecking lot now, they turn triangle/sine waves delicious
<ul>
<li>supersaw blows up if you use them on it though</li>
</ul>
</li>
</ul>
</li>
<li>s(&ldquo;bd(5,16)&rdquo;) (2025-04)
<ul>
<li>still trying to figure out how or why this works, but it creates such a satisfying drum pattern. is it being quantized? Dunno. does it bop? heck ya</li>
</ul>
</li>
<li>off() and press() (2025-04-14)
<ul>
<li>off is an offset command, in seconds, to allow you to add more notes and things to a single block of stuff, with a time offset</li>
<li>press shifts everything by a small offset so that it arrives half way through when it&rsquo;s supposed to.</li>
</ul>
</li>
</ul>
<h3 id="going-to-and-watching-events">going to and watching events</h3>
<h4 id="algorave-dec-2024">algorave dec-2024</h4>
<p>Anyway, I bought a ticket for the algorave in December at Corsica studios because well dang its £7 how could I not?
Then I got grossly sick with some neverending flu or worse and avoided going and polluting the air. Gutted. Moreso on seeing the awesome videos afterwards.</p>
<h4 id="winter-solstice-stream-2024-online">winter solstice stream 2024 (online)</h4>
<p>The solstice stream provided me with some huge inspiration, the variety in what the artists were putting out there was amazing. Shout out to switch angel who&rsquo;s album I immediately went and bought on bandcamp.
So when more events began to pop up with a regular cadence I decided to commit to going.</p>
<h4 id="algorhythms-feb-2025">algorhythms feb-2025</h4>
<p>The first I went to was on 2025-02-05, it was an Algorhythms event hosted £free at Carpet shop in Peckham.</p>
<p>I showed up super early to chat to folks and see how things ran, and then it kicked off. I shan&rsquo;t do a full writeup because I don&rsquo;t have that good of a memory but towards the end during the pastagang set, I was watching along on my phone (not participating) and blown away by how a concept so chaotic could possibly sound so good.</p>
<h4 id="algorhythms-mar-2025">algorhythms mar-2025</h4>
<p>Last time was brilliant, So I went again.
It was brilliant again. The artists and organisers did an incredible job.
There was a couple who performed together using i think LSDJ on some gameboys. There was also a custom gb studio(?) game being projected
Right towards the end there was a bit which I transcribed from one of the post event videos  which has stuck in my head ever since. I can&rsquo;t explain why this sounds so good/fun/cheeky to me, but it&rsquo;s brilliant. thanks pastagang.</p>





<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-js" data-lang="js"><span class="line"><span class="ln">1</span><span class="cl"><span class="nx">$</span><span class="o">:</span> <span class="nx">note</span><span class="p">(</span><span class="s2">&#34;&lt;g3 g3 c3 bb3&gt;&#34;</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">2</span><span class="cl"><span class="p">.</span><span class="nx">pdecay</span><span class="p">(.</span><span class="mi">5</span><span class="p">).</span><span class="nx">penv</span><span class="p">(</span><span class="mi">5</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">3</span><span class="cl"><span class="p">.</span><span class="nx">fm</span><span class="p">(</span><span class="mi">1</span><span class="p">)</span> <span class="c1">//1
</span></span></span><span class="line"><span class="ln">4</span><span class="cl"><span class="c1"></span><span class="p">.</span><span class="nx">fmh</span><span class="p">(</span><span class="mi">3</span><span class="p">)</span> <span class="c1">//3
</span></span></span><span class="line"><span class="ln">5</span><span class="cl"><span class="c1"></span><span class="p">.</span><span class="nx">ply</span><span class="p">(</span><span class="mi">8</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">6</span><span class="cl"><span class="p">.</span><span class="nx">lpf</span><span class="p">(</span><span class="mi">2000</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">7</span><span class="cl"><span class="p">.</span><span class="nx">clip</span><span class="p">(.</span><span class="mi">65</span><span class="p">)</span></span></span></code></pre></div><p>I might&rsquo;ve been handed a mic and said some animal names into it moments before we got asked to finish by the venue staff. Probably unrelated.</p>
<h4 id="algorave-apr-25">algorave apr-25</h4>
<p>TWO rooms of algorave? no way.
Wandered in super early and had a looksie around the venue, headed to room two and found Daniel and some other organisers chatting, maybe a little surprised to see me and a few others wander in to say hello.
We then got an unplanned demo of synte(lang), and the open room 2 slots kicked off
One of the early artists performed with a &ldquo;speakspell&rdquo; sound in i think tidalcycles (rather than strudel), and the chops / beat they made from the vowel sounds were SO much fun.  I have since found out that this was Heavy Lifting, who is Sheffield based
There was a lot to love throughout the event, though I&rsquo;m gutted that i couldn&rsquo;t be in both rooms at once.
I ended up mostly staying committed to room 2, but I did catch a good portion of the official synte set when I popped for a beverage.
The pastagang set was about to begin when I got back to room 2, and with a little nudge from someone I went and set up in a gap at the table.</p>
]]></content:encoded></item><item><title>time</title><link>https://eggg.uk/time/</link><pubDate>Mon, 28 Apr 2025 00:00:00 +0000</pubDate><guid>https://eggg.uk/time/</guid><description>&lt;html&gt;
 &lt;head&gt;
 &lt;style&gt;
 .time-display {
 display: flex;
 flex-direction: column;
 gap: 15px;

 }
 .time-card {
 background-color: #f9f9f9;
 border-left: 5px solid #4CAF50;
 padding: 15px;
 border-radius: 5px;
 display: flex;
 justify-content: space-between;

 }
 .time-card.current {
 /* background-color: #e3f2fd; */
 background-color: rgb(247, 217, 196);
 border-left: 5px solid #2196F3;
 }
 .time-card.hidden {
 display: none;
 }
 .location {
 font-weight: bold;
 font-size:0.9em;
 color: #333;

 }
 .time {
 font-size: 2em;
 color: #1a1a1a;

 }
 .date {
 color: #666;
 font-size: 0.9em;
 margin-top: 5px;
 }
 .offset {
 color: #666;
 font-size: 0.8em;
 margin-top: 5px;
 }
 &lt;/style&gt;
 &lt;/head&gt;
 &lt;body&gt;


 &lt;div class="container"&gt;&lt;/div&gt;
 &lt;h1&gt;&lt;/h1&gt;
 &lt;div class="time-display" id="time-display"&gt;&lt;/div&gt;
 &lt;script src=TZ.js&gt;&lt;/script&gt;
 &lt;/body&gt;
&lt;/html&gt;</description><content:encoded><![CDATA[
<html>
  <head>
    <style>
      .time-display {
        display: flex;
        flex-direction: column;
        gap: 15px;

      }
      .time-card {
        background-color: #f9f9f9;
        border-left: 5px solid #4CAF50;
        padding: 15px;
        border-radius: 5px;
        display: flex;
        justify-content: space-between;

      }
      .time-card.current {
        /* background-color: #e3f2fd; */
        background-color: rgb(247, 217, 196);
        border-left: 5px solid #2196F3;
      }
      .time-card.hidden {
        display: none;
      }
      .location {
        font-weight: bold;
        font-size:0.9em;
        color: #333;

      }
      .time {
        font-size: 2em;
        color: #1a1a1a;

      }
      .date {
        color: #666;
        font-size: 0.9em;
        margin-top: 5px;
      }
      .offset {
        color: #666;
        font-size: 0.8em;
        margin-top: 5px;
      }
    </style>
  </head>
  <body>


    <div class="container"></div>
    <h1></h1>
      <div class="time-display" id="time-display"></div>
    <script src=TZ.js></script>
  </body>
</html>
]]></content:encoded></item><item><title>timezone widget replacement</title><link>https://eggg.uk/blog/time/</link><pubDate>Mon, 28 Apr 2025 00:00:00 +0000</pubDate><guid>https://eggg.uk/blog/time/</guid><description>&lt;p&gt;While on hol in Korea earlier this year (April), I created a test page with some timezones to replace widgets I used to have on my phone.&lt;/p&gt;
&lt;p&gt;should be accessible &lt;a href="https://eggg.uk/time"&gt;here&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;it highlights the zone you&amp;rsquo;re in (if applicable) and uses some reasonably straight forward js/html&lt;/p&gt;
&lt;p&gt;I could probably drive the js file further in the future&lt;/p&gt;
&lt;p&gt;The code can be found &lt;a href="https://github.com/eggg-uk/eggg.uk/tree/main/content/time"&gt;here&lt;/a&gt;&lt;/p&gt;</description><content:encoded><![CDATA[<p>While on hol in Korea earlier this year (April), I created a test page with some timezones to replace widgets I used to have on my phone.</p>
<p>should be accessible <a href="https://eggg.uk/time">here</a></p>
<p>it highlights the zone you&rsquo;re in (if applicable) and uses some reasonably straight forward js/html</p>
<p>I could probably drive the js file further in the future</p>
<p>The code can be found <a href="https://github.com/eggg-uk/eggg.uk/tree/main/content/time">here</a></p>
]]></content:encoded></item><item><title>migrating my domains to porkbun from uk2</title><link>https://eggg.uk/blog/2025-04-23-migrating-domains/</link><pubDate>Wed, 23 Apr 2025 00:00:00 +0000</pubDate><guid>https://eggg.uk/blog/2025-04-23-migrating-domains/</guid><description>&lt;h3 id="what-am-i-doing-here"&gt;what am i doing here?&lt;/h3&gt;
&lt;p&gt;Migrating domains to a new domain registrar&lt;/p&gt;
&lt;p&gt;porkbun seemed reasonable value and I&amp;rsquo;ve seen others using them lately. (certainly a saving for me, for .uk and .co.uk)&lt;/p&gt;
&lt;h3 id="steps"&gt;steps&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Signed up at porkbun&lt;/li&gt;
&lt;li&gt;read their kb article on transferring, &lt;a href="https://kb.porkbun.com/article/180-how-to-transfer-a-uk-domain-to-porkbun"&gt;which led to another on transferring a .uk&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;followed the steps:
&lt;ul&gt;
&lt;li&gt;tell porkbun the domain to transfer in,&lt;/li&gt;
&lt;li&gt;set their requested txt DNS record on UK2&lt;/li&gt;
&lt;li&gt;hit finish on porkbun&lt;/li&gt;
&lt;li&gt;then initiate the transfer on UK2
&lt;ul&gt;
&lt;li&gt;this differs from most other registrars, dunno why we have to be different&amp;hellip;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;this took around 2-10 mins for each domain I transferred&lt;/li&gt;
&lt;li&gt;Once that was done, they let me know with each site&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;I then reconfigured each of my sites&amp;rsquo; DNS.
&lt;ul&gt;
&lt;li&gt;Thankfully UK2 retained my config and didn&amp;rsquo;t drop it instantly on transfer, but if I were to do this again I&amp;rsquo;d look to take copies of all that info ahead of time!&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;I then checked on my email provider&amp;rsquo;s end to ensure that they could still see my domains no problem
&lt;ul&gt;
&lt;li&gt;I screwed up one mx record, which it found&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;I sent some test mails to my email addresses, to see if they made it through
&lt;ul&gt;
&lt;li&gt;most did, but one didn&amp;rsquo;t have an A or AAAA record, which gmail seems to denote as a failed lookup, even though the MX/TXT stuff was all there
&lt;ul&gt;
&lt;li&gt;quickly spun something up for it to point to and this fixed&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="summary"&gt;summary&lt;/h3&gt;
&lt;p&gt;all in all, took me a good while, but I&amp;rsquo;ve not done this in an awfully long time.
shout out to porkbun&amp;rsquo;s documentation tbh.&lt;/p&gt;</description><content:encoded><![CDATA[<h3 id="what-am-i-doing-here">what am i doing here?</h3>
<p>Migrating domains to a new domain registrar</p>
<p>porkbun seemed reasonable value and I&rsquo;ve seen others using them lately. (certainly a saving for me, for .uk and .co.uk)</p>
<h3 id="steps">steps</h3>
<ul>
<li>Signed up at porkbun</li>
<li>read their kb article on transferring, <a href="https://kb.porkbun.com/article/180-how-to-transfer-a-uk-domain-to-porkbun">which led to another on transferring a .uk</a></li>
<li>followed the steps:
<ul>
<li>tell porkbun the domain to transfer in,</li>
<li>set their requested txt DNS record on UK2</li>
<li>hit finish on porkbun</li>
<li>then initiate the transfer on UK2
<ul>
<li>this differs from most other registrars, dunno why we have to be different&hellip;</li>
</ul>
</li>
<li>this took around 2-10 mins for each domain I transferred</li>
<li>Once that was done, they let me know with each site</li>
</ul>
</li>
<li>I then reconfigured each of my sites&rsquo; DNS.
<ul>
<li>Thankfully UK2 retained my config and didn&rsquo;t drop it instantly on transfer, but if I were to do this again I&rsquo;d look to take copies of all that info ahead of time!</li>
</ul>
</li>
<li>I then checked on my email provider&rsquo;s end to ensure that they could still see my domains no problem
<ul>
<li>I screwed up one mx record, which it found</li>
</ul>
</li>
<li>I sent some test mails to my email addresses, to see if they made it through
<ul>
<li>most did, but one didn&rsquo;t have an A or AAAA record, which gmail seems to denote as a failed lookup, even though the MX/TXT stuff was all there
<ul>
<li>quickly spun something up for it to point to and this fixed</li>
</ul>
</li>
</ul>
</li>
</ul>
<h3 id="summary">summary</h3>
<p>all in all, took me a good while, but I&rsquo;ve not done this in an awfully long time.
shout out to porkbun&rsquo;s documentation tbh.</p>
]]></content:encoded></item><item><title>p5js / creative coding</title><link>https://eggg.uk/blog/2025-04-22-p5/</link><pubDate>Tue, 22 Apr 2025 00:00:00 +0000</pubDate><guid>https://eggg.uk/blog/2025-04-22-p5/</guid><description>&lt;p&gt;Been following (lagging behind) along the &lt;a href="https://creativecodingbook.club/"&gt;london creative coding book club&lt;/a&gt; - not had the chance to join an event yet but it&amp;rsquo;s on my list!&lt;/p&gt;
&lt;p&gt;Here&amp;rsquo;s a brief script I&amp;rsquo;ve built as part of an excercise from &lt;a href="https://natureofcode.com/random/"&gt;Nature of code&lt;/a&gt;&amp;rsquo;s ch0 - Randomness&lt;/p&gt;
&lt;p&gt;very cool so far.&lt;/p&gt;





&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-js" data-lang="js"&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 1&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;script&lt;/span&gt; &lt;span class="nx"&gt;src&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.11.1/p5.js&amp;#34;&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="err"&gt;/script&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 2&lt;/span&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 3&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;script&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 4&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nx"&gt;setup&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 5&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nx"&gt;createCanvas&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;windowWidth&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;windowHeight&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 6&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nx"&gt;background&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;8&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;38&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;59&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 7&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 8&lt;/span&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 9&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nx"&gt;draw&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;10&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;mouseIsPressed&lt;/span&gt; &lt;span class="o"&gt;===&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;11&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nx"&gt;fill&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;random&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;255&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;255&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;12&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;else&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;13&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nx"&gt;fill&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;random&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;255&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;14&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;15&lt;/span&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;16&lt;/span&gt;&lt;span class="cl"&gt; &lt;span class="nx"&gt;circle&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;mouseX&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="nx"&gt;mouseY&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;100&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;17&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;18&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="err"&gt;/script&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.11.1/p5.js"&gt;&lt;/script&gt;
&lt;script&gt;
function setup() {
 createCanvas(windowWidth/3, windowHeight/2);
 background(8,38,59)
}

function draw() {
 if (mouseIsPressed === true) {
 fill(random(255/2,255));
 } else {
 fill(random(0,255/2))
 }

 circle(mouseX,mouseY,100)
}
&lt;/script&gt;
&lt;h1&gt;&lt;/h1&gt;</description><content:encoded><![CDATA[<p>Been following (lagging behind) along the <a href="https://creativecodingbook.club/">london creative coding book club</a> - not had the chance to join an event yet but it&rsquo;s on my list!</p>
<p>Here&rsquo;s a brief script I&rsquo;ve built as part of an excercise from <a href="https://natureofcode.com/random/">Nature of code</a>&rsquo;s ch0 - Randomness</p>
<p>very cool so far.</p>





<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-js" data-lang="js"><span class="line"><span class="ln"> 1</span><span class="cl"><span class="o">&lt;</span><span class="nx">script</span> <span class="nx">src</span><span class="o">=</span><span class="s2">&#34;https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.11.1/p5.js&#34;</span><span class="o">&gt;&lt;</span><span class="err">/script&gt;</span>
</span></span><span class="line"><span class="ln"> 2</span><span class="cl">
</span></span><span class="line"><span class="ln"> 3</span><span class="cl"><span class="o">&lt;</span><span class="nx">script</span><span class="o">&gt;</span>
</span></span><span class="line"><span class="ln"> 4</span><span class="cl"><span class="kd">function</span> <span class="nx">setup</span><span class="p">()</span> <span class="p">{</span>
</span></span><span class="line"><span class="ln"> 5</span><span class="cl">  <span class="nx">createCanvas</span><span class="p">(</span><span class="nx">windowWidth</span><span class="o">/</span><span class="mi">3</span><span class="p">,</span> <span class="nx">windowHeight</span><span class="o">/</span><span class="mi">2</span><span class="p">);</span>
</span></span><span class="line"><span class="ln"> 6</span><span class="cl">  <span class="nx">background</span><span class="p">(</span><span class="mi">8</span><span class="p">,</span><span class="mi">38</span><span class="p">,</span><span class="mi">59</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 7</span><span class="cl"><span class="p">}</span>
</span></span><span class="line"><span class="ln"> 8</span><span class="cl">
</span></span><span class="line"><span class="ln"> 9</span><span class="cl"><span class="kd">function</span> <span class="nx">draw</span><span class="p">()</span> <span class="p">{</span>
</span></span><span class="line"><span class="ln">10</span><span class="cl">  <span class="k">if</span> <span class="p">(</span><span class="nx">mouseIsPressed</span> <span class="o">===</span> <span class="kc">true</span><span class="p">)</span> <span class="p">{</span>
</span></span><span class="line"><span class="ln">11</span><span class="cl">    <span class="nx">fill</span><span class="p">(</span><span class="nx">random</span><span class="p">(</span><span class="mi">255</span><span class="o">/</span><span class="mi">2</span><span class="p">,</span><span class="mi">255</span><span class="p">));</span>
</span></span><span class="line"><span class="ln">12</span><span class="cl">  <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
</span></span><span class="line"><span class="ln">13</span><span class="cl">    <span class="nx">fill</span><span class="p">(</span><span class="nx">random</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="mi">255</span><span class="o">/</span><span class="mi">2</span><span class="p">))</span>
</span></span><span class="line"><span class="ln">14</span><span class="cl">  <span class="p">}</span>
</span></span><span class="line"><span class="ln">15</span><span class="cl">
</span></span><span class="line"><span class="ln">16</span><span class="cl">  <span class="nx">circle</span><span class="p">(</span><span class="nx">mouseX</span><span class="p">,</span><span class="nx">mouseY</span><span class="p">,</span><span class="mi">100</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">17</span><span class="cl"><span class="p">}</span>
</span></span><span class="line"><span class="ln">18</span><span class="cl"><span class="o">&lt;</span><span class="err">/script&gt;</span></span></span></code></pre></div><script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.11.1/p5.js"></script>
<script>
function setup() {
  createCanvas(windowWidth/3, windowHeight/2);
  background(8,38,59)
}

function draw() {
  if (mouseIsPressed === true) {
    fill(random(255/2,255));
  } else {
    fill(random(0,255/2))
  }

  circle(mouseX,mouseY,100)
}
</script>
<h1></h1>
]]></content:encoded></item><item><title>adopting hugo</title><link>https://eggg.uk/blog/2025-04-18-hugo/</link><pubDate>Fri, 18 Apr 2025 00:00:00 +0000</pubDate><guid>https://eggg.uk/blog/2025-04-18-hugo/</guid><description>&lt;p&gt;worked some of today trying to move my existing posts (which were not publicised) from hand crafted html, into markdown format for site generation.&lt;/p&gt;
&lt;p&gt;Purpose is to ensure that I have automatic links between posts, tags and other useful features while keeping things reasonably lean&lt;/p&gt;
&lt;p&gt;picked &lt;a href="https://github.com/clente/hugo-bearcub"&gt;bearcub&lt;/a&gt; theme because it looks nice and simple to work with and auto creates RSS feed&lt;/p&gt;
&lt;p&gt;probably gonna aim to do the github actions thing, which is reasonably new to me too&lt;/p&gt;</description><content:encoded><![CDATA[<p>worked some of today trying to move my existing posts (which were not publicised) from hand crafted html, into markdown format for site generation.</p>
<p>Purpose is to ensure that I have automatic links between posts, tags and other useful features while keeping things reasonably lean</p>
<p>picked <a href="https://github.com/clente/hugo-bearcub">bearcub</a> theme because it looks nice and simple to work with and auto creates RSS feed</p>
<p>probably gonna aim to do the github actions thing, which is reasonably new to me too</p>
<p>looks like that worked, though it was more iteration than I had expected. 8th time&rsquo;s the charm.</p>
]]></content:encoded></item><item><title>gigs</title><link>https://eggg.uk/blog/gigs/</link><pubDate>Fri, 18 Apr 2025 00:00:00 +0000</pubDate><guid>https://eggg.uk/blog/gigs/</guid><description>&lt;h2 id="notes"&gt;notes:&lt;/h2&gt;
&lt;p&gt;Quite fun to have put together&lt;/p&gt;
&lt;p&gt;will continue to be updated&lt;/p&gt;
&lt;p&gt;#todo - add missed/cancelled gigs (covid/etc) maybe in a diff table&lt;/p&gt;
&lt;h3 id="updates"&gt;updates:&lt;/h3&gt;
&lt;p&gt;[2025-10-03]: the table markdown was a bit of a travesty, I&amp;rsquo;ve tried to tidy it a little. I&amp;rsquo;ve also added more gigs both past and present
[2025-11-08]: couple updates to gigs&lt;/p&gt;
&lt;h2 id="a-table-of-approximately-all-of-the-gigs-ive-ever-been-to"&gt;a table of approximately all of the gigs I&amp;rsquo;ve ever been to&lt;/h2&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Artist&lt;/th&gt;
 &lt;th&gt;When&lt;/th&gt;
 &lt;th&gt;Support/lineup seen&lt;/th&gt;
 &lt;th&gt;Notes&lt;/th&gt;
 &lt;th&gt;Where&lt;/th&gt;
 &lt;th&gt;Price&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;Various Cropredy festivals&lt;/td&gt;
 &lt;td&gt;1995-1999&lt;/td&gt;
 &lt;td&gt;Procol Harum, Wild willy barrett, Saw doctors, Edward II&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Space&lt;/td&gt;
 &lt;td&gt;25/05/1997&lt;/td&gt;
 &lt;td&gt;Boo radleys, Teenage fanclub, Gorky&amp;rsquo;s zygotic mynci, Beth orton, Sneaker pimps, etc&lt;/td&gt;
 &lt;td&gt;The essential 97 music festival&lt;/td&gt;
 &lt;td&gt;Stanmer Park, Brighton&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Muse&lt;/td&gt;
 &lt;td&gt;22/11/2006&lt;/td&gt;
 &lt;td&gt;Noisettes&lt;/td&gt;
 &lt;td&gt;Black holes and revelations tour&lt;/td&gt;
 &lt;td&gt;Wembley Arena&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Kasabian&lt;/td&gt;
 &lt;td&gt;19/12/2006&lt;/td&gt;
 &lt;td&gt;Fratellis&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Earl&amp;rsquo;s court&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Muse&lt;/td&gt;
 &lt;td&gt;16/06/2007&lt;/td&gt;
 &lt;td&gt;Dirty Pretty Things, Rodrigo y Gabriella, The Streets&lt;/td&gt;
 &lt;td&gt;H.A.A.R.P tour&lt;/td&gt;
 &lt;td&gt;Wembley Stadium&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Glastonbury 07&lt;/td&gt;
 &lt;td&gt;22/06/2007&lt;/td&gt;
 &lt;td&gt;Arctic Monkeys, gogol bordello, fratellis, bloc party, kasabian, magic numbers, the coral, the automatic&lt;/td&gt;
 &lt;td&gt;memory hazy, probably saw some of them&lt;/td&gt;
 &lt;td&gt;Worthy Farm&lt;/td&gt;
 &lt;td&gt;£145&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Glastonbury 07&lt;/td&gt;
 &lt;td&gt;23/06/2007&lt;/td&gt;
 &lt;td&gt;rodrigo y gabriella, the kooks, dirty pretty things, CSS, klaxons, babyshambles, maximo park, editors, the bees&lt;/td&gt;
 &lt;td&gt;memory hazy, probably saw some of them&lt;/td&gt;
 &lt;td&gt;Worthy Farm&lt;/td&gt;
 &lt;td&gt;above&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Glastonbury 07&lt;/td&gt;
 &lt;td&gt;24/06/2007&lt;/td&gt;
 &lt;td&gt;The Who, Kaiser Chiefs, KT tunstall, mark ronson, pendulum&lt;/td&gt;
 &lt;td&gt;memory hazy, probably saw some of them&lt;/td&gt;
 &lt;td&gt;Worthy Farm&lt;/td&gt;
 &lt;td&gt;above&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Chemical brothers&lt;/td&gt;
 &lt;td&gt;09/09/2007&lt;/td&gt;
 &lt;td&gt;Calvin harris&lt;/td&gt;
 &lt;td&gt;mum won tickets&lt;/td&gt;
 &lt;td&gt;Trafalgar square&lt;/td&gt;
 &lt;td&gt;£0&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Creamfields&lt;/td&gt;
 &lt;td&gt;27/08/2011-28/08/2011&lt;/td&gt;
 &lt;td&gt;Chemical brothers, Tiesto, Paul van dyk, Armin van buuren, magnetic man, katy b, example, joker, jaguar skills&lt;/td&gt;
 &lt;td&gt;camping/2 days&lt;/td&gt;
 &lt;td&gt;Daresbury, Cheshire&lt;/td&gt;
 &lt;td&gt;£129.13&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Kyary Pamyu Pamyu&lt;/td&gt;
 &lt;td&gt;29/04/2014&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Shepherds bush empire&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Kanye West&lt;/td&gt;
 &lt;td&gt;04/07/2014&lt;/td&gt;
 &lt;td&gt;Pharrell, Basement Jaxx, Iggy Azalea&lt;/td&gt;
 &lt;td&gt;Yeezus tour (Wireless festival)&lt;/td&gt;
 &lt;td&gt;Finsbury Park&lt;/td&gt;
 &lt;td&gt;£74.75&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Childish Gambino&lt;/td&gt;
 &lt;td&gt;19/08/2014&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;deep web tour. there was some AR and voting experience but signal on phone was not working in the venue&lt;/td&gt;
 &lt;td&gt;Brixton&lt;/td&gt;
 &lt;td&gt;£22.57&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Deadmau5&lt;/td&gt;
 &lt;td&gt;24/08/2014&lt;/td&gt;
 &lt;td&gt;Skream, Netsky&lt;/td&gt;
 &lt;td&gt;South west four&lt;/td&gt;
 &lt;td&gt;clapham common&lt;/td&gt;
 &lt;td&gt;£57.06&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Libertines&lt;/td&gt;
 &lt;td&gt;28/09/2014&lt;/td&gt;
 &lt;td&gt;circa waves&lt;/td&gt;
 &lt;td&gt;I think he was late but not uber late&lt;/td&gt;
 &lt;td&gt;Ally pally&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;SBTRKT&lt;/td&gt;
 &lt;td&gt;02/10/2014&lt;/td&gt;
 &lt;td&gt;denai moore, raury&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Brixton academy&lt;/td&gt;
 &lt;td&gt;£23.10&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Babymetal&lt;/td&gt;
 &lt;td&gt;08/11/2014&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;brixton academy&lt;/td&gt;
 &lt;td&gt;£8.98&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Perfume&lt;/td&gt;
 &lt;td&gt;12/11/2014&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Hammersmith apollo&lt;/td&gt;
 &lt;td&gt;£31.90&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Run The Jewels&lt;/td&gt;
 &lt;td&gt;12/12/2014&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;KOKO&lt;/td&gt;
 &lt;td&gt;£21.60&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Flying Lotus&lt;/td&gt;
 &lt;td&gt;01/05/2015&lt;/td&gt;
 &lt;td&gt;captain murphy set, jay electronica, shabazz palaces, lapalux&lt;/td&gt;
 &lt;td&gt;MF Doom didn&amp;rsquo;t show - jay electronica instead&lt;/td&gt;
 &lt;td&gt;Brixton&lt;/td&gt;
 &lt;td&gt;£29.50&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Massive Attack&lt;/td&gt;
 &lt;td&gt;04/02/2016&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;mum won these tickets&lt;/td&gt;
 &lt;td&gt;Brixton&lt;/td&gt;
 &lt;td&gt;£0&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Kendrick Lamar&lt;/td&gt;
 &lt;td&gt;02/07/2016&lt;/td&gt;
 &lt;td&gt;Poliça, Kamasi Washington, Jamie XX, Florence and the machine, Blood Orange&lt;/td&gt;
 &lt;td&gt;BST festival&lt;/td&gt;
 &lt;td&gt;Hyde park&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Chance the Rapper&lt;/td&gt;
 &lt;td&gt;20/11/2016&lt;/td&gt;
 &lt;td&gt;jay prince&lt;/td&gt;
 &lt;td&gt;magnificent colouring world tour&lt;/td&gt;
 &lt;td&gt;Brixton academy&lt;/td&gt;
 &lt;td&gt;£28.50&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Throwing Snow&lt;/td&gt;
 &lt;td&gt;10/02/2017&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Archspace Haggerston&lt;/td&gt;
 &lt;td&gt;£9.35&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Sepultura&lt;/td&gt;
 &lt;td&gt;02/03/2017&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Forum Kentish town&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;K.Flay&lt;/td&gt;
 &lt;td&gt;27/06/2017&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Camden assembly&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;DJ Shadow&lt;/td&gt;
 &lt;td&gt;07/10/2017&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;the mountain will fall tour&lt;/td&gt;
 &lt;td&gt;Roundhouse&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Steven wilson&lt;/td&gt;
 &lt;td&gt;03/2018&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;to the bone tour&lt;/td&gt;
 &lt;td&gt;RAH&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Death in vegas&lt;/td&gt;
 &lt;td&gt;27/07/2018&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Hangar&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Mitski&lt;/td&gt;
 &lt;td&gt;26/09/2018&lt;/td&gt;
 &lt;td&gt;Eera&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Shepherd&amp;rsquo;s bush empire&lt;/td&gt;
 &lt;td&gt;£21.20&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Pusha T&lt;/td&gt;
 &lt;td&gt;12/12/2018&lt;/td&gt;
 &lt;td&gt;Kojey Radical&lt;/td&gt;
 &lt;td&gt;wore a suit, got complimented on wearing a suit&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;£32.87&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Flying Lotus&lt;/td&gt;
 &lt;td&gt;15/12/2018&lt;/td&gt;
 &lt;td&gt;Thundercat, Dorian concept, lapalux, ross from friends, iglooghost&lt;/td&gt;
 &lt;td&gt;Brainfeeder X&lt;/td&gt;
 &lt;td&gt;Brixton&lt;/td&gt;
 &lt;td&gt;£42.95&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Jay Rock&lt;/td&gt;
 &lt;td&gt;18/02/2019&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Electric Brixton&lt;/td&gt;
 &lt;td&gt;£24.75&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;MEUTE&lt;/td&gt;
 &lt;td&gt;09/03/2019&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Jazz Cafe&lt;/td&gt;
 &lt;td&gt;£18.70&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Chemical Brothers&lt;/td&gt;
 &lt;td&gt;24/05/2019&lt;/td&gt;
 &lt;td&gt;Hot Chip, Jon Hopkins, Little Dragon, Danny Brown, Little Simz, Imibio Sound Machine&lt;/td&gt;
 &lt;td&gt;All points east 2019&lt;/td&gt;
 &lt;td&gt;Victoria Park&lt;/td&gt;
 &lt;td&gt;£69.25&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Madness&lt;/td&gt;
 &lt;td&gt;22/06/2019&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Day of races and madness&lt;/td&gt;
 &lt;td&gt;Epsom racecourse&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Thundercat&lt;/td&gt;
 &lt;td&gt;04/08/2019&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;meltdown festival, he played stuff very fast which was technically very impressive but I didn&amp;rsquo;t enjoy it&lt;/td&gt;
 &lt;td&gt;Southbank Centre (royal festival hall)&lt;/td&gt;
 &lt;td&gt;£31.50&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;BBC Symphony orchestra&lt;/td&gt;
 &lt;td&gt;12/11/2019&lt;/td&gt;
 &lt;td&gt;&amp;ldquo;Playing in the dark&amp;rdquo; neil gaiman&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Barbican&lt;/td&gt;
 &lt;td&gt;£30.25&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Apparat&lt;/td&gt;
 &lt;td&gt;04/12/2019&lt;/td&gt;
 &lt;td&gt;telefon tel aviv&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Roundhouse&lt;/td&gt;
 &lt;td&gt;£30.25&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;IDLES&lt;/td&gt;
 &lt;td&gt;07/12/2019&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Ally pally&lt;/td&gt;
 &lt;td&gt;£34&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Schoolboy Q&lt;/td&gt;
 &lt;td&gt;28/01/2020&lt;/td&gt;
 &lt;td&gt;Jay rock&lt;/td&gt;
 &lt;td&gt;Greg threw up all over Dave&amp;rsquo;s new jacket&lt;/td&gt;
 &lt;td&gt;Brixton academy&lt;/td&gt;
 &lt;td&gt;£41.63&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;DJ Shadow&lt;/td&gt;
 &lt;td&gt;29/02/2020&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Brixton academy&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Green Day&lt;/td&gt;
 &lt;td&gt;24/06/2022&lt;/td&gt;
 &lt;td&gt;Weezer, Fall Out Boy&lt;/td&gt;
 &lt;td&gt;hella mega tour, postponed from 2020 to 2021 to 2022. Was gutted to miss a lot of weezer in exchange for a terrible popeyes&lt;/td&gt;
 &lt;td&gt;London Stadium&lt;/td&gt;
 &lt;td&gt;£83.06&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Santana&lt;/td&gt;
 &lt;td&gt;07/08/2022&lt;/td&gt;
 &lt;td&gt;Earth Wind and Fire&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Budweiser stage, toronto&lt;/td&gt;
 &lt;td&gt;£83&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Saw doctors&lt;/td&gt;
 &lt;td&gt;25/11/2022&lt;/td&gt;
 &lt;td&gt;damian dempsey&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Brixton academy&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Mountbatten festival of music&lt;/td&gt;
 &lt;td&gt;10/03/2023&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;work gave us free tickets, the king was there&lt;/td&gt;
 &lt;td&gt;RAH&lt;/td&gt;
 &lt;td&gt;£0&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Rival Consoles&lt;/td&gt;
 &lt;td&gt;27/05/2023&lt;/td&gt;
 &lt;td&gt;hainbach&lt;/td&gt;
 &lt;td&gt;4 gigs and a funeral week start&lt;/td&gt;
 &lt;td&gt;Barbican&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Beyonce&lt;/td&gt;
 &lt;td&gt;29/05/2023&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Tottenham Stadium&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Sparks&lt;/td&gt;
 &lt;td&gt;30/05/2023&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;RAH&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Otway and Barrett&lt;/td&gt;
 &lt;td&gt;01/06/2023&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;4 gigs and a funeral week end&lt;/td&gt;
 &lt;td&gt;CryerArts centre carshalton&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Tenacious D&lt;/td&gt;
 &lt;td&gt;16/06/2023&lt;/td&gt;
 &lt;td&gt;steel beans&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;O2&lt;/td&gt;
 &lt;td&gt;£57.75&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;John otway&lt;/td&gt;
 &lt;td&gt;04/08/2023&lt;/td&gt;
 &lt;td&gt;beer festival&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;olympia&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Aphex twin&lt;/td&gt;
 &lt;td&gt;19/08/2023&lt;/td&gt;
 &lt;td&gt;Arca, Fever Ray, Actress&lt;/td&gt;
 &lt;td&gt;Skipped bonobo and moderat due to clashes :( (all points east)&lt;/td&gt;
 &lt;td&gt;Victoria park&lt;/td&gt;
 &lt;td&gt;£58.35&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Max Richter&lt;/td&gt;
 &lt;td&gt;06/09/2023&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;prom (vivaldi&amp;rsquo;s four seasons)&lt;/td&gt;
 &lt;td&gt;RAH&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;James Blake&lt;/td&gt;
 &lt;td&gt;28/09/2023&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Old crow medicine show&lt;/td&gt;
 &lt;td&gt;30/10/2023&lt;/td&gt;
 &lt;td&gt;Willie watson&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Hammersmith apollo&lt;/td&gt;
 &lt;td&gt;£49.50&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Tangerine Dream&lt;/td&gt;
 &lt;td&gt;08/11/2023&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Palladium&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Max cooper&lt;/td&gt;
 &lt;td&gt;02/12/2023&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;3d/av&lt;/td&gt;
 &lt;td&gt;EartH Hackney&lt;/td&gt;
 &lt;td&gt;£23.46&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Foo Fighters&lt;/td&gt;
 &lt;td&gt;20/06/2024&lt;/td&gt;
 &lt;td&gt;Wet leg&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;London Stadium&lt;/td&gt;
 &lt;td&gt;£93.67&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Linkin Park&lt;/td&gt;
 &lt;td&gt;24/09/2024&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;£126&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Hot Chip (DJ Set)&lt;/td&gt;
 &lt;td&gt;10/10/2024&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Coming on strongerer release, included a CD in price.&lt;/td&gt;
 &lt;td&gt;Rough trade east&lt;/td&gt;
 &lt;td&gt;£9.50&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Alice Cooper&lt;/td&gt;
 &lt;td&gt;20/10/2024&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Hammersmith apollo&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Ruthven&lt;/td&gt;
 &lt;td&gt;25/10/2024&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Peckham Audio&lt;/td&gt;
 &lt;td&gt;£13.82&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Black Pumas&lt;/td&gt;
 &lt;td&gt;29/10/2024&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;RAH&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;IDLES&lt;/td&gt;
 &lt;td&gt;30/11/2024&lt;/td&gt;
 &lt;td&gt;Battles, Lambrini girls&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Ally Pally&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Killer Mike &amp;amp; Dave Chappelle&lt;/td&gt;
 &lt;td&gt;04/12/2024&lt;/td&gt;
 &lt;td&gt;Remi wolf&lt;/td&gt;
 &lt;td&gt;Seated&lt;/td&gt;
 &lt;td&gt;Fairfield Halls&lt;/td&gt;
 &lt;td&gt;£136.93&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Algorhythms&lt;/td&gt;
 &lt;td&gt;05/02/2025&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;#pastagang&lt;/td&gt;
 &lt;td&gt;peckham carpet shop&lt;/td&gt;
 &lt;td&gt;£0&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Pye corner audio&lt;/td&gt;
 &lt;td&gt;08/02/2025&lt;/td&gt;
 &lt;td&gt;Loula Yorke&lt;/td&gt;
 &lt;td&gt;Standing&lt;/td&gt;
 &lt;td&gt;Rich mix bethnal green&lt;/td&gt;
 &lt;td&gt;£17.99&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Justice&lt;/td&gt;
 &lt;td&gt;12/02/2025&lt;/td&gt;
 &lt;td&gt;Busy P, Erol Alkan, Kelly lee owens&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Ally Pally&lt;/td&gt;
 &lt;td&gt;£55.85&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Bowling for soup&lt;/td&gt;
 &lt;td&gt;14/02/2025&lt;/td&gt;
 &lt;td&gt;Wheatus, magnolia park&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Brighton&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Algorhythms&lt;/td&gt;
 &lt;td&gt;05/03/2025&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;#pastagang&lt;/td&gt;
 &lt;td&gt;peckham carpet shop&lt;/td&gt;
 &lt;td&gt;£0&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Dead south&lt;/td&gt;
 &lt;td&gt;20/03/2025&lt;/td&gt;
 &lt;td&gt;Corb lund&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Hammersmith apollo&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Algorave&lt;/td&gt;
 &lt;td&gt;09/04/2025&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;#pastagang&lt;/td&gt;
 &lt;td&gt;Corsica studios&lt;/td&gt;
 &lt;td&gt;£7&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Tyler, the creator&lt;/td&gt;
 &lt;td&gt;21/05/2025&lt;/td&gt;
 &lt;td&gt;Lil Yachty, Paris Texas&lt;/td&gt;
 &lt;td&gt;golden circle&lt;/td&gt;
 &lt;td&gt;O2 arena&lt;/td&gt;
 &lt;td&gt;£146.60&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Algorhythms&lt;/td&gt;
 &lt;td&gt;04/06/2025&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;a href="https://bsky.app/profile/mtrc.bsky.social/post/3lqsp2qk33c2r"&gt;eggg visual set 8pm&lt;/a&gt;&lt;/td&gt;
 &lt;td&gt;peckham carpet shop&lt;/td&gt;
 &lt;td&gt;£0&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Zimmer vs williams&lt;/td&gt;
 &lt;td&gt;08/06/2025&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;RAH&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Nine inch nails&lt;/td&gt;
 &lt;td&gt;18/06/2025&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Standing&lt;/td&gt;
 &lt;td&gt;O2&lt;/td&gt;
 &lt;td&gt;£91.35&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Sparks&lt;/td&gt;
 &lt;td&gt;19/06/2025&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Hammersmith&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Linkin Park&lt;/td&gt;
 &lt;td&gt;28/06/2025&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Standing (LPU pit)&lt;/td&gt;
 &lt;td&gt;Wembley Stadium&lt;/td&gt;
 &lt;td&gt;£153.92&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Algorhythms&lt;/td&gt;
 &lt;td&gt;02/07/2025&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;a href="../../hydra/3"&gt;eggg visual set&lt;/a&gt;&lt;/td&gt;
 &lt;td&gt;peckham carpet shop&lt;/td&gt;
 &lt;td&gt;£0&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Algorave&lt;/td&gt;
 &lt;td&gt;11/07/2025&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Science Gallery&lt;/td&gt;
 &lt;td&gt;£0&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Kaiser Chiefs&lt;/td&gt;
 &lt;td&gt;19/07/2025&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Standing&lt;/td&gt;
 &lt;td&gt;Ally Pally&lt;/td&gt;
 &lt;td&gt;£58.69&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Prom: from dark till dawn&lt;/td&gt;
 &lt;td&gt;08/08/2025&lt;/td&gt;
 &lt;td&gt;Anna lapwood curated and conducted&lt;/td&gt;
 &lt;td&gt;starts at 11pm through to 7am&lt;/td&gt;
 &lt;td&gt;RAH&lt;/td&gt;
 &lt;td&gt;£20&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Rhapsody of fire&lt;/td&gt;
 &lt;td&gt;20/09/2025&lt;/td&gt;
 &lt;td&gt;enforcer, striker, witherfall&lt;/td&gt;
 &lt;td&gt;Twisted my ankle in the pit&lt;/td&gt;
 &lt;td&gt;the garrison, toronto&lt;/td&gt;
 &lt;td&gt;CAD$45&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Al Stewart&lt;/td&gt;
 &lt;td&gt;15/10/2025&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;UNKLE&lt;/td&gt;
 &lt;td&gt;24/10/2025&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Rōnin Live:3D:FX&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;£42.50&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Gogol bordello&lt;/td&gt;
 &lt;td&gt;01/11/2025&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Missed this one&lt;/td&gt;
 &lt;td&gt;Electric ballroom&lt;/td&gt;
 &lt;td&gt;£42&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Algorhythms&lt;/td&gt;
 &lt;td&gt;05/11/2025&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;a href="../../hydra/3"&gt;eggg visual set&lt;/a&gt;&lt;/td&gt;
 &lt;td&gt;peckham carpet shop&lt;/td&gt;
 &lt;td&gt;£0&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Pendulum&lt;/td&gt;
 &lt;td&gt;07/11/2025&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Brixton academy&lt;/td&gt;
 &lt;td&gt;£0&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Pye corner audio&lt;/td&gt;
 &lt;td&gt;08/11/2025&lt;/td&gt;
 &lt;td&gt;The silver field&lt;/td&gt;
 &lt;td&gt;ambient set&lt;/td&gt;
 &lt;td&gt;St John on bethnal green&lt;/td&gt;
 &lt;td&gt;£22&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;ΛLGØΓΛVΞ (algorave)&lt;/td&gt;
 &lt;td&gt;05/11/2025&lt;/td&gt;
 &lt;td&gt;boggo, bundy, collapse, everysongiown, hellocatfood, hmurd, ideoforms, liimxa, James Holden, Jane_, joana.art, JoeyJoeyJoe, madchen11111, m̶a̶h̶[alias], MYNA, Nadya via Proxy, #pastagang, portal_.aura, The Printer Jam, Rumblesan, Shankar Saanthakumar, SYNTƏL8, todepond, ulysses.codes, Yaxu&lt;/td&gt;
 &lt;td&gt;&lt;a href="https://ra.co/events/2280905"&gt;event page&lt;/a&gt;&lt;/td&gt;
 &lt;td&gt;Corsica studios&lt;/td&gt;
 &lt;td&gt;£5.5&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Ensiferum&lt;/td&gt;
 &lt;td&gt;11/01/2026&lt;/td&gt;
 &lt;td&gt;Freedom call, Dragony&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;The Dome (upstairs)&lt;/td&gt;
 &lt;td&gt;£41&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Epica and Amaranthe&lt;/td&gt;
 &lt;td&gt;24/01/2026&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Apollo&lt;/td&gt;
 &lt;td&gt;£41&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Apparat&lt;/td&gt;
 &lt;td&gt;03/02/2026&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;HERE at outernet&lt;/td&gt;
 &lt;td&gt;£36.47&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Vacant b2b Sorrow b2b Beau&lt;/td&gt;
 &lt;td&gt;03/02/2026&lt;/td&gt;
 &lt;td&gt;Kori, Murphi, Zha&lt;/td&gt;
 &lt;td&gt;Fent plates first label night in 15y&lt;/td&gt;
 &lt;td&gt;peckham carpet shop&lt;/td&gt;
 &lt;td&gt;£10&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Visions of Atlantis x Warkings&lt;/td&gt;
 &lt;td&gt;11/02/2026&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;islington academy&lt;/td&gt;
 &lt;td&gt;£41&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;avatar&lt;/td&gt;
 &lt;td&gt;14/02/2026&lt;/td&gt;
 &lt;td&gt;alien weaponry&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;exhibition london&lt;/td&gt;
 &lt;td&gt;£40&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Viagra boys&lt;/td&gt;
 &lt;td&gt;06/03/2026&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;Ally pally&lt;/td&gt;
 &lt;td&gt;£43.16&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;</description><content:encoded><![CDATA[<h2 id="notes">notes:</h2>
<p>Quite fun to have put together</p>
<p>will continue to be updated</p>
<p>#todo - add missed/cancelled gigs (covid/etc) maybe in a diff table</p>
<h3 id="updates">updates:</h3>
<p>[2025-10-03]: the table markdown was a bit of a travesty, I&rsquo;ve tried to tidy it a little. I&rsquo;ve also added more gigs both past and present
[2025-11-08]: couple updates to gigs</p>
<h2 id="a-table-of-approximately-all-of-the-gigs-ive-ever-been-to">a table of approximately all of the gigs I&rsquo;ve ever been to</h2>
<table>
  <thead>
      <tr>
          <th>Artist</th>
          <th>When</th>
          <th>Support/lineup seen</th>
          <th>Notes</th>
          <th>Where</th>
          <th>Price</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>Various Cropredy festivals</td>
          <td>1995-1999</td>
          <td>Procol Harum, Wild willy barrett, Saw doctors, Edward II</td>
          <td></td>
          <td></td>
          <td></td>
      </tr>
      <tr>
          <td>Space</td>
          <td>25/05/1997</td>
          <td>Boo radleys, Teenage fanclub, Gorky&rsquo;s zygotic mynci, Beth orton, Sneaker pimps, etc</td>
          <td>The essential 97 music festival</td>
          <td>Stanmer Park, Brighton</td>
          <td></td>
      </tr>
      <tr>
          <td>Muse</td>
          <td>22/11/2006</td>
          <td>Noisettes</td>
          <td>Black holes and revelations tour</td>
          <td>Wembley Arena</td>
          <td></td>
      </tr>
      <tr>
          <td>Kasabian</td>
          <td>19/12/2006</td>
          <td>Fratellis</td>
          <td></td>
          <td>Earl&rsquo;s court</td>
          <td></td>
      </tr>
      <tr>
          <td>Muse</td>
          <td>16/06/2007</td>
          <td>Dirty Pretty Things, Rodrigo y Gabriella, The Streets</td>
          <td>H.A.A.R.P tour</td>
          <td>Wembley Stadium</td>
          <td></td>
      </tr>
      <tr>
          <td>Glastonbury 07</td>
          <td>22/06/2007</td>
          <td>Arctic Monkeys, gogol bordello, fratellis, bloc party, kasabian, magic numbers, the coral, the automatic</td>
          <td>memory hazy, probably saw some of them</td>
          <td>Worthy Farm</td>
          <td>£145</td>
      </tr>
      <tr>
          <td>Glastonbury 07</td>
          <td>23/06/2007</td>
          <td>rodrigo y gabriella, the kooks, dirty pretty things, CSS, klaxons, babyshambles, maximo park, editors, the bees</td>
          <td>memory hazy, probably saw some of them</td>
          <td>Worthy Farm</td>
          <td>above</td>
      </tr>
      <tr>
          <td>Glastonbury 07</td>
          <td>24/06/2007</td>
          <td>The Who, Kaiser Chiefs, KT tunstall, mark ronson, pendulum</td>
          <td>memory hazy, probably saw some of them</td>
          <td>Worthy Farm</td>
          <td>above</td>
      </tr>
      <tr>
          <td>Chemical brothers</td>
          <td>09/09/2007</td>
          <td>Calvin harris</td>
          <td>mum won tickets</td>
          <td>Trafalgar square</td>
          <td>£0</td>
      </tr>
      <tr>
          <td>Creamfields</td>
          <td>27/08/2011-28/08/2011</td>
          <td>Chemical brothers, Tiesto, Paul van dyk, Armin van buuren, magnetic man, katy b, example, joker, jaguar skills</td>
          <td>camping/2 days</td>
          <td>Daresbury, Cheshire</td>
          <td>£129.13</td>
      </tr>
      <tr>
          <td>Kyary Pamyu Pamyu</td>
          <td>29/04/2014</td>
          <td></td>
          <td></td>
          <td>Shepherds bush empire</td>
          <td></td>
      </tr>
      <tr>
          <td>Kanye West</td>
          <td>04/07/2014</td>
          <td>Pharrell, Basement Jaxx, Iggy Azalea</td>
          <td>Yeezus tour (Wireless festival)</td>
          <td>Finsbury Park</td>
          <td>£74.75</td>
      </tr>
      <tr>
          <td>Childish Gambino</td>
          <td>19/08/2014</td>
          <td></td>
          <td>deep web tour. there was some AR and voting experience but signal on phone was not working in the venue</td>
          <td>Brixton</td>
          <td>£22.57</td>
      </tr>
      <tr>
          <td>Deadmau5</td>
          <td>24/08/2014</td>
          <td>Skream, Netsky</td>
          <td>South west four</td>
          <td>clapham common</td>
          <td>£57.06</td>
      </tr>
      <tr>
          <td>Libertines</td>
          <td>28/09/2014</td>
          <td>circa waves</td>
          <td>I think he was late but not uber late</td>
          <td>Ally pally</td>
          <td></td>
      </tr>
      <tr>
          <td>SBTRKT</td>
          <td>02/10/2014</td>
          <td>denai moore, raury</td>
          <td></td>
          <td>Brixton academy</td>
          <td>£23.10</td>
      </tr>
      <tr>
          <td>Babymetal</td>
          <td>08/11/2014</td>
          <td></td>
          <td></td>
          <td>brixton academy</td>
          <td>£8.98</td>
      </tr>
      <tr>
          <td>Perfume</td>
          <td>12/11/2014</td>
          <td></td>
          <td></td>
          <td>Hammersmith apollo</td>
          <td>£31.90</td>
      </tr>
      <tr>
          <td>Run The Jewels</td>
          <td>12/12/2014</td>
          <td></td>
          <td></td>
          <td>KOKO</td>
          <td>£21.60</td>
      </tr>
      <tr>
          <td>Flying Lotus</td>
          <td>01/05/2015</td>
          <td>captain murphy set, jay electronica, shabazz palaces, lapalux</td>
          <td>MF Doom didn&rsquo;t show - jay electronica instead</td>
          <td>Brixton</td>
          <td>£29.50</td>
      </tr>
      <tr>
          <td>Massive Attack</td>
          <td>04/02/2016</td>
          <td></td>
          <td>mum won these tickets</td>
          <td>Brixton</td>
          <td>£0</td>
      </tr>
      <tr>
          <td>Kendrick Lamar</td>
          <td>02/07/2016</td>
          <td>Poliça, Kamasi Washington, Jamie XX, Florence and the machine, Blood Orange</td>
          <td>BST festival</td>
          <td>Hyde park</td>
          <td></td>
      </tr>
      <tr>
          <td>Chance the Rapper</td>
          <td>20/11/2016</td>
          <td>jay prince</td>
          <td>magnificent colouring world tour</td>
          <td>Brixton academy</td>
          <td>£28.50</td>
      </tr>
      <tr>
          <td>Throwing Snow</td>
          <td>10/02/2017</td>
          <td></td>
          <td></td>
          <td>Archspace Haggerston</td>
          <td>£9.35</td>
      </tr>
      <tr>
          <td>Sepultura</td>
          <td>02/03/2017</td>
          <td></td>
          <td></td>
          <td>Forum Kentish town</td>
          <td></td>
      </tr>
      <tr>
          <td>K.Flay</td>
          <td>27/06/2017</td>
          <td></td>
          <td></td>
          <td>Camden assembly</td>
          <td></td>
      </tr>
      <tr>
          <td>DJ Shadow</td>
          <td>07/10/2017</td>
          <td></td>
          <td>the mountain will fall tour</td>
          <td>Roundhouse</td>
          <td></td>
      </tr>
      <tr>
          <td>Steven wilson</td>
          <td>03/2018</td>
          <td></td>
          <td>to the bone tour</td>
          <td>RAH</td>
          <td></td>
      </tr>
      <tr>
          <td>Death in vegas</td>
          <td>27/07/2018</td>
          <td></td>
          <td></td>
          <td>Hangar</td>
          <td></td>
      </tr>
      <tr>
          <td>Mitski</td>
          <td>26/09/2018</td>
          <td>Eera</td>
          <td></td>
          <td>Shepherd&rsquo;s bush empire</td>
          <td>£21.20</td>
      </tr>
      <tr>
          <td>Pusha T</td>
          <td>12/12/2018</td>
          <td>Kojey Radical</td>
          <td>wore a suit, got complimented on wearing a suit</td>
          <td></td>
          <td>£32.87</td>
      </tr>
      <tr>
          <td>Flying Lotus</td>
          <td>15/12/2018</td>
          <td>Thundercat, Dorian concept, lapalux, ross from friends, iglooghost</td>
          <td>Brainfeeder X</td>
          <td>Brixton</td>
          <td>£42.95</td>
      </tr>
      <tr>
          <td>Jay Rock</td>
          <td>18/02/2019</td>
          <td></td>
          <td></td>
          <td>Electric Brixton</td>
          <td>£24.75</td>
      </tr>
      <tr>
          <td>MEUTE</td>
          <td>09/03/2019</td>
          <td></td>
          <td></td>
          <td>Jazz Cafe</td>
          <td>£18.70</td>
      </tr>
      <tr>
          <td>Chemical Brothers</td>
          <td>24/05/2019</td>
          <td>Hot Chip, Jon Hopkins, Little Dragon, Danny Brown, Little Simz, Imibio Sound Machine</td>
          <td>All points east 2019</td>
          <td>Victoria Park</td>
          <td>£69.25</td>
      </tr>
      <tr>
          <td>Madness</td>
          <td>22/06/2019</td>
          <td></td>
          <td>Day of races and madness</td>
          <td>Epsom racecourse</td>
          <td></td>
      </tr>
      <tr>
          <td>Thundercat</td>
          <td>04/08/2019</td>
          <td></td>
          <td>meltdown festival, he played stuff very fast which was technically very impressive but I didn&rsquo;t enjoy it</td>
          <td>Southbank Centre (royal festival hall)</td>
          <td>£31.50</td>
      </tr>
      <tr>
          <td>BBC Symphony orchestra</td>
          <td>12/11/2019</td>
          <td>&ldquo;Playing in the dark&rdquo; neil gaiman</td>
          <td></td>
          <td>Barbican</td>
          <td>£30.25</td>
      </tr>
      <tr>
          <td>Apparat</td>
          <td>04/12/2019</td>
          <td>telefon tel aviv</td>
          <td></td>
          <td>Roundhouse</td>
          <td>£30.25</td>
      </tr>
      <tr>
          <td>IDLES</td>
          <td>07/12/2019</td>
          <td></td>
          <td></td>
          <td>Ally pally</td>
          <td>£34</td>
      </tr>
      <tr>
          <td>Schoolboy Q</td>
          <td>28/01/2020</td>
          <td>Jay rock</td>
          <td>Greg threw up all over Dave&rsquo;s new jacket</td>
          <td>Brixton academy</td>
          <td>£41.63</td>
      </tr>
      <tr>
          <td>DJ Shadow</td>
          <td>29/02/2020</td>
          <td></td>
          <td></td>
          <td>Brixton academy</td>
          <td></td>
      </tr>
      <tr>
          <td>Green Day</td>
          <td>24/06/2022</td>
          <td>Weezer, Fall Out Boy</td>
          <td>hella mega tour, postponed from 2020 to 2021 to 2022. Was gutted to miss a lot of weezer in exchange for a terrible popeyes</td>
          <td>London Stadium</td>
          <td>£83.06</td>
      </tr>
      <tr>
          <td>Santana</td>
          <td>07/08/2022</td>
          <td>Earth Wind and Fire</td>
          <td></td>
          <td>Budweiser stage, toronto</td>
          <td>£83</td>
      </tr>
      <tr>
          <td>Saw doctors</td>
          <td>25/11/2022</td>
          <td>damian dempsey</td>
          <td></td>
          <td>Brixton academy</td>
          <td></td>
      </tr>
      <tr>
          <td>Mountbatten festival of music</td>
          <td>10/03/2023</td>
          <td></td>
          <td>work gave us free tickets, the king was there</td>
          <td>RAH</td>
          <td>£0</td>
      </tr>
      <tr>
          <td>Rival Consoles</td>
          <td>27/05/2023</td>
          <td>hainbach</td>
          <td>4 gigs and a funeral week start</td>
          <td>Barbican</td>
          <td></td>
      </tr>
      <tr>
          <td>Beyonce</td>
          <td>29/05/2023</td>
          <td></td>
          <td></td>
          <td>Tottenham Stadium</td>
          <td></td>
      </tr>
      <tr>
          <td>Sparks</td>
          <td>30/05/2023</td>
          <td></td>
          <td></td>
          <td>RAH</td>
          <td></td>
      </tr>
      <tr>
          <td>Otway and Barrett</td>
          <td>01/06/2023</td>
          <td></td>
          <td>4 gigs and a funeral week end</td>
          <td>CryerArts centre carshalton</td>
          <td></td>
      </tr>
      <tr>
          <td>Tenacious D</td>
          <td>16/06/2023</td>
          <td>steel beans</td>
          <td></td>
          <td>O2</td>
          <td>£57.75</td>
      </tr>
      <tr>
          <td>John otway</td>
          <td>04/08/2023</td>
          <td>beer festival</td>
          <td></td>
          <td>olympia</td>
          <td></td>
      </tr>
      <tr>
          <td>Aphex twin</td>
          <td>19/08/2023</td>
          <td>Arca, Fever Ray, Actress</td>
          <td>Skipped bonobo and moderat due to clashes :( (all points east)</td>
          <td>Victoria park</td>
          <td>£58.35</td>
      </tr>
      <tr>
          <td>Max Richter</td>
          <td>06/09/2023</td>
          <td></td>
          <td>prom (vivaldi&rsquo;s four seasons)</td>
          <td>RAH</td>
          <td></td>
      </tr>
      <tr>
          <td>James Blake</td>
          <td>28/09/2023</td>
          <td></td>
          <td></td>
          <td></td>
          <td></td>
      </tr>
      <tr>
          <td>Old crow medicine show</td>
          <td>30/10/2023</td>
          <td>Willie watson</td>
          <td></td>
          <td>Hammersmith apollo</td>
          <td>£49.50</td>
      </tr>
      <tr>
          <td>Tangerine Dream</td>
          <td>08/11/2023</td>
          <td></td>
          <td></td>
          <td>Palladium</td>
          <td></td>
      </tr>
      <tr>
          <td>Max cooper</td>
          <td>02/12/2023</td>
          <td></td>
          <td>3d/av</td>
          <td>EartH Hackney</td>
          <td>£23.46</td>
      </tr>
      <tr>
          <td>Foo Fighters</td>
          <td>20/06/2024</td>
          <td>Wet leg</td>
          <td></td>
          <td>London Stadium</td>
          <td>£93.67</td>
      </tr>
      <tr>
          <td>Linkin Park</td>
          <td>24/09/2024</td>
          <td></td>
          <td></td>
          <td></td>
          <td>£126</td>
      </tr>
      <tr>
          <td>Hot Chip (DJ Set)</td>
          <td>10/10/2024</td>
          <td></td>
          <td>Coming on strongerer release, included a CD in price.</td>
          <td>Rough trade east</td>
          <td>£9.50</td>
      </tr>
      <tr>
          <td>Alice Cooper</td>
          <td>20/10/2024</td>
          <td></td>
          <td></td>
          <td>Hammersmith apollo</td>
          <td></td>
      </tr>
      <tr>
          <td>Ruthven</td>
          <td>25/10/2024</td>
          <td></td>
          <td></td>
          <td>Peckham Audio</td>
          <td>£13.82</td>
      </tr>
      <tr>
          <td>Black Pumas</td>
          <td>29/10/2024</td>
          <td></td>
          <td></td>
          <td>RAH</td>
          <td></td>
      </tr>
      <tr>
          <td>IDLES</td>
          <td>30/11/2024</td>
          <td>Battles, Lambrini girls</td>
          <td></td>
          <td>Ally Pally</td>
          <td></td>
      </tr>
      <tr>
          <td>Killer Mike &amp; Dave Chappelle</td>
          <td>04/12/2024</td>
          <td>Remi wolf</td>
          <td>Seated</td>
          <td>Fairfield Halls</td>
          <td>£136.93</td>
      </tr>
      <tr>
          <td>Algorhythms</td>
          <td>05/02/2025</td>
          <td></td>
          <td>#pastagang</td>
          <td>peckham carpet shop</td>
          <td>£0</td>
      </tr>
      <tr>
          <td>Pye corner audio</td>
          <td>08/02/2025</td>
          <td>Loula Yorke</td>
          <td>Standing</td>
          <td>Rich mix bethnal green</td>
          <td>£17.99</td>
      </tr>
      <tr>
          <td>Justice</td>
          <td>12/02/2025</td>
          <td>Busy P, Erol Alkan, Kelly lee owens</td>
          <td></td>
          <td>Ally Pally</td>
          <td>£55.85</td>
      </tr>
      <tr>
          <td>Bowling for soup</td>
          <td>14/02/2025</td>
          <td>Wheatus, magnolia park</td>
          <td></td>
          <td>Brighton</td>
          <td></td>
      </tr>
      <tr>
          <td>Algorhythms</td>
          <td>05/03/2025</td>
          <td></td>
          <td>#pastagang</td>
          <td>peckham carpet shop</td>
          <td>£0</td>
      </tr>
      <tr>
          <td>Dead south</td>
          <td>20/03/2025</td>
          <td>Corb lund</td>
          <td></td>
          <td>Hammersmith apollo</td>
          <td></td>
      </tr>
      <tr>
          <td>Algorave</td>
          <td>09/04/2025</td>
          <td></td>
          <td>#pastagang</td>
          <td>Corsica studios</td>
          <td>£7</td>
      </tr>
      <tr>
          <td>Tyler, the creator</td>
          <td>21/05/2025</td>
          <td>Lil Yachty, Paris Texas</td>
          <td>golden circle</td>
          <td>O2 arena</td>
          <td>£146.60</td>
      </tr>
      <tr>
          <td>Algorhythms</td>
          <td>04/06/2025</td>
          <td></td>
          <td><a href="https://bsky.app/profile/mtrc.bsky.social/post/3lqsp2qk33c2r">eggg visual set 8pm</a></td>
          <td>peckham carpet shop</td>
          <td>£0</td>
      </tr>
      <tr>
          <td>Zimmer vs williams</td>
          <td>08/06/2025</td>
          <td></td>
          <td></td>
          <td>RAH</td>
          <td></td>
      </tr>
      <tr>
          <td>Nine inch nails</td>
          <td>18/06/2025</td>
          <td></td>
          <td>Standing</td>
          <td>O2</td>
          <td>£91.35</td>
      </tr>
      <tr>
          <td>Sparks</td>
          <td>19/06/2025</td>
          <td></td>
          <td></td>
          <td>Hammersmith</td>
          <td></td>
      </tr>
      <tr>
          <td>Linkin Park</td>
          <td>28/06/2025</td>
          <td></td>
          <td>Standing (LPU pit)</td>
          <td>Wembley Stadium</td>
          <td>£153.92</td>
      </tr>
      <tr>
          <td>Algorhythms</td>
          <td>02/07/2025</td>
          <td></td>
          <td><a href="../../hydra/3">eggg visual set</a></td>
          <td>peckham carpet shop</td>
          <td>£0</td>
      </tr>
      <tr>
          <td>Algorave</td>
          <td>11/07/2025</td>
          <td></td>
          <td></td>
          <td>Science Gallery</td>
          <td>£0</td>
      </tr>
      <tr>
          <td>Kaiser Chiefs</td>
          <td>19/07/2025</td>
          <td></td>
          <td>Standing</td>
          <td>Ally Pally</td>
          <td>£58.69</td>
      </tr>
      <tr>
          <td>Prom: from dark till dawn</td>
          <td>08/08/2025</td>
          <td>Anna lapwood curated and conducted</td>
          <td>starts at 11pm through to 7am</td>
          <td>RAH</td>
          <td>£20</td>
      </tr>
      <tr>
          <td>Rhapsody of fire</td>
          <td>20/09/2025</td>
          <td>enforcer, striker, witherfall</td>
          <td>Twisted my ankle in the pit</td>
          <td>the garrison, toronto</td>
          <td>CAD$45</td>
      </tr>
      <tr>
          <td>Al Stewart</td>
          <td>15/10/2025</td>
          <td></td>
          <td></td>
          <td></td>
          <td></td>
      </tr>
      <tr>
          <td>UNKLE</td>
          <td>24/10/2025</td>
          <td></td>
          <td>Rōnin Live:3D:FX</td>
          <td></td>
          <td>£42.50</td>
      </tr>
      <tr>
          <td>Gogol bordello</td>
          <td>01/11/2025</td>
          <td></td>
          <td>Missed this one</td>
          <td>Electric ballroom</td>
          <td>£42</td>
      </tr>
      <tr>
          <td>Algorhythms</td>
          <td>05/11/2025</td>
          <td></td>
          <td><a href="../../hydra/3">eggg visual set</a></td>
          <td>peckham carpet shop</td>
          <td>£0</td>
      </tr>
      <tr>
          <td>Pendulum</td>
          <td>07/11/2025</td>
          <td></td>
          <td></td>
          <td>Brixton academy</td>
          <td>£0</td>
      </tr>
      <tr>
          <td>Pye corner audio</td>
          <td>08/11/2025</td>
          <td>The silver field</td>
          <td>ambient set</td>
          <td>St John on bethnal green</td>
          <td>£22</td>
      </tr>
      <tr>
          <td>ΛLGØΓΛVΞ (algorave)</td>
          <td>05/11/2025</td>
          <td>boggo, bundy, collapse, everysongiown,  hellocatfood, hmurd, ideoforms, liimxa, James Holden, Jane_, joana.art, JoeyJoeyJoe, madchen11111, m̶a̶h̶[alias], MYNA, Nadya via Proxy, #pastagang, portal_.aura, The Printer Jam, Rumblesan, Shankar Saanthakumar, SYNTƏL8, todepond, ulysses.codes, Yaxu</td>
          <td><a href="https://ra.co/events/2280905">event page</a></td>
          <td>Corsica studios</td>
          <td>£5.5</td>
      </tr>
      <tr>
          <td>Ensiferum</td>
          <td>11/01/2026</td>
          <td>Freedom call, Dragony</td>
          <td></td>
          <td>The Dome (upstairs)</td>
          <td>£41</td>
      </tr>
      <tr>
          <td>Epica and Amaranthe</td>
          <td>24/01/2026</td>
          <td></td>
          <td></td>
          <td>Apollo</td>
          <td>£41</td>
      </tr>
      <tr>
          <td>Apparat</td>
          <td>03/02/2026</td>
          <td></td>
          <td></td>
          <td>HERE at outernet</td>
          <td>£36.47</td>
      </tr>
      <tr>
          <td>Vacant b2b Sorrow b2b Beau</td>
          <td>03/02/2026</td>
          <td>Kori, Murphi, Zha</td>
          <td>Fent plates first label night in 15y</td>
          <td>peckham carpet shop</td>
          <td>£10</td>
      </tr>
      <tr>
          <td>Visions of Atlantis x Warkings</td>
          <td>11/02/2026</td>
          <td></td>
          <td></td>
          <td>islington academy</td>
          <td>£41</td>
      </tr>
      <tr>
          <td>avatar</td>
          <td>14/02/2026</td>
          <td>alien weaponry</td>
          <td></td>
          <td>exhibition london</td>
          <td>£40</td>
      </tr>
      <tr>
          <td>Viagra boys</td>
          <td>06/03/2026</td>
          <td></td>
          <td></td>
          <td>Ally pally</td>
          <td>£43.16</td>
      </tr>
  </tbody>
</table>
]]></content:encoded></item><item><title>hydra cheatsheet</title><link>https://eggg.uk/hydra/cheatsheet/</link><pubDate>Fri, 18 Apr 2025 00:00:00 +0000</pubDate><guid>https://eggg.uk/hydra/cheatsheet/</guid><description>&lt;h3 id="api"&gt;API&lt;/h3&gt;
&lt;p&gt;&lt;a href="https://hydra.ojack.xyz/api/"&gt;the API reference is a fabulous resource&lt;/a&gt;&lt;/p&gt;
&lt;h3 id="important-note"&gt;important note&lt;/h3&gt;
&lt;p&gt;&lt;code&gt;colorama()&lt;/code&gt; is a mystery&lt;/p&gt;
&lt;h3 id="learning"&gt;learning&lt;/h3&gt;
&lt;p&gt;Honestly the thing which has helped me the most in learning these tools is spending time participating on &lt;a href="https://nudel.cc"&gt;nudel.cc&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;If you&amp;rsquo;re not familiar, you should first visit &lt;a href="https://www.pastagang.cc/"&gt;pastagang.cc&lt;/a&gt; which should tell you a bit about all this&lt;/p&gt;
&lt;h3 id="some-examples"&gt;Some examples:&lt;/h3&gt;
&lt;p&gt;&lt;a href="../1"&gt;example 1&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="../2"&gt;example 2&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="../3"&gt;example 3&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://eggg.uk/hydra"&gt;more&lt;/a&gt;&lt;/p&gt;</description><content:encoded><![CDATA[<h3 id="api">API</h3>
<p><a href="https://hydra.ojack.xyz/api/">the API reference is a fabulous resource</a></p>
<h3 id="important-note">important note</h3>
<p><code>colorama()</code> is a mystery</p>
<h3 id="learning">learning</h3>
<p>Honestly the thing which has helped me the most in learning these tools is spending time participating on <a href="https://nudel.cc">nudel.cc</a></p>
<p>If you&rsquo;re not familiar, you should first visit <a href="https://www.pastagang.cc/">pastagang.cc</a> which should tell you a bit about all this</p>
<h3 id="some-examples">Some examples:</h3>
<p><a href="../1">example 1</a></p>
<p><a href="../2">example 2</a></p>
<p><a href="../3">example 3</a></p>
<p><a href="/hydra">more</a></p>
]]></content:encoded></item><item><title>hydra visual synth 1</title><link>https://eggg.uk/hydra/1/</link><pubDate>Fri, 18 Apr 2025 00:00:00 +0000</pubDate><guid>https://eggg.uk/hydra/1/</guid><description>&lt;h2 id="example"&gt;example&lt;/h2&gt;





&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-js" data-lang="js"&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 1&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="nx"&gt;osc&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mf"&gt;2.5&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mf"&gt;2.5&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mf"&gt;0.75&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 2&lt;/span&gt;&lt;span class="cl"&gt;	&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;rotate&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 3&lt;/span&gt;&lt;span class="cl"&gt;	&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;kaleid&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 4&lt;/span&gt;&lt;span class="cl"&gt;	&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;out&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;o0&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 5&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="nx"&gt;osc&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mf"&gt;0.2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 6&lt;/span&gt;&lt;span class="cl"&gt;	&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;pixelate&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mf"&gt;194.044&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;100&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 7&lt;/span&gt;&lt;span class="cl"&gt;	&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;out&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;o1&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 8&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="nx"&gt;src&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;o0&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 9&lt;/span&gt;&lt;span class="cl"&gt;	&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;mult&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;o1&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;10&lt;/span&gt;&lt;span class="cl"&gt;	&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;kaleid&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;8&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;11&lt;/span&gt;&lt;span class="cl"&gt;	&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;out&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;o2&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;12&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="nx"&gt;src&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;o2&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;13&lt;/span&gt;&lt;span class="cl"&gt;	&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;mult&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;o2&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;14&lt;/span&gt;&lt;span class="cl"&gt;	&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;modulatePixelate&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;o2&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;15&lt;/span&gt;&lt;span class="cl"&gt;	&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;out&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;o3&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;16&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="nx"&gt;render&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;o3&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;script src="https://cdn.jsdelivr.net/npm/hydra-synth/dist/hydra-synth.js"&gt;&lt;/script&gt;
&lt;script&gt;
var hydra = new Hydra({detectAudio: false})
osc(2.5, 2.5, 0.75)
	.rotate(5, 5)
	.kaleid(5)
	.out(o0);
osc(-10, 0.2, 1)
	.pixelate(194.044, 100)
	.out(o1);
src(o0)
	.mult(o1)
	.kaleid(8)
	.out(o2);
src(o2)
	.mult(o2)
	.modulatePixelate(o2)
	.out(o3);
render(o3);
&lt;/script&gt;</description><content:encoded><![CDATA[<h2 id="example">example</h2>





<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-js" data-lang="js"><span class="line"><span class="ln"> 1</span><span class="cl"><span class="nx">osc</span><span class="p">(</span><span class="mf">2.5</span><span class="p">,</span> <span class="mf">2.5</span><span class="p">,</span> <span class="mf">0.75</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 2</span><span class="cl">	<span class="p">.</span><span class="nx">rotate</span><span class="p">(</span><span class="mi">5</span><span class="p">,</span> <span class="mi">5</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 3</span><span class="cl">	<span class="p">.</span><span class="nx">kaleid</span><span class="p">(</span><span class="mi">5</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 4</span><span class="cl">	<span class="p">.</span><span class="nx">out</span><span class="p">(</span><span class="nx">o0</span><span class="p">);</span>
</span></span><span class="line"><span class="ln"> 5</span><span class="cl"><span class="nx">osc</span><span class="p">(</span><span class="o">-</span><span class="mi">10</span><span class="p">,</span> <span class="mf">0.2</span><span class="p">,</span> <span class="mi">1</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 6</span><span class="cl">	<span class="p">.</span><span class="nx">pixelate</span><span class="p">(</span><span class="mf">194.044</span><span class="p">,</span> <span class="mi">100</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 7</span><span class="cl">	<span class="p">.</span><span class="nx">out</span><span class="p">(</span><span class="nx">o1</span><span class="p">);</span>
</span></span><span class="line"><span class="ln"> 8</span><span class="cl"><span class="nx">src</span><span class="p">(</span><span class="nx">o0</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 9</span><span class="cl">	<span class="p">.</span><span class="nx">mult</span><span class="p">(</span><span class="nx">o1</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">10</span><span class="cl">	<span class="p">.</span><span class="nx">kaleid</span><span class="p">(</span><span class="mi">8</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">11</span><span class="cl">	<span class="p">.</span><span class="nx">out</span><span class="p">(</span><span class="nx">o2</span><span class="p">);</span>
</span></span><span class="line"><span class="ln">12</span><span class="cl"><span class="nx">src</span><span class="p">(</span><span class="nx">o2</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">13</span><span class="cl">	<span class="p">.</span><span class="nx">mult</span><span class="p">(</span><span class="nx">o2</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">14</span><span class="cl">	<span class="p">.</span><span class="nx">modulatePixelate</span><span class="p">(</span><span class="nx">o2</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">15</span><span class="cl">	<span class="p">.</span><span class="nx">out</span><span class="p">(</span><span class="nx">o3</span><span class="p">);</span>
</span></span><span class="line"><span class="ln">16</span><span class="cl"><span class="nx">render</span><span class="p">(</span><span class="nx">o3</span><span class="p">);</span></span></span></code></pre></div><script src="https://cdn.jsdelivr.net/npm/hydra-synth/dist/hydra-synth.js"></script>
<script>
var hydra = new Hydra({detectAudio: false})
osc(2.5, 2.5, 0.75)
	.rotate(5, 5)
	.kaleid(5)
	.out(o0);
osc(-10, 0.2, 1)
	.pixelate(194.044, 100)
	.out(o1);
src(o0)
	.mult(o1)
	.kaleid(8)
	.out(o2);
src(o2)
	.mult(o2)
	.modulatePixelate(o2)
	.out(o3);
render(o3);
</script>
]]></content:encoded></item><item><title>hydra visual synth 2</title><link>https://eggg.uk/hydra/2/</link><pubDate>Fri, 18 Apr 2025 00:00:00 +0000</pubDate><guid>https://eggg.uk/hydra/2/</guid><description>&lt;h2 id="dark-void-hole-by-pastagang"&gt;dark void hole by pastagang&lt;/h2&gt;





&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-js" data-lang="js"&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 1&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;//works better landscape
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 2&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;// I must enter the dark void hole
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 3&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;&lt;/span&gt;&lt;span class="nx"&gt;voronoi&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;18&lt;/span&gt;&lt;span class="p"&gt;,.&lt;/span&gt;&lt;span class="mi"&gt;05&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;0.1&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 4&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;scrollX&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;200&lt;/span&gt;&lt;span class="p"&gt;,.&lt;/span&gt;&lt;span class="mi"&gt;001&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 5&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;modulateKaleid&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;osc&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mf"&gt;3.5&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mf"&gt;0.1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nx"&gt;kaleid&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;99&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="c1"&gt;// thou shall not
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 6&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;modulateScale&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;noise&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;6&lt;/span&gt;&lt;span class="p"&gt;,.&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nx"&gt;mask&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;shape&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;99&lt;/span&gt;&lt;span class="p"&gt;,.&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;,.&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;)),.&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="c1"&gt;// break the symmetry but only inside the circle
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 7&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;mult&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;shape&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;99&lt;/span&gt;&lt;span class="p"&gt;,.&lt;/span&gt;&lt;span class="mi"&gt;5&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt; &lt;span class="c1"&gt;// dark outside
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 8&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;mult&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;shape&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;99&lt;/span&gt;&lt;span class="p"&gt;,.&lt;/span&gt;&lt;span class="mi"&gt;0001&lt;/span&gt;&lt;span class="p"&gt;,.&lt;/span&gt;&lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nx"&gt;invert&lt;/span&gt;&lt;span class="p"&gt;())&lt;/span&gt; &lt;span class="c1"&gt;// dark center
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt; 9&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;colorama&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mf"&gt;0.16&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;10&lt;/span&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;11&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;// bagel
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;12&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;shape&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;80&lt;/span&gt;&lt;span class="p"&gt;,.&lt;/span&gt;&lt;span class="mi"&gt;65&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nx"&gt;sub&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;shape&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;99&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;0.5&lt;/span&gt;&lt;span class="p"&gt;)).&lt;/span&gt;&lt;span class="nx"&gt;modulate&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;noise&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;8&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mf"&gt;0.41&lt;/span&gt;&lt;span class="p"&gt;),&lt;/span&gt;&lt;span class="mf"&gt;0.1&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;13&lt;/span&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;14&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;scale&lt;/span&gt;&lt;span class="p"&gt;(.&lt;/span&gt;&lt;span class="mi"&gt;9&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;9&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="mi"&gt;16&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;15&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;blend&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;o0&lt;/span&gt;&lt;span class="p"&gt;,.&lt;/span&gt;&lt;span class="mi"&gt;99&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="ln"&gt;16&lt;/span&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;out&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;script src="https://cdn.jsdelivr.net/npm/hydra-synth/dist/hydra-synth.js"&gt;&lt;/script&gt;
&lt;script&gt;
var hydra = new Hydra({detectAudio: false})
//works better landscape
// I must enter the dark void hole
voronoi(18,.05,0.1)
.scrollX(200,.001)
.modulateKaleid(osc(3.5,-0.1,5).kaleid(99),2) // thou shall not
.modulateScale(noise(6,.1).mask(shape(99,.4,.2)),.2) // break the symmetry but only inside the circle
.mult(shape(99,.5, 1)) // dark outside
.mult(shape(99,.0001,.3).invert()) // dark center
.colorama(-0.16)

// bagel
.add(shape(80,.65).sub(shape(99,0.5)).modulate(noise(8,0.41),0.1))

.scale(.9,9/16)
.blend(o0,.99)
.out()
&lt;/script&gt;</description><content:encoded><![CDATA[<h2 id="dark-void-hole-by-pastagang">dark void hole by pastagang</h2>





<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-js" data-lang="js"><span class="line"><span class="ln"> 1</span><span class="cl"><span class="c1">//works better landscape
</span></span></span><span class="line"><span class="ln"> 2</span><span class="cl"><span class="c1">// I must enter the dark void hole
</span></span></span><span class="line"><span class="ln"> 3</span><span class="cl"><span class="c1"></span><span class="nx">voronoi</span><span class="p">(</span><span class="mi">18</span><span class="p">,.</span><span class="mi">05</span><span class="p">,</span><span class="mf">0.1</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 4</span><span class="cl"><span class="p">.</span><span class="nx">scrollX</span><span class="p">(</span><span class="mi">200</span><span class="p">,.</span><span class="mi">001</span><span class="p">)</span>
</span></span><span class="line"><span class="ln"> 5</span><span class="cl"><span class="p">.</span><span class="nx">modulateKaleid</span><span class="p">(</span><span class="nx">osc</span><span class="p">(</span><span class="mf">3.5</span><span class="p">,</span><span class="o">-</span><span class="mf">0.1</span><span class="p">,</span><span class="mi">5</span><span class="p">).</span><span class="nx">kaleid</span><span class="p">(</span><span class="mi">99</span><span class="p">),</span><span class="mi">2</span><span class="p">)</span> <span class="c1">// thou shall not
</span></span></span><span class="line"><span class="ln"> 6</span><span class="cl"><span class="c1"></span><span class="p">.</span><span class="nx">modulateScale</span><span class="p">(</span><span class="nx">noise</span><span class="p">(</span><span class="mi">6</span><span class="p">,.</span><span class="mi">1</span><span class="p">).</span><span class="nx">mask</span><span class="p">(</span><span class="nx">shape</span><span class="p">(</span><span class="mi">99</span><span class="p">,.</span><span class="mi">4</span><span class="p">,.</span><span class="mi">2</span><span class="p">)),.</span><span class="mi">2</span><span class="p">)</span> <span class="c1">// break the symmetry but only inside the circle
</span></span></span><span class="line"><span class="ln"> 7</span><span class="cl"><span class="c1"></span><span class="p">.</span><span class="nx">mult</span><span class="p">(</span><span class="nx">shape</span><span class="p">(</span><span class="mi">99</span><span class="p">,.</span><span class="mi">5</span><span class="p">,</span> <span class="mi">1</span><span class="p">))</span> <span class="c1">// dark outside
</span></span></span><span class="line"><span class="ln"> 8</span><span class="cl"><span class="c1"></span><span class="p">.</span><span class="nx">mult</span><span class="p">(</span><span class="nx">shape</span><span class="p">(</span><span class="mi">99</span><span class="p">,.</span><span class="mi">0001</span><span class="p">,.</span><span class="mi">3</span><span class="p">).</span><span class="nx">invert</span><span class="p">())</span> <span class="c1">// dark center
</span></span></span><span class="line"><span class="ln"> 9</span><span class="cl"><span class="c1"></span><span class="p">.</span><span class="nx">colorama</span><span class="p">(</span><span class="o">-</span><span class="mf">0.16</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">10</span><span class="cl">
</span></span><span class="line"><span class="ln">11</span><span class="cl"><span class="c1">// bagel
</span></span></span><span class="line"><span class="ln">12</span><span class="cl"><span class="c1"></span><span class="p">.</span><span class="nx">add</span><span class="p">(</span><span class="nx">shape</span><span class="p">(</span><span class="mi">80</span><span class="p">,.</span><span class="mi">65</span><span class="p">).</span><span class="nx">sub</span><span class="p">(</span><span class="nx">shape</span><span class="p">(</span><span class="mi">99</span><span class="p">,</span><span class="mf">0.5</span><span class="p">)).</span><span class="nx">modulate</span><span class="p">(</span><span class="nx">noise</span><span class="p">(</span><span class="mi">8</span><span class="p">,</span><span class="mf">0.41</span><span class="p">),</span><span class="mf">0.1</span><span class="p">))</span>
</span></span><span class="line"><span class="ln">13</span><span class="cl">
</span></span><span class="line"><span class="ln">14</span><span class="cl"><span class="p">.</span><span class="nx">scale</span><span class="p">(.</span><span class="mi">9</span><span class="p">,</span><span class="mi">9</span><span class="o">/</span><span class="mi">16</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">15</span><span class="cl"><span class="p">.</span><span class="nx">blend</span><span class="p">(</span><span class="nx">o0</span><span class="p">,.</span><span class="mi">99</span><span class="p">)</span>
</span></span><span class="line"><span class="ln">16</span><span class="cl"><span class="p">.</span><span class="nx">out</span><span class="p">()</span></span></span></code></pre></div><script src="https://cdn.jsdelivr.net/npm/hydra-synth/dist/hydra-synth.js"></script>
<script>
var hydra = new Hydra({detectAudio: false})
//works better landscape
// I must enter the dark void hole
voronoi(18,.05,0.1)
.scrollX(200,.001)
.modulateKaleid(osc(3.5,-0.1,5).kaleid(99),2) // thou shall not
.modulateScale(noise(6,.1).mask(shape(99,.4,.2)),.2) // break the symmetry but only inside the circle
.mult(shape(99,.5, 1)) // dark outside
.mult(shape(99,.0001,.3).invert()) // dark center
.colorama(-0.16)

// bagel
.add(shape(80,.65).sub(shape(99,0.5)).modulate(noise(8,0.41),0.1))

.scale(.9,9/16)
.blend(o0,.99)
.out()
</script>
]]></content:encoded></item><item><title>strudel synth 1</title><link>https://eggg.uk/strudel/1/</link><pubDate>Fri, 18 Apr 2025 00:00:00 +0000</pubDate><guid>https://eggg.uk/strudel/1/</guid><description>&lt;h2 id="example"&gt;example&lt;/h2&gt;
&lt;iframe
src="https://strudel.cc/#Ly8gIndoYXQgaXMgZXZlbiBoYXBwZW5pbmciIEBieSBlZ2dnCnNldGNwbSgxNDAvNCkKCiQ6IG5vdGUoIjxjMyBlMz4gLSAgPFtnMyxlMiBdIGM0PiAtIikKLnBseSgyKQoubGVnYXRvKDEuNzUpCi50cmFuc3Bvc2UoIjAsIDMgLTchNCIpCi5zKCJzdXBlcnNhdyIpCi5vZmYocmFuZC5yYW5nZSguNSwuNzUpLG49Pm4uYWRkKCItIDxjMiBlMj4iKS5wbHkoNCkubGVnYXRvKDYpKQouYWRkKCIgZzUgIGc1ICIpCi5zdGVwcyhyYW5kLnJhbmdlKDIsNCkpCi5yYXJlbHkobj0%2Bbi5kZWdyYWRlKCkpCi5scGYoMjAwMCkKLmdhaW4oLjI1KQoKJDogcygiPGJkITg%2BIDxbLSBsdF0%2BICIpLmJhbmsoImFrYWltcGM2MCIpLmdhaW4oLjc1KS5mYXN0KDEpLnN3aW5nKDEvMykuc3BlZWQoMSkKLnJhcmVseSh4PT54LnBseSgzKSk%3D"
width="900"
height="900"
&gt;&lt;/iframe&gt;</description><content:encoded>&lt;h2 id="example">example&lt;/h2>
&lt;iframe
src="https://strudel.cc/#Ly8gIndoYXQgaXMgZXZlbiBoYXBwZW5pbmciIEBieSBlZ2dnCnNldGNwbSgxNDAvNCkKCiQ6IG5vdGUoIjxjMyBlMz4gLSAgPFtnMyxlMiBdIGM0PiAtIikKLnBseSgyKQoubGVnYXRvKDEuNzUpCi50cmFuc3Bvc2UoIjAsIDMgLTchNCIpCi5zKCJzdXBlcnNhdyIpCi5vZmYocmFuZC5yYW5nZSguNSwuNzUpLG49Pm4uYWRkKCItIDxjMiBlMj4iKS5wbHkoNCkubGVnYXRvKDYpKQouYWRkKCIgZzUgIGc1ICIpCi5zdGVwcyhyYW5kLnJhbmdlKDIsNCkpCi5yYXJlbHkobj0%2Bbi5kZWdyYWRlKCkpCi5scGYoMjAwMCkKLmdhaW4oLjI1KQoKJDogcygiPGJkITg%2BIDxbLSBsdF0%2BICIpLmJhbmsoImFrYWltcGM2MCIpLmdhaW4oLjc1KS5mYXN0KDEpLnN3aW5nKDEvMykuc3BlZWQoMSkKLnJhcmVseSh4PT54LnBseSgzKSk%3D"
width="900"
height="900"
>&lt;/iframe></content:encoded></item><item><title>hydra and strudel</title><link>https://eggg.uk/blog/2025-03-28-hydrastrudel/</link><pubDate>Fri, 28 Mar 2025 00:00:00 +0000</pubDate><guid>https://eggg.uk/blog/2025-03-28-hydrastrudel/</guid><description>&lt;p&gt;Have spent a bunch of time this month on Nudel, Strudel, and Hydra.&lt;/p&gt;
&lt;p&gt;Reading docs, playing around, having a good time.&lt;/p&gt;
&lt;p&gt;Inspired, obviously, by algorave/jams I&amp;rsquo;ve been going to and joining in a little bit at.&lt;/p&gt;
&lt;p&gt;Gonna write my own personal cheat sheet for each tool, since wading through the docs is sometimes a bit slow at the moment!&lt;/p&gt;
&lt;p&gt;If you click through on these you&amp;rsquo;ll see further posts about them&lt;/p&gt;</description><content:encoded><![CDATA[<p>Have spent a bunch of time this month on Nudel, Strudel, and Hydra.</p>
<p>Reading docs, playing around, having a good time.</p>
<p>Inspired, obviously, by algorave/jams I&rsquo;ve been going to and joining in a little bit at.</p>
<p>Gonna write my own personal cheat sheet for each tool, since wading through the docs is sometimes a bit slow at the moment!</p>
<p>If you click through on these you&rsquo;ll see further posts about them</p>
<p><a href="/strudel">strudel</a></p>
<p><a href="/hydra">hydra</a></p>
<ul>
<li>now contains some live set outputs / notes :)</li>
</ul>
]]></content:encoded></item><item><title/><link>https://eggg.uk/56/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://eggg.uk/56/</guid><description/><content:encoded></content:encoded></item></channel></rss>