<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Notes on Bill Glover</title>
    <link>https://billglover.me/notes/</link>
    <description>Recent content in Notes on Bill Glover</description>
    <generator>Hugo</generator>
    <language>en-gb</language>
    <managingEditor>hello@bill.dev (Bill)</managingEditor>
    <webMaster>hello@bill.dev (Bill)</webMaster>
    <lastBuildDate>Fri, 06 Feb 2026 18:01:37 +0000</lastBuildDate>
    <atom:link href="https://billglover.me/notes/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title></title>
      <link>https://billglover.me/notes/20260206t133836/</link>
      <pubDate>Fri, 06 Feb 2026 13:38:37 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/20260206t133836/</guid>
      <description>&lt;p&gt;AI coding agents are crude, but also beautifully simple. I&amp;rsquo;ve noticed a couple of things when working with both Antigravity and Claude Code. Their approach to debugging, or figuring out how to implement something involves dumping things into the context. This is why you often see coding agents adding &lt;code&gt;fmt.Println()&lt;/code&gt; statements everywhere, running the code, and then subsequently removing them. This is how the agent &amp;ldquo;sees&amp;rdquo; what is going on.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Agent Skills</title>
      <link>https://billglover.me/notes/20260126t195342/</link>
      <pubDate>Mon, 26 Jan 2026 19:53:43 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/20260126t195342/</guid>
      <description>&lt;p&gt;After seeing an ex-colleague release details of their AI second brain, I was curious. Not because I want to outsource the process of note taking, but because I wanted to know how he had any confidence in this process at all.&lt;/p&gt;&#xA;&lt;p&gt;A quick look at their &lt;a href=&#34;https://github.com/alexandreroman/second-brain-template&#34;&gt;git repository&lt;/a&gt; shows very little code beyond some Python helper scripts for requesting page summaries from Gemini. I had questions:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Why did they require Google&amp;rsquo;s &lt;a href=&#34;https://antigravity.google&#34;&gt;Antigravity&lt;/a&gt; to run the workflow?&lt;/li&gt;&#xA;&lt;li&gt;Why was there no coordination code?&lt;/li&gt;&#xA;&lt;li&gt;Why couldn&amp;rsquo;t I use a local model for this?&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;At the heart of the workflow are &lt;a href=&#34;https://agentskills.io&#34;&gt;Agent Skills&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Me, Myself &amp; I</title>
      <link>https://billglover.me/notes/20260123t141417/</link>
      <pubDate>Fri, 23 Jan 2026 14:14:18 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/20260123t141417/</guid>
      <description>&lt;p&gt;Episodes from &amp;ldquo;Me, Myself and I&amp;rdquo;,  a podcast I started with Jen Su. She has plans to revive the podcast with new themes and a new guests. I&amp;rsquo;ll update this note with a link as soon as it goes live.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;🎤 001 - &lt;a href=&#34;https://s3.billglover.me/podcasts/me-myself-i/e0001_hello-world.mp3&#34;&gt;Hello World&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;🎤 002 - &lt;a href=&#34;https://s3.billglover.me/podcasts/me-myself-i/e0002_reward-and-accountability.mp3&#34;&gt;Reward and Accountability&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;🎤 003 - &lt;a href=&#34;https://s3.billglover.me/podcasts/me-myself-i/e0003_self-promotion.mp3&#34;&gt;Self Promotion&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;🎤 004 - &lt;a href=&#34;https://s3.billglover.me/podcasts/me-myself-i/e0004_intentions.mp3&#34;&gt;Intentions&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;🎤 005 - &lt;a href=&#34;https://s3.billglover.me/podcasts/me-myself-i/e0005_intervention.mp3&#34;&gt;Intervention&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;🎤 006 - &lt;a href=&#34;https://s3.billglover.me/podcasts/me-myself-i/e0006_asking-for-help.mp3&#34;&gt;Asking for Help&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;🎤 007 - &lt;a href=&#34;https://s3.billglover.me/podcasts/me-myself-i/e0007_giving-help.mp3&#34;&gt;Giving Help&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;🎤 008 - &lt;a href=&#34;https://s3.billglover.me/podcasts/me-myself-i/e0008_dealing-with-frustration.mp3&#34;&gt;Dealing with Frustration&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;🎤 009 - &lt;a href=&#34;https://s3.billglover.me/podcasts/me-myself-i/e0009_how-to-re-learn.mp3&#34;&gt;How to re-Learn&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;🎤 010 - &lt;a href=&#34;https://s3.billglover.me/podcasts/me-myself-i/e0010_motivation-in-the-face-of-rejection.mp3&#34;&gt;Motivation in the Face of Rejection&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;🎤 011 - &lt;a href=&#34;https://s3.billglover.me/podcasts/me-myself-i/e0011_styles-of-communication.mp3&#34;&gt;Styles of Communication&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;🎤 012 - &lt;a href=&#34;https://s3.billglover.me/podcasts/me-myself-i/e0012_professional-networking.mp3&#34;&gt;Professional Networking&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;🎤 013 - &lt;a href=&#34;https://s3.billglover.me/podcasts/me-myself-i/e0013_imposter-syndrome.mp3&#34;&gt;Imposter Syndrome&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;🎤 014 - &lt;a href=&#34;https://s3.billglover.me/podcasts/me-myself-i/e0014_chat-gpt.mp3&#34;&gt;ChatGPT&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;🎤 015 - &lt;a href=&#34;https://s3.billglover.me/podcasts/me-myself-i/e0015_this-next-thing.mp3&#34;&gt;This Next Thing&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;If you are interested in speaking to Jen on a future episode, let me know and I&amp;rsquo;ll put you in touch.&lt;/p&gt;</description>
    </item>
    <item>
      <title></title>
      <link>https://billglover.me/notes/20260116t115914/</link>
      <pubDate>Fri, 16 Jan 2026 11:59:14 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/20260116t115914/</guid>
      <description>&lt;p&gt;Listening to People Watching by &lt;a href=&#34;https://www.samfender.com&#34;&gt;Sam Fender&lt;/a&gt; after seeing it mentioned on Doug Belshaw&amp;rsquo;s &lt;a href=&#34;https://blog.dougbelshaw.com/albums-of-2025/&#34;&gt;favourite music albums of 2025&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Need to listen to this one again before deciding if it has a place in my collection.&lt;/p&gt;</description>
    </item>
    <item>
      <title></title>
      <link>https://billglover.me/notes/20260116t115106/</link>
      <pubDate>Fri, 16 Jan 2026 11:51:06 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/20260116t115106/</guid>
      <description>&lt;p&gt;I went into the office yesterday and found myself wondering whether I miss the commute.&lt;/p&gt;&#xA;&lt;p&gt;I miss:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;The opportunity to listen to audiobooks/podcasts&lt;/li&gt;&#xA;&lt;li&gt;The chance to read a book&lt;/li&gt;&#xA;&lt;li&gt;Watching other people and wondering what they are thinking&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;I don&amp;rsquo;t miss the commute.&lt;/p&gt;</description>
    </item>
    <item>
      <title></title>
      <link>https://billglover.me/notes/20260116t092831/</link>
      <pubDate>Fri, 16 Jan 2026 09:28:31 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/20260116t092831/</guid>
      <description>&lt;p&gt;Found myself pondering a question:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&amp;ldquo;What would a course in AI look like at various stages of the education system?&amp;rdquo;&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;To be clear, I&amp;rsquo;m not thinking of this as a &amp;ldquo;learn ChatGPT in 10 minutes&amp;rdquo; style course. I&amp;rsquo;m wondering what coursework I&amp;rsquo;d set, what discussions I&amp;rsquo;d want to have. I&amp;rsquo;m curious what I&amp;rsquo;d learn by running such a course.&lt;/p&gt;</description>
    </item>
    <item>
      <title></title>
      <link>https://billglover.me/notes/20260114t135302/</link>
      <pubDate>Wed, 14 Jan 2026 13:53:02 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/20260114t135302/</guid>
      <description>&lt;p&gt;The excellent talk by &lt;a href=&#34;https://www.bunniestudios.com&#34;&gt;bunnie&lt;/a&gt; and &lt;a href=&#34;https://xobs.io&#34;&gt;xobs&lt;/a&gt; cover what it takes to build an open operating system and manufacture the open processor required to run it. It turns out that you can squeeze open processor cores into the unused silicon on a typical SoC.&lt;/p&gt;&#xA;&lt;p&gt;An incredible feat of engineering: &lt;a href=&#34;https://www.youtube.com/watch?v=BbWWGkyIBGM&#34;&gt;39c3 - Xous: A Pure-Rust Rethink of the Embedded Operating System&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title></title>
      <link>https://billglover.me/notes/20260114t114430/</link>
      <pubDate>Wed, 14 Jan 2026 11:44:30 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/20260114t114430/</guid>
      <description>&lt;p&gt;Beautiful walk along the river this morning.&lt;/p&gt;</description>
    </item>
    <item>
      <title></title>
      <link>https://billglover.me/notes/20260114t112020/</link>
      <pubDate>Wed, 14 Jan 2026 11:20:20 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/20260114t112020/</guid>
      <description>&lt;p&gt;Really enjoyed this series of &lt;a href=&#34;https://lazybea.rs/100pics-2025/&#34;&gt;100 photographs from 2025&lt;/a&gt; by Hyde. He&amp;rsquo;s doing &lt;a href=&#34;https://the100.pics&#34;&gt;#the100pics&lt;/a&gt; challenge again this year and I&amp;rsquo;m looking forward to seeing what he releases. I love the raw humanity on display in his photographs.&lt;/p&gt;</description>
    </item>
    <item>
      <title></title>
      <link>https://billglover.me/notes/20260114t111655/</link>
      <pubDate>Wed, 14 Jan 2026 11:16:55 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/20260114t111655/</guid>
      <description>&lt;p&gt;I&amp;rsquo;ve been working on a new way to publish notes here. The formatting is all out of whack, but this is my first note.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Thunderbird &amp; PGP</title>
      <link>https://billglover.me/notes/2025-10-15_thunderbird-gpg/</link>
      <pubDate>Wed, 15 Oct 2025 21:07:00 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/2025-10-15_thunderbird-gpg/</guid>
      <description>&lt;p&gt;At some point (2020) Thunderbird stopped using Enigmail. Native support for GPG doesn&amp;rsquo;t (easily) allow you to use sub-keys stored on a Yubikey for signing or encryption. It is possible to tell Thunderbird to use one external key but this doesn&amp;rsquo;t work if you have separate sub-keys for both message signing and encryption.&lt;/p&gt;&#xA;&lt;p&gt;This &lt;a href=&#34;https://yayimorphology.org/gpg-thunderbird.html&#34;&gt;guide&lt;/a&gt; shows how to create and export a temporary key containing both the signing and encryption keys for use in Thunderbird.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Tech Talk: Caching</title>
      <link>https://billglover.me/notes/2025-02-11_talk-caching/</link>
      <pubDate>Tue, 11 Feb 2025 12:03:56 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/2025-02-11_talk-caching/</guid>
      <description>&lt;p&gt;I gave a talk titled, Caching, Data Grids and More. The talk was targetted at Platform Engineers who were aware of caching solutions, supported them, but with little experience of having used them in application development. It was a fun talk to give.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://bill.dev/talks/caching&#34;&gt;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&lt;figure&gt;&lt;img &#xA;        sizes=&#34;(min-width: 35em) 1200px, 100vw&#34;&#xA;        srcset=&#39;&#xA;        &#xA;            /notes/2025-02-11_talk-caching/title_hu_b8bedc954d6cc3f2.png 500w&#xA;        &#xA;        &#xA;            , /notes/2025-02-11_talk-caching/title_hu_6c878ba9250bb637.png 800w&#xA;        &#xA;        &#xA;            , /notes/2025-02-11_talk-caching/title_hu_7b6693af50ae8b0c.png 1200w&#xA;        &#xA;        &#xA;            , /notes/2025-02-11_talk-caching/title_hu_2ee7366a7f455578.png 1500w &#xA;        &#39;&#xA;        &#xA;            src=&#34;https://billglover.me/notes/2025-02-11_talk-caching/title.png&#34; &#xA;        &#xA;         alt=&#34;A screenshot of the title slide: A quest for speed: Caching, data grids, and more&#34;/&gt;&#xA;&lt;/figure&gt;&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>The Internet</title>
      <link>https://billglover.me/notes/definition-of-the-internet/</link>
      <pubDate>Fri, 29 Nov 2024 11:21:51 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/definition-of-the-internet/</guid>
      <description>&lt;p&gt;If you&amp;rsquo;d asked me to define the internet, I&amp;rsquo;d probably have offered up something involving networks, computers, protocols and information. I prefer this definition by Winnie Lim.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&amp;ldquo;a medium that brings the strangeness of strangers together&amp;rdquo;&lt;br&gt;&#xA;– &lt;a href=&#34;https://winnielim.org/notes/im-just-as-strange-as-you/&#34;&gt;i&amp;rsquo;m just as strange as you&lt;/a&gt;, Winnie Lim&lt;/p&gt;&#xA;&lt;/blockquote&gt;</description>
    </item>
    <item>
      <title>FFmpeg Cheat Sheet</title>
      <link>https://billglover.me/notes/ffmpeg-cheat-sheet/</link>
      <pubDate>Fri, 11 Oct 2024 17:17:25 +0100</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/ffmpeg-cheat-sheet/</guid>
      <description>&lt;p&gt;Using &lt;a href=&#34;https://ffmpeg.org/about.html&#34;&gt;FFmpeg&lt;/a&gt; is more art than science. Every time I reach for it, I find myself trawling the internet for various incantations of the command that result in a playable video. These are commands that have worked for me.&lt;/p&gt;&#xA;&lt;h3 id=&#34;blu-ray&#34;&gt;Blu-ray&lt;/h3&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ffmpeg -i input.mkv -c:v libx265 -crf &lt;span class=&#34;m&#34;&gt;18&lt;/span&gt; -c:a aac -b:a 160k -tag:v hvc1 -ac &lt;span class=&#34;m&#34;&gt;6&lt;/span&gt; output.mp4&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;This results in an mp4 container with h265 video and aac sound. The file should be playable on Apple devices. The resulting file will also be significantly smaller than the original.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Dockerfile Revisited</title>
      <link>https://billglover.me/notes/2024-07-26_dockerfile-revisited/</link>
      <pubDate>Fri, 26 Jul 2024 16:08:00 +0100</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/2024-07-26_dockerfile-revisited/</guid>
      <description>&lt;p&gt;For years I&amp;rsquo;ve been building container images by using the &lt;code&gt;COPY&lt;/code&gt; command to bring files from my Docker context into the build container.&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-Dockerfile&#34; data-lang=&#34;Dockerfile&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s&#34;&gt;golang:1.22&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;AS&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s&#34;&gt;build&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;WORKDIR&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s&#34;&gt;/src/build&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;COPY&lt;/span&gt; . .&lt;span class=&#34;err&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;RUN&lt;/span&gt; go mod verify&lt;span class=&#34;err&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;RUN&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;CGO_ENABLED&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;0&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;GOOS&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;linux &lt;span class=&#34;nv&#34;&gt;GOARCH&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;arm64 go build -o /app .&lt;span class=&#34;err&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;err&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;FROM&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s&#34;&gt;scratch&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;COPY&lt;/span&gt; --from&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;build /app .&lt;span class=&#34;err&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;CMD&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;./app&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;]&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Today I came across the following section in the Docker &lt;a href=&#34;https://docs.docker.com/build/building/best-practices/#add-or-copy&#34;&gt;documentation&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&amp;ldquo;You&amp;rsquo;ll mostly want to use COPY for copying files from one stage to another in a multi-stage build. If you need to add files from the build context to the container temporarily to execute a RUN instruction, you can often substitute the COPY instruction with a bind mount instead.&amp;rdquo;&lt;/p&gt;</description>
    </item>
    <item>
      <title>A moment of pride: unexpected compliments</title>
      <link>https://billglover.me/notes/2024-01-22_unexpected-complement/</link>
      <pubDate>Mon, 22 Jan 2024 19:00:00 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/2024-01-22_unexpected-complement/</guid>
      <description>&lt;p&gt;A rare moment of pride. My son picked out one of the slips in our family gratitude jar and read it without hesitation. His reading is really coming along. But it was conclusion that had me smiling more than anything:&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&amp;ldquo;Mum your Chinese writing is so good.&amp;rdquo;&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&lt;figure&gt;&lt;img &#xA;        sizes=&#34;(min-width: 35em) 1200px, 100vw&#34;&#xA;        srcset=&#39;&#xA;        &#xA;            /notes/2024-01-22_unexpected-complement/gratitude-slips_hu_1d152fcba4ebc4c8.jpeg 500w&#xA;        &#xA;        &#xA;            , /notes/2024-01-22_unexpected-complement/gratitude-slips_hu_a2e1e80fdc73939a.jpeg 800w&#xA;        &#xA;        &#xA;        &#39;&#xA;        &#xA;            src=&#34;https://billglover.me/notes/2024-01-22_unexpected-complement/gratitude-slips.jpeg&#34; &#xA;        /&gt;&#xA;&lt;/figure&gt;&#xA;&lt;p&gt;I have to keep working on it though. His writing (second strip) is catching up fast.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Developing Ilford HP5&#43;</title>
      <link>https://billglover.me/notes/developing-ilford-hp5/</link>
      <pubDate>Thu, 16 Nov 2023 21:48:59 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/developing-ilford-hp5/</guid>
      <description>&lt;p&gt;This note isn&amp;rsquo;t intended to be a guide on how to develop film at home. This is a collection of tips and notes from my development experience.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Tip:&lt;/strong&gt; Download the &lt;a href=&#34;https://apps.apple.com/gb/app/massive-dev-chart-timer/id402405770&#34;&gt;Massive Dev Chart Timer&lt;/a&gt; App (£8.99).&lt;br&gt;&#xA;The app will help lookup and calculate developer times and mix ratios. But the most valuable feature is the timer. I kept second guessing myself on everything until I started using the timer. With the timer I have the confidence to develop a tank and clean up as I go.&lt;/p&gt;</description>
    </item>
    <item>
      <title>SRE vs. Platform Engineering</title>
      <link>https://billglover.me/notes/getambassadorsrevsplatformengineering/</link>
      <pubDate>Sat, 07 Oct 2023 15:09:26 +0100</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/getambassadorsrevsplatformengineering/</guid>
      <description>&lt;figure&gt;&lt;img &#xA;        sizes=&#34;(min-width: 35em) 1200px, 100vw&#34;&#xA;        srcset=&#39;&#xA;        &#xA;            /notes/getambassadorsrevsplatformengineering/TeamStructure_hu_1e24528047754ae3.png 500w&#xA;        &#xA;        &#xA;            , /notes/getambassadorsrevsplatformengineering/TeamStructure_hu_b7ae52445642365.png 800w&#xA;        &#xA;        &#xA;            , /notes/getambassadorsrevsplatformengineering/TeamStructure_hu_1bdce298c2c42b47.png 1200w&#xA;        &#xA;        &#xA;            , /notes/getambassadorsrevsplatformengineering/TeamStructure_hu_ed78cce0a993b5b6.png 1500w &#xA;        &#39;&#xA;        &#xA;            src=&#34;https://billglover.me/notes/getambassadorsrevsplatformengineering/TeamStructure.png&#34; &#xA;        &#xA;         alt=&#34;Organisation chart showing that multiple application teams are supported by both Platform Engineering and Site Reliability Engineering teams. Application teams measure success with business KPIs. Platform and SRE teams measure success with SLOs&#34;/&gt;&lt;figcaption&gt;&#xA;            &lt;h4&gt;How application teams are organised&lt;/h4&gt;&lt;p&gt;Organisation chart showing that multiple application teams are supported by both Platform Engineering and Site Reliability Engineering teams. Application teams measure success with business KPIs. Platform and SRE teams measure success with SLOs&lt;/p&gt;</description>
    </item>
    <item>
      <title>@EmilyMBenderChatGPWhy2023</title>
      <link>https://billglover.me/notes/emilymbenderchatgpwhy2023/</link>
      <pubDate>Wed, 04 Oct 2023 09:27:05 +0100</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/emilymbenderchatgpwhy2023/</guid>
      <description>&lt;div style=&#34;position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;&#34;&gt;&#xA;      &lt;iframe allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen&#34; loading=&#34;eager&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; src=&#34;https://www.youtube.com/embed/qpE40jwMilU?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0&#34; style=&#34;position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;&#34; title=&#34;ChatGP-why: When, if ever, is synthetic text safe, appropriate, and desirable?&#34;&gt;&lt;/iframe&gt;&#xA;    &lt;/div&gt;&#xA;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Author: &lt;a href=&#34;https://faculty.washington.edu/ebender/&#34;&gt;Emily M. Bender&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;Full Title: ChatGP-why: When, if ever, is synthetic text safe, appropriate, and desirable?&lt;/li&gt;&#xA;&lt;li&gt;Slides: &lt;a href=&#34;https://faculty.washington.edu/ebender/papers/Bender-GRAILE-2023.pdf&#34;&gt;Bender-GRAILE-2023.pdf&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;Talk: &lt;a href=&#34;https://www.youtube.com/watch?v=qpE40jwMilU&#34;&gt;YouTube&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;notes&#34;&gt;Notes&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;There is a long list of examples of where the use of ChatGPT hasn&amp;rsquo;t turned out the way people expect.&lt;/li&gt;&#xA;&lt;li&gt;Language form does not contain meaning and this explains why language models don&amp;rsquo;t understand.&lt;/li&gt;&#xA;&lt;li&gt;Large language models are corpus models&lt;/li&gt;&#xA;&lt;li&gt;Claude Shannon worked on early language models&lt;/li&gt;&#xA;&lt;li&gt;Unigram language model models frequency of single words&lt;/li&gt;&#xA;&lt;li&gt;Bigram language model models frequency of words given previous word&lt;/li&gt;&#xA;&lt;li&gt;Trigram language model models frequency of words given previous two words&lt;/li&gt;&#xA;&lt;li&gt;Good uses for language models include:&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Spell checkers&lt;/li&gt;&#xA;&lt;li&gt;Machine transcription&lt;/li&gt;&#xA;&lt;li&gt;Machine translation&lt;/li&gt;&#xA;&lt;li&gt;Text input&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;Neural networks are made of of perceptrons&lt;/li&gt;&#xA;&lt;li&gt;A perceptron is a simplified model of a neuron&lt;/li&gt;&#xA;&lt;li&gt;Transformer architecture is an arrangement or perceptrons&lt;/li&gt;&#xA;&lt;li&gt;Language models use word embeddings&lt;/li&gt;&#xA;&lt;li&gt;The number of words in training data determines the size of a language model&lt;/li&gt;&#xA;&lt;li&gt;Generative AI is a mis-use of a classification and ranking tool&lt;/li&gt;&#xA;&lt;li&gt;Generative AI produces plausible output not intelligence&lt;/li&gt;&#xA;&lt;li&gt;In order to determine whether a machine can understand and infer meaning, we need definitions understanding and meaning.&lt;/li&gt;&#xA;&lt;li&gt;Language competency makes it hard to separate form from meaning&lt;/li&gt;&#xA;&lt;li&gt;Form refers to the marks on a page for language, the arrangement of pixels for images or video, etc.&lt;/li&gt;&#xA;&lt;li&gt;Language meaning is the relationship between form and something external&lt;/li&gt;&#xA;&lt;li&gt;Understanding is the recovery of communicative intent from form&lt;/li&gt;&#xA;&lt;li&gt;Virtual assistants can understand limited instructions&lt;/li&gt;&#xA;&lt;li&gt;Language models exposed only to form can never learn meaning&lt;/li&gt;&#xA;&lt;li&gt;Language models do not learn the same way as babies&lt;/li&gt;&#xA;&lt;li&gt;Babies learn the relationship between form (sound, mouth movement) and meaning by forming connections with external cues that hint at communicative intent.&lt;/li&gt;&#xA;&lt;li&gt;The Octopus Paper show that form does not contain meaning&lt;/li&gt;&#xA;&lt;li&gt;Large language models have a significant environmental impact&lt;/li&gt;&#xA;&lt;li&gt;Environmental cost of large language models impacts marginalised communities&lt;/li&gt;&#xA;&lt;li&gt;The contents of the internet do not represent a balanced view of humanity&lt;/li&gt;&#xA;&lt;li&gt;The young and those from developed countries are more likely to have contributed to the volume of work available on the internet.&lt;/li&gt;&#xA;&lt;li&gt;Sampling the internet without bias is hard&lt;/li&gt;&#xA;&lt;li&gt;Large language models are too big&lt;/li&gt;&#xA;&lt;li&gt;Generative AI output does not contain communicative intent&lt;/li&gt;&#xA;&lt;li&gt;We bring our own understanding to language form&lt;/li&gt;&#xA;&lt;li&gt;When reading generative text, it is important to remember that the inference of meaning is our own.&lt;/li&gt;&#xA;&lt;li&gt;A Stochastic Parrot refers to the stitching together of form without meaning&lt;/li&gt;&#xA;&lt;li&gt;Coherence is in the eye of the beholder&lt;/li&gt;&#xA;&lt;li&gt;Synthetic text lacks accountability&lt;/li&gt;&#xA;&lt;li&gt;There is no Who behind generative text&lt;/li&gt;&#xA;&lt;li&gt;Generative AI pollutes the information ecosystem&lt;/li&gt;&#xA;&lt;li&gt;Information retrieval is a terrible use-case for a large language model&lt;/li&gt;&#xA;&lt;li&gt;The more accurate generative text becomes the more dangerous it is&lt;/li&gt;&#xA;&lt;li&gt;Chatbots hide the sources of the information they regurgitate&lt;/li&gt;&#xA;&lt;li&gt;Responsible use-cases for generative AI include:&#xA;&lt;ul&gt;&#xA;&lt;li&gt;where the only thing that matters is form&lt;/li&gt;&#xA;&lt;li&gt;text must not confuse author with a person&lt;/li&gt;&#xA;&lt;li&gt;text needs to clearly articulate biases&lt;/li&gt;&#xA;&lt;li&gt;consider labor practices&lt;/li&gt;&#xA;&lt;li&gt;consider data theft&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;Good use-cases for generative AI include:&#xA;&lt;ul&gt;&#xA;&lt;li&gt;a dialogue partner for language learning&lt;/li&gt;&#xA;&lt;li&gt;a non-playable character&lt;/li&gt;&#xA;&lt;li&gt;writing support&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;Good use-cases for generative text must consider the costs&lt;/li&gt;&#xA;&lt;li&gt;Be a critical consumer of AI&lt;/li&gt;&#xA;&lt;li&gt;We need to understand how the AI technology was evaluated in the context in which it is being used.&lt;/li&gt;&#xA;&lt;li&gt;We need to understand who benefits from the use of AI instead of a human?&lt;/li&gt;&#xA;&lt;li&gt;You are responsible for your use of generative text&lt;/li&gt;&#xA;&lt;li&gt;We must insist on transparency of source material in the training data.&lt;/li&gt;&#xA;&lt;li&gt;Talk to students about what generative AI is&lt;/li&gt;&#xA;&lt;li&gt;Use of generative AI in education is a missed learning opportunity&lt;/li&gt;&#xA;&lt;li&gt;Use of generative AI by students indicates broader problem&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;further-information&#34;&gt;Further Information&lt;/h3&gt;&#xA;&lt;p&gt;Three podcasts worth subscribing to on AI:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Las Uvas</title>
      <link>https://billglover.me/notes/advent-of-coffee-2022/20221225-day25-lasuvas/</link>
      <pubDate>Sun, 25 Dec 2022 11:30:00 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/advent-of-coffee-2022/20221225-day25-lasuvas/</guid>
      <description>&lt;h2 id=&#34;day-25&#34;&gt;Day 25&lt;/h2&gt;&#xA;&lt;table&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Name&lt;/th&gt;&lt;td&gt;Las Uvas&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Grower&lt;/th&gt;&lt;td&gt;Marina Ramirez&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Origin&lt;/th&gt;&lt;td&gt;Honduras&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Variety&lt;/th&gt;&lt;td&gt;Bourbon&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Process&lt;/th&gt;&lt;td&gt;Washed&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Roast&lt;/th&gt;&lt;td&gt;Light&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Acidity&lt;/th&gt;&lt;td&gt;Grape&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Mouthfeel&lt;/th&gt;&lt;td&gt;Silky&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Hints of&lt;/th&gt;&lt;td&gt;Blackberry &amp; black tes&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;table&gt;&#xA;&lt;h3 id=&#34;preparation&#34;&gt;Preparation&lt;/h3&gt;&#xA;&lt;p&gt;Time: 11:30&lt;/p&gt;&#xA;&lt;p&gt;Washed the filter, warmed the mug and prepared hot water. Water temperature was 97.5ºC. Measured 22g coffee and poured 50ml over the coffee to wet it. Waited 30s and pured over a further 250ml water, keeping the filter funnel about half full.&lt;/p&gt;&#xA;&lt;h3 id=&#34;observation&#34;&gt;Observation&lt;/h3&gt;&#xA;&lt;p&gt;The coffee grounds reminded me of a the vegetable isle in a Chinese supermarket. An earthy mix of smells that all felt alien.&lt;/p&gt;</description>
    </item>
    <item>
      <title>El Durazno</title>
      <link>https://billglover.me/notes/advent-of-coffee-2022/20221224-day24-eldurazno/</link>
      <pubDate>Sat, 24 Dec 2022 11:30:00 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/advent-of-coffee-2022/20221224-day24-eldurazno/</guid>
      <description>&lt;h2 id=&#34;day-24&#34;&gt;Day 24&lt;/h2&gt;&#xA;&lt;table&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Name&lt;/th&gt;&lt;td&gt;El Durazno&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Grower&lt;/th&gt;&lt;td&gt;Venutra Family&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Origin&lt;/th&gt;&lt;td&gt;Guatemala&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Variety&lt;/th&gt;&lt;td&gt;Bourbon&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Process&lt;/th&gt;&lt;td&gt;Honey&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Roast&lt;/th&gt;&lt;td&gt;Medium&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Acidity&lt;/th&gt;&lt;td&gt;Grape&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Mouthfeel&lt;/th&gt;&lt;td&gt;Chewy&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Hints of&lt;/th&gt;&lt;td&gt;Plum, brown sugar &amp; liquorice&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;table&gt;&#xA;&lt;h3 id=&#34;preparation&#34;&gt;Preparation&lt;/h3&gt;&#xA;&lt;p&gt;Time: 11:30&lt;/p&gt;&#xA;&lt;p&gt;Washed the filter, warmed the mug and prepared hot water. Water temperature was 96.4ºC. Measured 22g coffee and poured 50ml over the coffee to wet it. Waited 30s and pured over a further 250ml water, keeping the filter funnel about half full.&lt;/p&gt;&#xA;&lt;h3 id=&#34;observation&#34;&gt;Observation&lt;/h3&gt;&#xA;&lt;p&gt;The coffee grounds reminded me of a sweet wood with hints of apple vinegar.&lt;/p&gt;</description>
    </item>
    <item>
      <title>La Pedregosa</title>
      <link>https://billglover.me/notes/advent-of-coffee-2022/20221223-day23-lapedregosa/</link>
      <pubDate>Fri, 23 Dec 2022 11:30:00 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/advent-of-coffee-2022/20221223-day23-lapedregosa/</guid>
      <description>&lt;h2 id=&#34;day-23&#34;&gt;Day 23&lt;/h2&gt;&#xA;&lt;table&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Name&lt;/th&gt;&lt;td&gt;La Pedregosa&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Grower&lt;/th&gt;&lt;td&gt;Mauricio Vega&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Origin&lt;/th&gt;&lt;td&gt;Colombia&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Variety&lt;/th&gt;&lt;td&gt;Castillo&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Process&lt;/th&gt;&lt;td&gt;Washed&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Roast&lt;/th&gt;&lt;td&gt;Medium&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Acidity&lt;/th&gt;&lt;td&gt;Grape&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Mouthfeel&lt;/th&gt;&lt;td&gt;Round&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Hints of&lt;/th&gt;&lt;td&gt;Raspberry cream chocolate&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;table&gt;&#xA;&lt;h3 id=&#34;preparation&#34;&gt;Preparation&lt;/h3&gt;&#xA;&lt;p&gt;Time: 11:30&lt;/p&gt;&#xA;&lt;p&gt;Washed the filter, warmed the mug and prepared hot water. Water temperature was 96.2ºC. Measured 22g coffee and poured 50ml over the coffee to wet it. Waited 30s and pured over a further 250ml water, keeping the filter funnel about half full.&lt;/p&gt;&#xA;&lt;h3 id=&#34;observation&#34;&gt;Observation&lt;/h3&gt;&#xA;&lt;p&gt;The coffee grounds reminded me of an apple wood. When wet the smell was creamy soft.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Muthua-ini</title>
      <link>https://billglover.me/notes/advent-of-coffee-2022/20221222-day22-muthuaini/</link>
      <pubDate>Thu, 22 Dec 2022 11:30:00 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/advent-of-coffee-2022/20221222-day22-muthuaini/</guid>
      <description>&lt;h2 id=&#34;day-22&#34;&gt;Day 22&lt;/h2&gt;&#xA;&lt;table&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Name&lt;/th&gt;&lt;td&gt;Muthua-ini&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Grower&lt;/th&gt;&lt;td&gt;A collective of smallholder farmers&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Origin&lt;/th&gt;&lt;td&gt;Kenya&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Variety&lt;/th&gt;&lt;td&gt;SL-28, SL-34&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Process&lt;/th&gt;&lt;td&gt;Washed&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Roast&lt;/th&gt;&lt;td&gt;Light&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Acidity&lt;/th&gt;&lt;td&gt;Grape&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Mouthfeel&lt;/th&gt;&lt;td&gt;Silky&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Hints of&lt;/th&gt;&lt;td&gt;Blackcurrant coulis&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;table&gt;&#xA;&lt;h3 id=&#34;preparation&#34;&gt;Preparation&lt;/h3&gt;&#xA;&lt;p&gt;Time: 11:30&lt;/p&gt;&#xA;&lt;p&gt;Washed the filter, warmed the mug and prepared hot water. Water temperature was 95.4ºC. Measured 22g coffee and poured 50ml over the coffee to wet it. Waited 30s and pured over a further 250ml water, keeping the filter funnel about half full.&lt;/p&gt;&#xA;&lt;h3 id=&#34;observation&#34;&gt;Observation&lt;/h3&gt;&#xA;&lt;p&gt;The grounds smelled like cloves. Not the strong fresh clove smell, but the weaker, more subtle smell of cloves that have been allowed to sit in the open for a while.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Chapanda</title>
      <link>https://billglover.me/notes/advent-of-coffee-2022/20221221-day21-chapanda/</link>
      <pubDate>Wed, 21 Dec 2022 11:30:00 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/advent-of-coffee-2022/20221221-day21-chapanda/</guid>
      <description>&lt;h2 id=&#34;day-21&#34;&gt;Day 21&lt;/h2&gt;&#xA;&lt;table&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Name&lt;/th&gt;&lt;td&gt;Chapanda&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Grower&lt;/th&gt;&lt;td&gt;Marcus Carvalho&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Origin&lt;/th&gt;&lt;td&gt;Brazil&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Variety&lt;/th&gt;&lt;td&gt;Sucupira&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Process&lt;/th&gt;&lt;td&gt;Natural&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Roast&lt;/th&gt;&lt;td&gt;Medium&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Acidity&lt;/th&gt;&lt;td&gt;Apple&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Mouthfeel&lt;/th&gt;&lt;td&gt;Heavy&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Hints of&lt;/th&gt;&lt;td&gt;Dark chocolate &amp; glaće cherry&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;table&gt;&#xA;&lt;h3 id=&#34;preparation&#34;&gt;Preparation&lt;/h3&gt;&#xA;&lt;p&gt;Time: 11:30&lt;/p&gt;&#xA;&lt;p&gt;Washed the filter, warmed the mug and prepared hot water. Water temperature was 95.1ºC. Measured 21g coffee and poured 50ml over the coffee to wet it. Waited 30s and pured over a further 250ml water, keeping the filter funnel about half full.&lt;/p&gt;&#xA;&lt;h3 id=&#34;observation&#34;&gt;Observation&lt;/h3&gt;&#xA;&lt;p&gt;The coffee grounds gave off a plum like fruitiness. When wet the smell was more chocolatey.&lt;/p&gt;</description>
    </item>
    <item>
      <title>El Aguacate</title>
      <link>https://billglover.me/notes/advent-of-coffee-2022/20221220-day20-elaguacate/</link>
      <pubDate>Tue, 20 Dec 2022 11:30:00 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/advent-of-coffee-2022/20221220-day20-elaguacate/</guid>
      <description>&lt;h2 id=&#34;day-20&#34;&gt;Day 20&lt;/h2&gt;&#xA;&lt;table&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Name&lt;/th&gt;&lt;td&gt;El Aguacate&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Grower&lt;/th&gt;&lt;td&gt;Saturnino Bejarano Aguilar&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Origin&lt;/th&gt;&lt;td&gt;Honduras&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Variety&lt;/th&gt;&lt;td&gt;Catuai&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Process&lt;/th&gt;&lt;td&gt;Washed&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Roast&lt;/th&gt;&lt;td&gt;Medium&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Acidity&lt;/th&gt;&lt;td&gt;Grape&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Mouthfeel&lt;/th&gt;&lt;td&gt;Silky&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Hints of&lt;/th&gt;&lt;td&gt;Panela/Muscovado Sugar&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;table&gt;&#xA;&lt;h3 id=&#34;preparation&#34;&gt;Preparation&lt;/h3&gt;&#xA;&lt;p&gt;Time: 11:30&lt;/p&gt;&#xA;&lt;p&gt;Washed the filter, warmed the mug and prepared hot water. Water temperature was 95.2ºC. Measured 22g coffee and poured 50ml over the coffee to wet it. Waited 30s and pured over a further 250ml water, keeping the filter funnel about half full.&lt;/p&gt;&#xA;&lt;h3 id=&#34;observation&#34;&gt;Observation&lt;/h3&gt;&#xA;&lt;p&gt;The coffee grounds reminded me of a sweet, spiced plum.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Cafeina Blend</title>
      <link>https://billglover.me/notes/advent-of-coffee-2022/20221219-day19-cafeinablend/</link>
      <pubDate>Mon, 19 Dec 2022 16:00:00 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/advent-of-coffee-2022/20221219-day19-cafeinablend/</guid>
      <description>&lt;h2 id=&#34;day-19&#34;&gt;Day 19&lt;/h2&gt;&#xA;&lt;table&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Name&lt;/th&gt;&lt;td&gt;Cafeina Blend&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Grower&lt;/th&gt;&lt;td&gt;Adalgisa S.M. Vilela, Julia Figueiredo and Elza Leopoldino&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Origin&lt;/th&gt;&lt;td&gt;Brazil&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Variety&lt;/th&gt;&lt;td&gt;Mundo Novo, Acauã&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Process&lt;/th&gt;&lt;td&gt;Natural&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Roast&lt;/th&gt;&lt;td&gt;Medium/Dark&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Acidity&lt;/th&gt;&lt;td&gt;Apple&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Mouthfeel&lt;/th&gt;&lt;td&gt;Creamy&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Hints of&lt;/th&gt;&lt;td&gt;Dark chocolate &amp; apricot&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;table&gt;&#xA;&lt;h3 id=&#34;preparation&#34;&gt;Preparation&lt;/h3&gt;&#xA;&lt;p&gt;Time: 16:00&lt;/p&gt;&#xA;&lt;p&gt;Washed the filter, warmed the mug and prepared hot water. Water temperature was 94.4ºC. Measured 22g coffee and poured 50ml over the coffee to wet it. Waited 30s and pured over a further 250ml water, keeping the filter funnel about half full.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kimunye</title>
      <link>https://billglover.me/notes/advent-of-coffee-2022/20221218-day18-kimunye/</link>
      <pubDate>Sun, 18 Dec 2022 12:00:00 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/advent-of-coffee-2022/20221218-day18-kimunye/</guid>
      <description>&lt;h2 id=&#34;day-18&#34;&gt;Day 18&lt;/h2&gt;&#xA;&lt;table&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Name&lt;/th&gt;&lt;td&gt;Kimunye&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Grower&lt;/th&gt;&lt;td&gt;A collective of smallholder farmers&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Origin&lt;/th&gt;&lt;td&gt;Kenya&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Variety&lt;/th&gt;&lt;td&gt;SL-28, SL-34&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Process&lt;/th&gt;&lt;td&gt;Washed&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Roast&lt;/th&gt;&lt;td&gt;Light&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Acidity&lt;/th&gt;&lt;td&gt;Grape&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Mouthfeel&lt;/th&gt;&lt;td&gt;Juicy&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Hints of&lt;/th&gt;&lt;td&gt;Blackberry&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;table&gt;&#xA;&lt;h3 id=&#34;preparation&#34;&gt;Preparation&lt;/h3&gt;&#xA;&lt;p&gt;Time: 12:00&lt;/p&gt;&#xA;&lt;p&gt;Washed the filter, warmed the mug and prepared hot water. Water temperature was 95.2ºC. Measured 22g coffee and poured 50ml over the coffee to wet it. Waited 30s and pured over a further 250ml water, keeping the filter funnel about half full.&lt;/p&gt;&#xA;&lt;h3 id=&#34;observation&#34;&gt;Observation&lt;/h3&gt;&#xA;&lt;p&gt;The coffee grounds reminded me of a fruity bramble, perhaps freshly picked berries.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Finca El Zapote</title>
      <link>https://billglover.me/notes/advent-of-coffee-2022/20221217-day17-fincaelzapote/</link>
      <pubDate>Sat, 17 Dec 2022 11:30:00 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/advent-of-coffee-2022/20221217-day17-fincaelzapote/</guid>
      <description>&lt;h2 id=&#34;day-17&#34;&gt;Day 17&lt;/h2&gt;&#xA;&lt;table&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Name&lt;/th&gt;&lt;td&gt;Finca El Zapote&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Grower&lt;/th&gt;&lt;td&gt;Julio Roberto Meléndez Peréz&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Origin&lt;/th&gt;&lt;td&gt;Guatemala&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Variety&lt;/th&gt;&lt;td&gt;Caturra&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Process&lt;/th&gt;&lt;td&gt;Natural&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Roast&lt;/th&gt;&lt;td&gt;Medium&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Acidity&lt;/th&gt;&lt;td&gt;Orange&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Mouthfeel&lt;/th&gt;&lt;td&gt;Creamy&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Hints of&lt;/th&gt;&lt;td&gt;Peach cheesecake&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;table&gt;&#xA;&lt;h3 id=&#34;preparation&#34;&gt;Preparation&lt;/h3&gt;&#xA;&lt;p&gt;Time: 11:30&lt;/p&gt;&#xA;&lt;p&gt;Washed the filter, warmed the mug and prepared hot water. Water temperature was 96.3ºC. Measured 22g coffee and poured 50ml over the coffee to wet it. Waited 30s and pured over a further 250ml water, keeping the filter funnel about half full.&lt;/p&gt;&#xA;&lt;h3 id=&#34;observation&#34;&gt;Observation&lt;/h3&gt;&#xA;&lt;p&gt;The grounds smelled of pistachio with a sweetness that I attributed to rose.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Kaiguri</title>
      <link>https://billglover.me/notes/advent-of-coffee-2022/20221216-day16-kaiguri/</link>
      <pubDate>Fri, 16 Dec 2022 11:30:00 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/advent-of-coffee-2022/20221216-day16-kaiguri/</guid>
      <description>&lt;h2 id=&#34;day-16&#34;&gt;Day 16&lt;/h2&gt;&#xA;&lt;table&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Name&lt;/th&gt;&lt;td&gt;Kaiguri&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Grower&lt;/th&gt;&lt;td&gt;A collective of smallholder farmers&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Origin&lt;/th&gt;&lt;td&gt;Kenya&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Variety&lt;/th&gt;&lt;td&gt;SI-28, SL-34&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Process&lt;/th&gt;&lt;td&gt;Washed&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Roast&lt;/th&gt;&lt;td&gt;Light&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Acidity&lt;/th&gt;&lt;td&gt;Grape&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Mouthfeel&lt;/th&gt;&lt;td&gt;Round&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Hints of&lt;/th&gt;&lt;td&gt;Blackcurrant&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;table&gt;&#xA;&lt;h3 id=&#34;preparation&#34;&gt;Preparation&lt;/h3&gt;&#xA;&lt;p&gt;Time: 11:30&lt;/p&gt;&#xA;&lt;p&gt;Washed the filter, warmed the mug and prepared hot water. Water temperature was 96.2ºC. Measured 22g coffee and poured 50ml over the coffee to wet it. Waited 30s and pured over a further 250ml water, keeping the filter funnel about half full.&lt;/p&gt;&#xA;&lt;h3 id=&#34;observation&#34;&gt;Observation&lt;/h3&gt;&#xA;&lt;p&gt;The coffee grounds reminded me of fresh kindling. A freshness about to be lost to the smell of a roaring fire.&lt;/p&gt;</description>
    </item>
    <item>
      <title>El Silencio</title>
      <link>https://billglover.me/notes/advent-of-coffee-2022/20221215-day15-elsilencio/</link>
      <pubDate>Thu, 15 Dec 2022 11:30:00 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/advent-of-coffee-2022/20221215-day15-elsilencio/</guid>
      <description>&lt;h2 id=&#34;day-15&#34;&gt;Day 15&lt;/h2&gt;&#xA;&lt;table&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Name&lt;/th&gt;&lt;td&gt;El Silencio&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Grower&lt;/th&gt;&lt;td&gt;Oscar Ortiz Gonzalez&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Origin&lt;/th&gt;&lt;td&gt;Colombia&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Variety&lt;/th&gt;&lt;td&gt;Castillo, Colombia&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Process&lt;/th&gt;&lt;td&gt;Washed&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Roast&lt;/th&gt;&lt;td&gt;Light&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Acidity&lt;/th&gt;&lt;td&gt;Grape&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Mouthfeel&lt;/th&gt;&lt;td&gt;Syrupy&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Hints of&lt;/th&gt;&lt;td&gt;Strawberry liquorice&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;table&gt;&#xA;&lt;h3 id=&#34;preparation&#34;&gt;Preparation&lt;/h3&gt;&#xA;&lt;p&gt;Time: 11:30&lt;/p&gt;&#xA;&lt;p&gt;Washed the filter, warmed the mug and prepared hot water. Water temperature was 95.6ºC. Measured 22g coffee and poured 50ml over the coffee to wet it. Waited 30s and pured over a further 250ml water, keeping the filter funnel about half full.&lt;/p&gt;&#xA;&lt;h3 id=&#34;observation&#34;&gt;Observation&lt;/h3&gt;&#xA;&lt;p&gt;The coffee grounds reminded me of toasted hazelnuts, in those moments just before they catch and burn.&lt;/p&gt;</description>
    </item>
    <item>
      <title>San Jeronimo</title>
      <link>https://billglover.me/notes/advent-of-coffee-2022/20221214-day14-sanjeronimo/</link>
      <pubDate>Wed, 14 Dec 2022 10:15:00 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/advent-of-coffee-2022/20221214-day14-sanjeronimo/</guid>
      <description>&lt;h2 id=&#34;day-14&#34;&gt;Day 14&lt;/h2&gt;&#xA;&lt;table&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Name&lt;/th&gt;&lt;td&gt;San Jeronimo&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Grower&lt;/th&gt;&lt;td&gt;Bressani family&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Origin&lt;/th&gt;&lt;td&gt;Guatemala&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Variety&lt;/th&gt;&lt;td&gt;Caturra&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Process&lt;/th&gt;&lt;td&gt;Washed&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Roast&lt;/th&gt;&lt;td&gt;Light&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Acidity&lt;/th&gt;&lt;td&gt;Orange&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Mouthfeel&lt;/th&gt;&lt;td&gt;Creamy&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Hints of&lt;/th&gt;&lt;td&gt;Orange cheescake&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;table&gt;&#xA;&lt;h3 id=&#34;preparation&#34;&gt;Preparation&lt;/h3&gt;&#xA;&lt;p&gt;Time: 10:15&lt;/p&gt;&#xA;&lt;p&gt;Washed the filter, warmed the mug and prepared hot water. Water temperature was 96.9ºC. Measured 22g coffee and poured 50ml over the coffee to wet it. Waited 30s and pured over a further 250ml water, keeping the filter funnel about half full.&lt;/p&gt;&#xA;&lt;h3 id=&#34;observation&#34;&gt;Observation&lt;/h3&gt;&#xA;&lt;p&gt;The coffee grounds convinced me this was a dark roast. There were hints of an acidic fruit but I couldn&amp;rsquo;t place which one.&lt;/p&gt;</description>
    </item>
    <item>
      <title>El Zapote</title>
      <link>https://billglover.me/notes/advent-of-coffee-2022/20221213-day13-elzapote/</link>
      <pubDate>Tue, 13 Dec 2022 10:15:00 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/advent-of-coffee-2022/20221213-day13-elzapote/</guid>
      <description>&lt;h2 id=&#34;day-13&#34;&gt;Day 13&lt;/h2&gt;&#xA;&lt;table&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Name&lt;/th&gt;&lt;td&gt;El Zapote&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Grower&lt;/th&gt;&lt;td&gt;Francisco Alvarado&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Origin&lt;/th&gt;&lt;td&gt;Honduras&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Variety&lt;/th&gt;&lt;td&gt;Bourbon&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Process&lt;/th&gt;&lt;td&gt;Washed&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Roast&lt;/th&gt;&lt;td&gt;Light&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Acidity&lt;/th&gt;&lt;td&gt;Apple&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Mouthfeel&lt;/th&gt;&lt;td&gt;Round&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Hints of&lt;/th&gt;&lt;td&gt;Black tea &amp; cranberry&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;table&gt;&#xA;&lt;h3 id=&#34;preparation&#34;&gt;Preparation&lt;/h3&gt;&#xA;&lt;p&gt;Time: 10:15&lt;/p&gt;&#xA;&lt;p&gt;Washed the filter, warmed the mug and prepared hot water. Water temperature was 94.2ºC. Measured 22g coffee and poured 50ml over the coffee to wet it. Waited 30s and pured over a further 250ml water, keeping the filter funnel about half full.&lt;/p&gt;&#xA;&lt;h3 id=&#34;observation&#34;&gt;Observation&lt;/h3&gt;&#xA;&lt;p&gt;The coffee grounds gave off a strong toasted nutty aroma.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Karango</title>
      <link>https://billglover.me/notes/advent-of-coffee-2022/20221212-day12-karango/</link>
      <pubDate>Mon, 12 Dec 2022 12:00:00 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/advent-of-coffee-2022/20221212-day12-karango/</guid>
      <description>&lt;h2 id=&#34;day-12&#34;&gt;Day 12&lt;/h2&gt;&#xA;&lt;table&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Name&lt;/th&gt;&lt;td&gt;Karango&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Grower&lt;/th&gt;&lt;td&gt;A collective of smallholder farmers&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Origin&lt;/th&gt;&lt;td&gt;Democratic Republic of the Congo&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Variety&lt;/th&gt;&lt;td&gt;Bourbon&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Process&lt;/th&gt;&lt;td&gt;Washed&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Roast&lt;/th&gt;&lt;td&gt;Light&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Acidity&lt;/th&gt;&lt;td&gt;Grape&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Mouthfeel&lt;/th&gt;&lt;td&gt;Juicy&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Hints of&lt;/th&gt;&lt;td&gt;Blackcurrant &amp; apricot&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;table&gt;&#xA;&lt;h3 id=&#34;preparation&#34;&gt;Preparation&lt;/h3&gt;&#xA;&lt;p&gt;Time: 12:00&lt;/p&gt;&#xA;&lt;p&gt;Washed the filter, warmed the mug and prepared hot water. Water temperature was 95.2ºC. Measured 21g coffee and poured 50ml over the coffee to wet it. Waited 30s and pured over a further 250ml water, keeping the filter funnel about half full.&lt;/p&gt;&#xA;&lt;h3 id=&#34;observation&#34;&gt;Observation&lt;/h3&gt;&#xA;&lt;p&gt;The coffee grounds smelled like the bark of a sour fruit tree. I couldn&amp;rsquo;t place the fruit.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Capim Seco</title>
      <link>https://billglover.me/notes/advent-of-coffee-2022/20221211-day11-capimseco/</link>
      <pubDate>Sun, 11 Dec 2022 11:15:00 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/advent-of-coffee-2022/20221211-day11-capimseco/</guid>
      <description>&lt;h2 id=&#34;day-11&#34;&gt;Day 11&lt;/h2&gt;&#xA;&lt;table&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Name&lt;/th&gt;&lt;td&gt;Capim Seco&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Grower&lt;/th&gt;&lt;td&gt;Rafael Dias Pereira&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Origin&lt;/th&gt;&lt;td&gt;Brazil&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Variety&lt;/th&gt;&lt;td&gt;Icatu&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Process&lt;/th&gt;&lt;td&gt;Pulped Natural&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Roast&lt;/th&gt;&lt;td&gt;Medium&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Acidity&lt;/th&gt;&lt;td&gt;Apple&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Mouthfeel&lt;/th&gt;&lt;td&gt;Round&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Hints of&lt;/th&gt;&lt;td&gt;Picnic bar&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;table&gt;&#xA;&lt;h3 id=&#34;preparation&#34;&gt;Preparation&lt;/h3&gt;&#xA;&lt;p&gt;Time: 11:15&lt;/p&gt;&#xA;&lt;p&gt;Washed the filter, warmed the mug and prepared hot water. Water temperature was 96.9ºC. Measured 22g coffee and poured 50ml over the coffee to wet it. Waited 30s and pured over a further 250ml water, keeping the filter funnel about half full.&lt;/p&gt;&#xA;&lt;h3 id=&#34;observation&#34;&gt;Observation&lt;/h3&gt;&#xA;&lt;p&gt;The coffee grounds had a spicy but earthy smell that I struggled to place. When wet they reminded me of freshly turned earth in the spring.&lt;/p&gt;</description>
    </item>
    <item>
      <title>La Esperanza</title>
      <link>https://billglover.me/notes/advent-of-coffee-2022/20221210-day10-laesperanza/</link>
      <pubDate>Sat, 10 Dec 2022 10:15:00 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/advent-of-coffee-2022/20221210-day10-laesperanza/</guid>
      <description>&lt;h2 id=&#34;day-10&#34;&gt;Day 10&lt;/h2&gt;&#xA;&lt;table&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Name&lt;/th&gt;&lt;td&gt;La Esperanza&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Grower&lt;/th&gt;&lt;td&gt;Javier Ortega&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Origin&lt;/th&gt;&lt;td&gt;Colombia&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Variety&lt;/th&gt;&lt;td&gt;Castillo, Colombia&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Process&lt;/th&gt;&lt;td&gt;Washed&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Roast&lt;/th&gt;&lt;td&gt;Medium&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Acidity&lt;/th&gt;&lt;td&gt;Apple&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Mouthfeel&lt;/th&gt;&lt;td&gt;Smooth&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Hints of&lt;/th&gt;&lt;td&gt;Raspberry &amp; green apple&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;table&gt;&#xA;&lt;h3 id=&#34;preparation&#34;&gt;Preparation&lt;/h3&gt;&#xA;&lt;p&gt;Time: 10:15&lt;/p&gt;&#xA;&lt;p&gt;Washed the filter, warmed the mug and prepared hot water. Water temperature was 94.6ºC. Measured 22g coffee and poured 50ml over the coffee to wet it. Waited 30s and pured over a further 250ml water, keeping the filter funnel about half full.&lt;/p&gt;&#xA;&lt;h3 id=&#34;observation&#34;&gt;Observation&lt;/h3&gt;&#xA;&lt;p&gt;The coffee grounds had one of the strongest aromas yet. A toasted bark smell with a hint of fruit.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Remera Natural</title>
      <link>https://billglover.me/notes/advent-of-coffee-2022/20221209-day09-remeranatural/</link>
      <pubDate>Fri, 09 Dec 2022 10:15:00 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/advent-of-coffee-2022/20221209-day09-remeranatural/</guid>
      <description>&lt;h2 id=&#34;day-9&#34;&gt;Day 9&lt;/h2&gt;&#xA;&lt;table&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Name&lt;/th&gt;&lt;td&gt;Remera Natural&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Grower&lt;/th&gt;&lt;td&gt;A collective of smallholder farmers&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Origin&lt;/th&gt;&lt;td&gt;Rwanda&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Variety&lt;/th&gt;&lt;td&gt;Bourbon&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Process&lt;/th&gt;&lt;td&gt;Natural&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Roast&lt;/th&gt;&lt;td&gt;Medium&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Acidity&lt;/th&gt;&lt;td&gt;Creamy&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Mouthfeel&lt;/th&gt;&lt;td&gt;Creamy&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Hints of&lt;/th&gt;&lt;td&gt;Strawberry &amp; cream&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;table&gt;&#xA;&lt;h3 id=&#34;preparation&#34;&gt;Preparation&lt;/h3&gt;&#xA;&lt;p&gt;Time: 10:15&lt;/p&gt;&#xA;&lt;p&gt;Washed the filter, warmed the mug and prepared hot water. Water temperature was 96.9ºC. Measured 22g coffee and poured 50ml over the coffee to wet it. Waited 30s and pured over a further 250ml water, keeping the filter funnel about half full.&lt;/p&gt;&#xA;&lt;h3 id=&#34;observation&#34;&gt;Observation&lt;/h3&gt;&#xA;&lt;p&gt;The coffee grounds reminded me of a sweet chinese plum, the sticky kind that are almost dry but still retain enough moisture to keep them soft.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Filadelfia</title>
      <link>https://billglover.me/notes/advent-of-coffee-2022/20221208-day08-filadelfia/</link>
      <pubDate>Thu, 08 Dec 2022 11:30:00 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/advent-of-coffee-2022/20221208-day08-filadelfia/</guid>
      <description>&lt;h2 id=&#34;day-8&#34;&gt;Day 8&lt;/h2&gt;&#xA;&lt;table&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Name&lt;/th&gt;&lt;td&gt;Filadelfia&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Grower&lt;/th&gt;&lt;td&gt;Roberto Dalton&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Origin&lt;/th&gt;&lt;td&gt;Guatemala&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Variety&lt;/th&gt;&lt;td&gt;Bourbon, Caturra&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Process&lt;/th&gt;&lt;td&gt;Washed&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Roast&lt;/th&gt;&lt;td&gt;Medium&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Acidity&lt;/th&gt;&lt;td&gt;Apple&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Mouthfeel&lt;/th&gt;&lt;td&gt;Coating&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Hints of&lt;/th&gt;&lt;td&gt;Dark chocolate tiffin&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;table&gt;&#xA;&lt;h3 id=&#34;preparation&#34;&gt;Preparation&lt;/h3&gt;&#xA;&lt;p&gt;Time: 11:30&lt;/p&gt;&#xA;&lt;p&gt;Washed the filter, warmed the mug and prepared hot water. Water temperature was 96.2ºC. Measured 22g coffee and poured 50ml over the coffee to wet it. Waited 30s and pured over a further 250ml water, keeping the filter funnel about half full.&lt;/p&gt;&#xA;&lt;h3 id=&#34;observation&#34;&gt;Observation&lt;/h3&gt;&#xA;&lt;p&gt;The coffee grounds had a distinct aroma of indian spices.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Buenos Aires</title>
      <link>https://billglover.me/notes/advent-of-coffee-2022/20221207-day07-buenosaires/</link>
      <pubDate>Wed, 07 Dec 2022 12:30:00 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/advent-of-coffee-2022/20221207-day07-buenosaires/</guid>
      <description>&lt;h2 id=&#34;day-7&#34;&gt;Day 7&lt;/h2&gt;&#xA;&lt;table&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Name&lt;/th&gt;&lt;td&gt;Buenos Aires&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Grower&lt;/th&gt;&lt;td&gt;José Ramón Collazos &amp; María Del Rosario Ariza Coy&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Origin&lt;/th&gt;&lt;td&gt;Colombia&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Variety&lt;/th&gt;&lt;td&gt;Caturra, Castillo&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Process&lt;/th&gt;&lt;td&gt;Washed&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Roast&lt;/th&gt;&lt;td&gt;Medium&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Acidity&lt;/th&gt;&lt;td&gt;Grape&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Mouthfeel&lt;/th&gt;&lt;td&gt;Round&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Hints of&lt;/th&gt;&lt;td&gt;Ripe plum&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;table&gt;&#xA;&lt;h3 id=&#34;preparation&#34;&gt;Preparation&lt;/h3&gt;&#xA;&lt;p&gt;Time: 12:00&lt;/p&gt;&#xA;&lt;p&gt;Washed the filter, warmed the mug and prepared hot water. Water temperature was 94.4ºC. Measured 22g coffee and poured 50ml over the coffee to wet it. Waited 30s and pured over a further 250ml water, keeping the filter funnel about half full.&lt;/p&gt;&#xA;&lt;h3 id=&#34;observation&#34;&gt;Observation&lt;/h3&gt;&#xA;&lt;p&gt;A very light smell, hints of apple and freshly sanded floorboards. It is entirely possible that recent floor sanding has clouded my sense of smell.&lt;/p&gt;</description>
    </item>
    <item>
      <title>El Derrumbo</title>
      <link>https://billglover.me/notes/advent-of-coffee-2022/20221206-day06-elderrumbo/</link>
      <pubDate>Tue, 06 Dec 2022 11:30:00 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/advent-of-coffee-2022/20221206-day06-elderrumbo/</guid>
      <description>&lt;h2 id=&#34;day-6&#34;&gt;Day 6&lt;/h2&gt;&#xA;&lt;table&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Name&lt;/th&gt;&lt;td&gt;El Derrumbo&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Grower&lt;/th&gt;&lt;td&gt;Joaquin Martinez&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Origin&lt;/th&gt;&lt;td&gt;Honduras&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Variety&lt;/th&gt;&lt;td&gt;Lempira&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Process&lt;/th&gt;&lt;td&gt;Washed&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Roast&lt;/th&gt;&lt;td&gt;Light&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Acidity&lt;/th&gt;&lt;td&gt;Apple&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Mouthfeel&lt;/th&gt;&lt;td&gt;Silky&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Hints of&lt;/th&gt;&lt;td&gt;Peach, nectarine &amp; white tea&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;table&gt;&#xA;&lt;h3 id=&#34;preparation&#34;&gt;Preparation&lt;/h3&gt;&#xA;&lt;p&gt;Time: 10:45&lt;/p&gt;&#xA;&lt;p&gt;Washed the filter, warmed the mug and prepared hot water. Water temperature was 93.6ºC. Measured 22g coffee and poured 50ml over the coffee to wet it. Waited 30s and pured over a further 250ml water, keeping the filter funnel about half full.&lt;/p&gt;&#xA;&lt;h3 id=&#34;observation&#34;&gt;Observation&lt;/h3&gt;&#xA;&lt;p&gt;There was a dampness to the smell of the grounds. Sweet, fruity but distinctly the strength of aroma that comes off damp mossy wood.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Ndundu</title>
      <link>https://billglover.me/notes/advent-of-coffee-2022/20221205-day05-ndundu/</link>
      <pubDate>Mon, 05 Dec 2022 11:30:00 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/advent-of-coffee-2022/20221205-day05-ndundu/</guid>
      <description>&lt;h2 id=&#34;day-5&#34;&gt;Day 5&lt;/h2&gt;&#xA;&lt;table&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Name&lt;/th&gt;&lt;td&gt;Ndundu&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Grower&lt;/th&gt;&lt;td&gt;A collective of smallholder farmers&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Origin&lt;/th&gt;&lt;td&gt;Kenya&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Variety&lt;/th&gt;&lt;td&gt;SL-28, SL-34&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Process&lt;/th&gt;&lt;td&gt;Washed&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Roast&lt;/th&gt;&lt;td&gt;Light&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Acidity&lt;/th&gt;&lt;td&gt;Grape&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Mouthfeel&lt;/th&gt;&lt;td&gt;Tea-like&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Hints of&lt;/th&gt;&lt;td&gt;Blackcurrant &amp; bergamot&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;table&gt;&#xA;&lt;h3 id=&#34;preparation&#34;&gt;Preparation&lt;/h3&gt;&#xA;&lt;p&gt;Time: 10:30&lt;/p&gt;&#xA;&lt;p&gt;Washed the filter, warmed the mug and prepared hot water. Water temperature was 94.2ºC. Measured 21g coffee and poured 50ml over the coffee to wet it. Waited 30s and pured over a further 250ml water, keeping the filter funnel about half full.&lt;/p&gt;&#xA;&lt;h3 id=&#34;observation&#34;&gt;Observation&lt;/h3&gt;&#xA;&lt;p&gt;The grounds reminded my of freshly pealed parsnip. Distinctly sweet but earthy, with a hint of apple. In the mug the armoa shifted, giving off a hint of berry or bramble.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Sertão</title>
      <link>https://billglover.me/notes/advent-of-coffee-2022/20221204-day04-sert%C3%A3o/</link>
      <pubDate>Sun, 04 Dec 2022 11:30:00 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/advent-of-coffee-2022/20221204-day04-sert%C3%A3o/</guid>
      <description>&lt;h2 id=&#34;day-4&#34;&gt;Day 4&lt;/h2&gt;&#xA;&lt;table&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Name&lt;/th&gt;&lt;td&gt;Sertão&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Grower&lt;/th&gt;&lt;td&gt;Nazareth Dias Pereira&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Origin&lt;/th&gt;&lt;td&gt;Brazil&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Variety&lt;/th&gt;&lt;td&gt;Bourbon&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Process&lt;/th&gt;&lt;td&gt;Natural&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Roast&lt;/th&gt;&lt;td&gt;Medium / Dark&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Acidity&lt;/th&gt;&lt;td&gt;Creamy&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Mouthfeel&lt;/th&gt;&lt;td&gt;Round&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Hints of&lt;/th&gt;&lt;td&gt;Dark chocolate, cherry &amp; almond&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;table&gt;&#xA;&lt;h3 id=&#34;preparation&#34;&gt;Preparation&lt;/h3&gt;&#xA;&lt;p&gt;Time: 10:30&lt;/p&gt;&#xA;&lt;p&gt;Washed the filter, warmed the mug and prepared hot water. Water temperature was 96.2ºC. Measured 22g coffee and poured 50ml over the coffee to wet it. Waited 30s and pured over a further 250ml water, keeping the filter funnel about half full.&lt;/p&gt;&#xA;&lt;h3 id=&#34;observation&#34;&gt;Observation&lt;/h3&gt;&#xA;&lt;p&gt;This coffee smelled toasted, a dark roast. The smell ends with a syrupy sweetness. In the mug the smell shifts towards the middled of the nose. The sweet notes fade leaving a strong woody smell.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Muungano</title>
      <link>https://billglover.me/notes/advent-of-coffee-2022/20221203-day03-muungano/</link>
      <pubDate>Sat, 03 Dec 2022 11:30:00 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/advent-of-coffee-2022/20221203-day03-muungano/</guid>
      <description>&lt;h2 id=&#34;day-3&#34;&gt;Day 3&lt;/h2&gt;&#xA;&lt;table&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Name&lt;/th&gt;&lt;td&gt;Muungano&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Grower&lt;/th&gt;&lt;td&gt;A collective of smallholder famrers&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Origin&lt;/th&gt;&lt;td&gt;Democratic Republic of the Congo&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Variety&lt;/th&gt;&lt;td&gt;Bourbon&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Process&lt;/th&gt;&lt;td&gt;Natural&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Roast&lt;/th&gt;&lt;td&gt;Light&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Acidity&lt;/th&gt;&lt;td&gt;Orange&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Mouthfeel&lt;/th&gt;&lt;td&gt;Velvety&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Hints of&lt;/th&gt;&lt;td&gt;Maraschino cherries&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;table&gt;&#xA;&lt;h3 id=&#34;preparation&#34;&gt;Preparation&lt;/h3&gt;&#xA;&lt;p&gt;Time: 15:30&lt;/p&gt;&#xA;&lt;p&gt;Washed the filter, warmed the mug and prepared hot water. Water temperature was 98.6ºC. Measured 20g coffee and poured 25ml over the coffee to wet it. Waited 30s and pured over a further 300ml water, keeping the filter funnel about half full.&lt;/p&gt;&#xA;&lt;h3 id=&#34;observation&#34;&gt;Observation&lt;/h3&gt;&#xA;&lt;p&gt;If the smell of the coffee were a musical note it would be high pitched. The smell itself was subtle but with hints of an earthy bitterness. In the mug, the musical notes drop a few octaves and we start to detect smells of toasting.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Zaroca</title>
      <link>https://billglover.me/notes/advent-of-coffee-2022/20221202-day02-zaroca/</link>
      <pubDate>Fri, 02 Dec 2022 11:30:00 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/advent-of-coffee-2022/20221202-day02-zaroca/</guid>
      <description>&lt;h2 id=&#34;day-2&#34;&gt;Day 2&lt;/h2&gt;&#xA;&lt;table&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Name&lt;/th&gt;&lt;td&gt;Zaroca&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Grower&lt;/th&gt;&lt;td&gt;Gilberto Basilo&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Origin&lt;/th&gt;&lt;td&gt;Brazil&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Variety&lt;/th&gt;&lt;td&gt;Mundo Novo&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Process&lt;/th&gt;&lt;td&gt;Pulped natural&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Roast&lt;/th&gt;&lt;td&gt;Dark&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Acidity&lt;/th&gt;&lt;td&gt;Apple&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Mouthfeel&lt;/th&gt;&lt;td&gt;Creamy&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Hints of&lt;/th&gt;&lt;td&gt;Dark chocolate &amp; cocoa nibs&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;table&gt;&#xA;&lt;h3 id=&#34;preparation&#34;&gt;Preparation&lt;/h3&gt;&#xA;&lt;p&gt;Time: 11:40&lt;/p&gt;&#xA;&lt;p&gt;Washed the filter, warmed the mug and prepared hot water. Water temperature was 95.6ºC. Measured 22g coffee and poured 25ml over the coffee to wet it. Waited 30s and pured over a further 260ml water, keeping the filter funnel about half full.&lt;/p&gt;&#xA;&lt;h3 id=&#34;observation&#34;&gt;Observation&lt;/h3&gt;&#xA;&lt;p&gt;Smelling the coffee when wet I was again reminded of smells that would put me right off coffee. A mushroom scent mixed with damp wood was something I couldn&amp;rsquo;t shake. This scent was interesting in that I could only sense it at the back of my nose right at the top. It&amp;rsquo;s rare to have such a localised sense of smell.&lt;/p&gt;</description>
    </item>
    <item>
      <title>El Tolú</title>
      <link>https://billglover.me/notes/advent-of-coffee-2022/20221201-day01-eltol%C3%BA/</link>
      <pubDate>Thu, 01 Dec 2022 11:30:00 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/advent-of-coffee-2022/20221201-day01-eltol%C3%BA/</guid>
      <description>&lt;h2 id=&#34;day-1&#34;&gt;Day 1&lt;/h2&gt;&#xA;&lt;table&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Name&lt;/th&gt;&lt;td&gt;El Tolú&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Grower&lt;/th&gt;&lt;td&gt;Manuel Duarte Orduz&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Origin&lt;/th&gt;&lt;td&gt;Columbia&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Variety&lt;/th&gt;&lt;td&gt;Castillo&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Process&lt;/th&gt;&lt;td&gt;Washed&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Roast&lt;/th&gt;&lt;td&gt;Light&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Acidity&lt;/th&gt;&lt;td&gt;Orange&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Mouthfeel&lt;/th&gt;&lt;td&gt;Silky&lt;/td&gt;&lt;/tr&gt;&#xA;  &lt;tr&gt;&lt;th&gt;Hints of&lt;/th&gt;&lt;td&gt;Lavender &amp; Honey&lt;/td&gt;&lt;/tr&gt;&#xA;&lt;table&gt;&#xA;&lt;h3 id=&#34;preparation&#34;&gt;Preparation&lt;/h3&gt;&#xA;&lt;p&gt;Time: 11:00&lt;/p&gt;&#xA;&lt;p&gt;Washed the filter, warmed the mug and prepared hot water. Water temperature was 95.6ºC. Measured 21g coffee and poured 25ml over the coffee to wet it. Waited 30s and pured over a further 250ml water, keeping the filter funnel about half full.&lt;/p&gt;&#xA;&lt;h3 id=&#34;observation&#34;&gt;Observation&lt;/h3&gt;&#xA;&lt;p&gt;Smelling the coffee when wet I was instantly reminded of Chinese food which I couldn&amp;rsquo;t quite place. I eventually settled on something that reminded me of roast meat accompanied by radish. A description that, if it appeared on the side of a bag of coffee, would almost instantly put me off buying it.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Docker and LetsEncrypt</title>
      <link>https://billglover.me/notes/docker-and-letsencrypt/</link>
      <pubDate>Thu, 20 Oct 2022 20:14:45 +0100</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/docker-and-letsencrypt/</guid>
      <description>&lt;p&gt;If you are running a private container registry and using a certificate provided by &lt;a href=&#34;https://letsencrypt.org/&#34;&gt;LetsEncrypt&lt;/a&gt;, make sure you are using &lt;code&gt;fullchain.pem&lt;/code&gt; and not &lt;code&gt;cert.pem&lt;/code&gt;. If you miss this, the Docker CLI will report that your certificate is signed by an unknown authority.&lt;/p&gt;&#xA;&lt;p&gt;I have an instance of &lt;a href=&#34;https://goharbor.io/&#34;&gt;Harbor&lt;/a&gt; running as a private container registry. The certificate used by this instance is provided by LetsEncrypt and yet the Docker CLI refused to let me log in.&lt;/p&gt;</description>
    </item>
    <item>
      <title>How to upgrade Ubuntu on Digital Ocean</title>
      <link>https://billglover.me/notes/upgrade-ubuntu-on-do/</link>
      <pubDate>Fri, 02 Sep 2022 21:32:13 +0100</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/upgrade-ubuntu-on-do/</guid>
      <description>&lt;h1 id=&#34;how-to-upgrade-ubuntu-on-digital-ocean&#34;&gt;How to upgrade Ubuntu on Digital Ocean&lt;/h1&gt;&#xA;&lt;p&gt;When canonical release a new version of Ubuntu, you are prompted to run this command to upgrade.&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;do&lt;/span&gt;-release-upgrade&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Running this command on a Digital Ocean droplet will give you the following warning.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&amp;ldquo;Some third party entries in your sources.list were disabled. You can re-enable them after the upgrade with the &amp;lsquo;software-properties&amp;rsquo; tool or your package manager.&amp;rdquo;&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;You can continue the upgrade but it will fail and roll-back to the previous version. The error you are given includes the following phrase.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Use a forked Go module</title>
      <link>https://billglover.me/notes/use-forked-go-module/</link>
      <pubDate>Wed, 01 Jun 2022 11:19:16 +0100</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/use-forked-go-module/</guid>
      <description>&lt;p&gt;Whenever I want to work with a forked Go module, I have to look up how to do so. It doesn&amp;rsquo;t feel immediately obvious what to change. This note documents my current approach.&lt;/p&gt;&#xA;&lt;p&gt;I need to do this when a third party module I depend on doesn&amp;rsquo;t include features I need. I fork the third party module and make some changes. But these changes are only available in my fork. These may get merged into a new version of the module but in the meantime I want to continue working off my fork.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Copy Files to and from a Container</title>
      <link>https://billglover.me/notes/kubectl-cp/</link>
      <pubDate>Tue, 24 May 2022 09:56:32 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/kubectl-cp/</guid>
      <description>&lt;p&gt;&lt;strong&gt;Problem:&lt;/strong&gt; I needed to copy some database files into a container running on Kubernetes without modifying the image or restarting the parent Pod.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Solution:&lt;/strong&gt; The Kubernetes CLI includes a sub-command for copying files into and out of a running container: &lt;code&gt;kubectl cp /tmp/foo &amp;lt;some-pod&amp;gt;:/tmp/bar&lt;/code&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;background&#34;&gt;Background&lt;/h2&gt;&#xA;&lt;p&gt;I&amp;rsquo;ve never found the need to copy files into a running container without issuing an updated image. This is somewhat of an anti-pattern as modifications to containerised filesystems that aren&amp;rsquo;t mounted externally are lost when the container process terminates.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Update Trivy Database in Harbor</title>
      <link>https://billglover.me/notes/harbor-trivy-db-update/</link>
      <pubDate>Thu, 19 May 2022 14:56:00 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/harbor-trivy-db-update/</guid>
      <description>&lt;p&gt;I recently deployed Harbor and Trivy with automatic updating disabled. I hadn&amp;rsquo;t realise that this would prevent images from being scanned at all and so needed to trigger a manual update. This note describes how to manually trigger an update to the Trviy database in Harbor deployed on top of VMware Tanzu Kubernetes Grid.&lt;/p&gt;&#xA;&lt;h3 id=&#34;demo&#34;&gt;Demo&lt;/h3&gt;&#xA;&lt;div id=&#34;trivy-db-update&#34;&gt;&lt;/div&gt;&#xA;&lt;script&gt;&#xA;    AsciinemaPlayer.create(&#xA;        &#39;trivy-db-update.cast&#39;,&#xA;        document.getElementById(&#39;trivy-db-update&#39;),&#xA;        {&#xA;            cols:100,&#xA;            rows:24,&#xA;            autoPlay:false,&#xA;            preload:false,&#xA;            loop:false,&#xA;            speed:2,&#xA;            idleTimeLimit:2,&#xA;            theme:&#34;asciinema&#34;&#xA;        }&#xA;        );&#xA;&lt;/script&gt;&#xA;&lt;h3 id=&#34;instructions&#34;&gt;Instructions&lt;/h3&gt;&#xA;&lt;p&gt;Switch context to the cluster where you have deployed Harbor.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Build Multi-Architecture Docker Images</title>
      <link>https://billglover.me/notes/build-multi-arch-docker-images/</link>
      <pubDate>Fri, 01 Apr 2022 19:22:32 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/build-multi-arch-docker-images/</guid>
      <description>&lt;p&gt;Back in 2018, I wrote about &lt;a href=&#34;https://billglover.me/2018/10/30/multi-architecture-docker-builds/&#34;&gt;Multi-Architecture Docker Builds&lt;/a&gt;. My main aim then was to run the occasional container image on a Raspberry Pi. Apple&amp;rsquo;s transition to M1 based machines has increased demand for multi-architecture container images. In this post, I document an improved approach to building multi-architecture images.&lt;/p&gt;&#xA;&lt;p&gt;I’ll use a Go application to show the build process. It prints the current runtime OS and CPU architecture to the terminal and then exits.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Writing multi-line strings into a text file in bash script</title>
      <link>https://billglover.me/notes/write-multiline-strings-in-bash-script/</link>
      <pubDate>Thu, 24 Mar 2022 22:36:19 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/write-multiline-strings-in-bash-script/</guid>
      <description>&lt;p&gt;&lt;strong&gt;Problem:&lt;/strong&gt; I wanted to use a shell script to write multi-line strings into a text file. I didn&amp;rsquo;t want parameters or commands to be substituted in the text being written.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Solution:&lt;/strong&gt; You need to quote the limit string when specifying your here-document.&lt;/p&gt;&#xA;&lt;h3 id=&#34;references&#34;&gt;References&lt;/h3&gt;&#xA;&lt;p&gt;My fist discovery was that the pattern for doing this in a shell script was called a &amp;ldquo;Here Document&amp;rdquo;. I don&amp;rsquo;t think I have ever looked up the &lt;code&gt;bash&lt;/code&gt; manual before. But this is where I found the solution.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Replace Environment Variables in a File</title>
      <link>https://billglover.me/notes/replace-environment-variables-in-a-file/</link>
      <pubDate>Mon, 21 Mar 2022 20:17:59 +0000</pubDate><author>hello@bill.dev (Bill)</author>
      <guid>https://billglover.me/notes/replace-environment-variables-in-a-file/</guid>
      <description>&lt;p&gt;Every now and again you stumble across a command that solves a problem you didn&amp;rsquo;t realise you had. Recently, I discovered &lt;code&gt;envsubst&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&amp;ldquo;Substitutes the values of environment variables.&amp;rdquo;&lt;/p&gt;&#xA;&lt;/blockquote&gt;&#xA;&lt;p&gt;I&amp;rsquo;ve found myself substituting environment variables in configuration files increasingly often (see: Kubernetes). On more than one occasion I&amp;rsquo;ve tied myself in knots trying to do this with scripts. It turns out that &lt;code&gt;envsubst&lt;/code&gt; does most of what I need.&lt;/p&gt;&#xA;&lt;p&gt;Take the following file, example.yaml:&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
