<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="4.3.4">Jekyll</generator><link href="https://colon-analogy-notation.personal-website-a13.pages.dev/feed/bitsbipsbricks.xml" rel="self" type="application/atom+xml" /><link href="https://colon-analogy-notation.personal-website-a13.pages.dev/" rel="alternate" type="text/html" /><updated>2024-12-02T00:35:50+00:00</updated><id>https://colon-analogy-notation.personal-website-a13.pages.dev/feed/bitsbipsbricks.xml</id><title type="html">Ram’s Personal Website | Bitsbipsbricks</title><subtitle>Built by Ram Vasuthevan with ❤️ on the [shoulders of giants](/acknowledgements.html)</subtitle><entry><title type="html">Colon Analogy Notation</title><link href="https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/Colon-Analogy-Notation" rel="alternate" type="text/html" title="Colon Analogy Notation" /><published>2024-11-28T00:00:00+00:00</published><updated>2024-11-28T00:00:00+00:00</updated><id>https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/Colon-Analogy-Notation</id><content type="html" xml:base="https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/Colon-Analogy-Notation"><![CDATA[<div class="image-container">
    <img src="/assets/bitsbipsbricks/Colon-Analogy-Notation/colon_analogy_notation.png" alt="A:B::C:D to represent A is to B as C is to D" width="500px" />
    <div class="caption">
        

    </div>
</div>

<p>I have been trying to find the name for this very common notation for analogies:</p>

<blockquote>
  <p>
    <strong style="font-weight: bold; color: #111;">A:B::C:D</strong> to represent <strong style="font-weight: bold; color: #111;">A is to B as C is to D</strong>
  </p>
</blockquote>

<p>I have found it helpful to query LLMs (ChatGPT 4o in my case) with questions in the format <strong>A:B::C:??</strong></p>

<p>I have tried to find the name for this notation by asking <a href="https://chatgpt.com/share/671d1380-56b8-8013-84c4-7f1ace68b6db">ChatGPT</a>, using Google Search and Google Scholar, but I have not found anything authoritative.</p>

<p>I think the name <strong>Colon Analogy Notation</strong> is a good <a href="https://en.wikipedia.org/wiki/Schelling_point">Schelling point</a>. Someone familiar with the syntax would intuitively recognize the connection upon hearing the name. Likewise, if someone knows the syntax, this might be the name they would naturally search for.</p>

<p>I would love to know if there is a preexisting name for this notation and the history of its use. But it is hard to search for something when you don’t know its name.</p>

<p>So I have written the article I would like to have found for the next searcher.</p>

<p>This <a href="/bitsbipsbricks/Jekyll-Sub-Blogs">sub-blog</a> is for posts written at a certain point in time. I don’t usually update them, but I’ll update this if I learn more.</p>

<p>If you know more, please email me (my email is in the footer) or reach out on <a href="https://twitter.com/RamVasuthevan">Twitter</a>.</p>]]></content><author><name></name></author><category term="bitsbipsbricks" /><summary type="html"><![CDATA[]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://colon-analogy-notation.personal-website-a13.pages.dev/assets/bitsbipsbricks/Colon-Analogy-Notation/colon_analogy_notation.png" /><media:content medium="image" url="https://colon-analogy-notation.personal-website-a13.pages.dev/assets/bitsbipsbricks/Colon-Analogy-Notation/colon_analogy_notation.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Maximizing, Satisficing and Perfectionism</title><link href="https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/Maxing" rel="alternate" type="text/html" title="Maximizing, Satisficing and Perfectionism" /><published>2024-08-10T00:00:00+00:00</published><updated>2024-08-10T00:00:00+00:00</updated><id>https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/Maxing</id><content type="html" xml:base="https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/Maxing"><![CDATA[<div class="image-container">
    <img src="/assets/bitsbipsbricks/Maxing/PXL_20240701_183556254.RAW-01.COVER.jpg" alt="Caffe latte on white ceramic cup beside silver and black laptop computer" width="500px" />
    <div class="caption">
        <p>Me <a href="https://streams.place/ramvasuthevan/drops/203230380562751488">experimenting</a> with my daily bagel</p>

    </div>
</div>

<p>I have always had the temperament of a satisficer. I find something that works for me, and I stick to it forever. It’s simple and easy, once I make a commitment to something, I don’t have to think about that category of thing again. I do this for <a href="https://streams.place/ramvasuthevan/drops/203230380562751488">bagels</a>, <a href="/ram-warrants#black-uni-ball-signo-um-151-gel-ink-pen---038-mm">pens</a> and IDEs. But I am starting to wonder if I am missing out by not maximizing more.</p>

<p>When thinking about new solutions, whether it be software tools, hot sauces, or notetaking apps, I become a perfectionist. I start thinking of my elaborate theoretical use cases and then become overwhelmed and actually do nothing.</p>

<p>If it’s a cheap, <a href="https://fs.blog/reversible-irreversible-decisions/">reversible decision</a>, the only real mistake is procrastinating on making a decision</p>

<p>TLDR: JUST DO IT!</p>]]></content><author><name></name></author><category term="bitsbipsbricks" /><summary type="html"><![CDATA[Me experimenting with my daily bagel]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://colon-analogy-notation.personal-website-a13.pages.dev/assets/bitsbipsbricks/Maxing/PXL_20240701_183556254.RAW-01.COVER.jpg" /><media:content medium="image" url="https://colon-analogy-notation.personal-website-a13.pages.dev/assets/bitsbipsbricks/Maxing/PXL_20240701_183556254.RAW-01.COVER.jpg" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Twitter Cards Images are Cached</title><link href="https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/Twitter-Cards-Cached" rel="alternate" type="text/html" title="Twitter Cards Images are Cached" /><published>2024-07-16T00:00:00+00:00</published><updated>2024-07-16T00:00:00+00:00</updated><id>https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/Twitter-Cards-Cached</id><content type="html" xml:base="https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/Twitter-Cards-Cached"><![CDATA[<div class="image-container">
    <img src="/assets/bitsbipsbricks/Twitter-Cards-Cached/replicate-prediction-ey7z80d79srgj0cgqhpvf0sw7m.png" alt="A Blue Jay generated by [sdxl](https://replicate.com/p/ey7z80d79srgj0cgqhpvf0sw7m)" width="300px" />
    <div class="caption">
        

    </div>
</div>

<p><br /></p>

<p><a href="https://x.com/search?q=%22Today%20I%20learned%22%20OR%20TIL%20from%3ARamVasuthevan&amp;src=typed_query&amp;f=top">Recently, I learned</a> in a not-so-enjoyable fashion that Twitter caches <a href="https://developer.x.com/en/docs/twitter-for-websites/cards/overview/summary-card-with-large-image">summary card images</a>.</p>

<p>While writing <a href="/bitsbipsbricks/Mastodon-Verification">Verify Jekyll Minima Sites on Mastodon</a>, I originally had a summary card image which was getting cropped poorly, so I kept the image that was being displayed at the top of the article but changed the summary card image with a wider version which got a better crop. And it showed up correctly in my preferred Twitter Card preview tool: <a href="https://www.bannerbear.com/tools/twitter-card-preview-tool/">BannerBear Twitter Card Preview Tool</a>.</p>

<div class="image-container">
    <img src="/assets/bitsbipsbricks/Twitter-Cards-Cached/Screenshot 2024-07-13 at 3.50.56 PM.png" alt="" width="300px" />
    <div class="caption">
        

    </div>
</div>

<p>But when I posted it to Twitter, the old image would show up both when I actually posted it and in the preview when I was composing it.</p>

<p><br /></p>

<div style="display: flex; align-items: flex-end; justify-content: center;">
    
    <img src="/assets/bitsbipsbricks/Twitter-Cards-Cached/Screenshot%202024-07-13%20at%202.54.40%E2%80%AFPM.png" alt="Image 1" style="width: 300px; margin-right: 5px;" />
    <img src="/assets/bitsbipsbricks/Twitter-Cards-Cached/Screenshot%202024-07-13%20at%203.50.53%E2%80%AFPM.png" alt="Image 2" style="width: 300px;" />
</div>

<p>After some frustrating troubleshooting, I found this <a href="https://devcommunity.x.com/t/twitter-summary-cards-are-they-cached/18345">support forum thread</a> that said Twitter caches summary images for about a week, and the <a href="https://cards-dev.twitter.com/validator">preview tool</a> could be used to expire the cache.</p>

<p>And while the preview tool, no longer actually shows you a preview of a tweet, it does bust the cache.</p>

<div class="image-container">
    <img src="/assets/bitsbipsbricks/Twitter-Cards-Cached/Screenshot%202024-07-13%20at%204.43.36%E2%80%AFPM.png" alt="" />
    <div class="caption">
        

    </div>
</div>

<p>Unfortunately, this type of amateurism is typical of Twitter.</p>

<p>I am not really happy with my investigation into this issue. I wonder if there is a way to accurately preview tweets with the cached images.</p>]]></content><author><name></name></author><category term="bitsbipsbricks" /><summary type="html"><![CDATA[]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://colon-analogy-notation.personal-website-a13.pages.dev/assets/bitsbipsbricks/Twitter-Cards-Cached/replicate-prediction-ey7z80d79srgj0cgqhpvf0sw7m.png" /><media:content medium="image" url="https://colon-analogy-notation.personal-website-a13.pages.dev/assets/bitsbipsbricks/Twitter-Cards-Cached/replicate-prediction-ey7z80d79srgj0cgqhpvf0sw7m.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Verify Jekyll Minima Sites on Mastodon</title><link href="https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/Mastodon-Verification" rel="alternate" type="text/html" title="Verify Jekyll Minima Sites on Mastodon" /><published>2024-07-13T00:00:00+00:00</published><updated>2024-07-13T00:00:00+00:00</updated><id>https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/Mastodon-Verification</id><content type="html" xml:base="https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/Mastodon-Verification"><![CDATA[<div class="image-container">
    <img src="/assets/bitsbipsbricks/Mastodon-Verification/mastodon-elephant-logo.webp" alt="Mastodon elephant logo" width="300px" />
    <div class="caption">
        

    </div>
</div>

<p><br /></p>

<p>On Mastodon, one way that you can prove that you are who you say you are is by verifying that you own your personal site.</p>

<p>For example, on my <a href="https://mastodon.social/@RamVasuthevan">Mastodon account</a>, I have verified that I own <a href="https://ramvasuthevan.ca">ramvasuthevan.ca</a></p>

<p>You prove that you own a page by having a link from that page to your Mastodon account with a <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/rel/me"><code class="language-plaintext highlighter-rouge">rel="me"</code></a> attribute.</p>

<p>The two simplest ways to verify your site:</p>

<ol>
  <li>
    <p>Adding an invisible <code class="language-plaintext highlighter-rouge">&lt;link&gt;</code> tag inside the <code class="language-plaintext highlighter-rouge">&lt;head&gt;</code> tag at the top page to the account that you’d like to be verified for:</p>

    <div class="language-html highlighter-rouge"><div class="highlight"><pre class="highlight"><code> <span class="nt">&lt;link</span> <span class="na">rel=</span><span class="s">"me"</span> <span class="na">href=</span><span class="s">"https://mastodon.social/@RamVasuthevan"</span><span class="nt">&gt;</span> 
</code></pre></div>    </div>
  </li>
  <li>
    <p>By adding a hyperlink to your Mastodon profile somewhere on the page, like:</p>

    <div class="language-html highlighter-rouge"><div class="highlight"><pre class="highlight"><code> <span class="nt">&lt;a</span> <span class="na">rel=</span><span class="s">"me"</span> <span class="na">href=</span><span class="s">"https://mastodon.social/@RamVasuthevan"</span><span class="nt">&gt;</span>Mastodon<span class="nt">&lt;/a&gt;</span> 
</code></pre></div>    </div>
  </li>
</ol>

<p>Unfortunately, if you add your Mastodon profile to your config file like <a href="https://github.com/jekyll/minima/tree/2.5-stable?tab=readme-ov-file#social-networks">this</a>:</p>

<figure class="highlight"><pre><code class="language-yaml" data-lang="yaml"><span class="na">mastodon</span><span class="pi">:</span>
  <span class="pi">-</span> <span class="na">username</span><span class="pi">:</span> <span class="s">RamVasuthevan</span>
    <span class="na">instance</span><span class="pi">:</span> <span class="s">mastodon.social</span></code></pre></figure>

<p>Minima 2.5 does not automatically add the <code class="language-plaintext highlighter-rouge">rel=me</code> attribute to the link in the footer of your site. And there is no <a href="https://github.com/jekyll/minima/issues/696#issuecomment-1357651146">plans</a> to add automatic verification until Minima 3.</p>

<p>But you can copy the <a href="https://github.com/jekyll/minima/blob/2.5-stable/_includes/social.html">_includes/social.html</a> file and add it to your <code class="language-plaintext highlighter-rouge">_includes</code> file. And then add a <code class="language-plaintext highlighter-rouge">rel="me"</code> attribute to the a href tag for Mastodon.</p>

<p>Or you can just copy my <a href="https://github.com/RamVasuthevan/Personal-Website/blob/dd4391b0aeee65c8d03cd49cfe8f17e3d37f960b/website/_includes/social.html">version</a>.</p>

<p>After adding the link to your page, go to <a href="https://mastodon.social/settings/profile">https://mastodon.social/settings/profile</a> and add the page you want to verify as one of the extra fields.</p>

<p><br /></p>

<div class="image-container">
    <img src="/assets/bitsbipsbricks/Mastodon-Verification/Screenshot 2024-07-13 at 1.55.02 PM.png" alt="Mastodon elephant logo" width="400px" />
    <div class="caption">
        

    </div>
</div>

<p><br /></p>

<p>Your profile must be updated after adding the rel-me link to your web page. If you have added the link to your profile before, try removing the link from your profile, saving, re-adding the link, and then saving again. (See <a href="https://docs.joinmastodon.org/user/profile/#verification">documentation</a>).</p>]]></content><author><name></name></author><category term="bitsbipsbricks" /><summary type="html"><![CDATA[]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://colon-analogy-notation.personal-website-a13.pages.dev/assets/bitsbipsbricks/Mastodon-Verification/mastodon-elephant-logo-wider.webp" /><media:content medium="image" url="https://colon-analogy-notation.personal-website-a13.pages.dev/assets/bitsbipsbricks/Mastodon-Verification/mastodon-elephant-logo-wider.webp" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Search for All Dependabot Created PRs on Your Repos</title><link href="https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/Github-Dependabot-PRs" rel="alternate" type="text/html" title="Search for All Dependabot Created PRs on Your Repos" /><published>2024-06-29T00:00:00+00:00</published><updated>2024-06-29T00:00:00+00:00</updated><id>https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/github-dependabot-prs</id><content type="html" xml:base="https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/Github-Dependabot-PRs"><![CDATA[<div class="image-container">
    <img src="/assets/bitsbipsbricks/Github-Dependabot-PRs/nolan-issac-It0DCaCBr40-unsplash.jpg" alt="Caffe latte on white ceramic cup beside silver and black laptop computer" />
    <div class="caption">
        
<p>Photo by <a href="https://unsplash.com/@@nolanissac">Nolan Issac</a> from <a href="https://unsplash.com/photos/caffe-latte-on-white-ceramic-cup-beside-silver-and-black-laptop-computer-It0DCaCBr40">Unsplash</a></p>

    </div>
</div>

<p>In the spirit of early <a href="https://www.kalzumeus.com/2006/">patio11</a>, I’m going to write more about what I worked on, what I learned, and the problems I solved on any given day.</p>

<p>In that spirit, I have a bunch of repos with Dependabot enabled. It’s a pain in the ass to manually go to all of the repos and see if a Dependabot PR has been created.</p>

<p>Search query: <code id="search-query">is:pr author:app/dependabot is:open archived:false user:@me</code></p>

<p><a href="https://github.com/search?q=is%3Apr+author%3Aapp%2Fdependabot+is%3Aopen+archived%3Afalse+user%3A%40me&amp;type=pullrequests" target="_blank">GitHub Search for Dependabot PRs</a></p>]]></content><author><name></name></author><category term="bitsbipsbricks" /><summary type="html"><![CDATA[Photo by Nolan Issac from Unsplash]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://colon-analogy-notation.personal-website-a13.pages.dev/assets/bitsbipsbricks/Github-Dependabot-PRs/nolan-issac-It0DCaCBr40-unsplash.jpg" /><media:content medium="image" url="https://colon-analogy-notation.personal-website-a13.pages.dev/assets/bitsbipsbricks/Github-Dependabot-PRs/nolan-issac-It0DCaCBr40-unsplash.jpg" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Create Jekyll Sub Blogs using only Liquid</title><link href="https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/Jekyll-Sub-Blogs" rel="alternate" type="text/html" title="Create Jekyll Sub Blogs using only Liquid" /><published>2024-05-14T00:00:00+00:00</published><updated>2024-05-14T00:00:00+00:00</updated><id>https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/Jekyll-Sub-Blogs</id><content type="html" xml:base="https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/Jekyll-Sub-Blogs"><![CDATA[<style>
  :not(pre) > code {
    background-color: #f4f4f4; /* Light grey background */
    color: #333; /* Darker text for better readability */
    padding: 2px 4px;
    border-radius: 4px;
  }
</style>

<div class="image-container">
    <img src="/assets/bitsbipsbricks/Jekyll-Sub-Blogs/andrew-neel-cckf4TsHAuw-unsplash.jpg" alt="Stock photo of a laptop, coffee, pen, notepad and phone" />
    <div class="caption">
        
<p>Photo by <a href="https://unsplash.com/@@andrewtneel">Andrew Neel</a> from <a href="https://unsplash.com/photos/macbook-pro-white-ceramic-mugand-black-smartphone-on-table-cckf4TsHAuw">Unsplash</a></p>

    </div>
</div>

<p>I started writing this <a href="/bitsbipsbricks.html">blog</a> in the spirit of <a href="https://www.visakanv.com/blog/do100things/">Visa’s do 100’s things</a>. The best way to become a better writer is to write. Writing and writing energy is not scarce. It’s not like you have a finite number of things you can write in your life. The more you write, the more you can write. If you write an article about an idea, it doesn’t need to be perfect. You can always write more about it later.</p>

<p>I started writing on <a href="https://ghost.org/">Ghost</a> because it was easy to set up and maintain. At first, I didn’t mention my name anywhere. Eventually, I decided to merge it with my personal site after I became more confident with my writing and so that I could gain more control over how the site looked. As an engineer, I love being able to take advantage of Git for version control, setting up my writing environment using VS Code and knowing that I can easily maintain and migrate it from Jekyll if necessary.</p>

<p>Jekyll by default puts all blog posts into one feed, but sometimes, I want to write something small, a <a href="/snippets">snippet</a>, a note mostly for myself, that doesn’t really fit in <a href="/bitsbipsbricks">Bits, Bips and Bricks</a>.</p>

<p>By taking advantage of Jekyll categories and tags you can easily have multiple sub blogs each with their own Atom feed using only Liquid.</p>

<p>A <a href="https://jekyllrb.com/docs/posts/#categories">category</a> can be defined using the front matter keys <code class="language-plaintext highlighter-rouge">category</code> or <code class="language-plaintext highlighter-rouge">categories</code> (a space separated list of categories) or putting a directory above the post’s <code class="language-plaintext highlighter-rouge">_post</code> directory with the name of the category.</p>

<p>A <a href="https://jekyllrb.com/docs/posts/#tags">tag</a> can be defined using can be defined using the front matter keys <code class="language-plaintext highlighter-rouge">tag</code> or <code class="language-plaintext highlighter-rouge">tags</code> (a space separated list of tags)</p>

<p>This snippet is built to match the style of Minma, but similar logic can be used for other themes.</p>

<p>Copy the following code and paste it in <code class="language-plaintext highlighter-rouge">_includes/blog.html</code>:</p>

<figure class="highlight"><pre><code class="language-liquid" data-lang="liquid">&lt;div class="blog"&gt;
    &lt;h2 class="post-list-heading"&gt;<span class="cp">{{</span><span class="w"> </span><span class="nv">page</span><span class="p">.</span><span class="nv">list_title</span><span class="w"> </span><span class="p">|</span><span class="w"> </span><span class="nf">default</span><span class="p">:</span><span class="w"> </span><span class="s2">"Posts"</span><span class="w"> </span><span class="cp">}}</span>&lt;/h2&gt;
    &lt;ul class="post-list"&gt;
      <span class="cp">{%-</span><span class="w"> </span><span class="nt">for</span><span class="w"> </span><span class="nv">post</span><span class="w"> </span><span class="nt">in</span><span class="w"> </span><span class="nv">site</span><span class="p">.</span><span class="nv">posts</span><span class="w"> </span><span class="cp">-%}</span>
      <span class="cp">{%-</span><span class="w"> </span><span class="nt">if</span><span class="w"> </span><span class="nv">post</span><span class="p">.</span><span class="nv">categories</span><span class="w"> </span><span class="ow">contains</span><span class="w"> </span><span class="nv">include</span><span class="p">.</span><span class="nv">category</span><span class="w"> </span><span class="ow">or</span><span class="w"> </span><span class="nv">post</span><span class="p">.</span><span class="nv">tags</span><span class="w"> </span><span class="ow">contains</span><span class="w"> </span><span class="nv">include</span><span class="p">.</span><span class="nv">tag</span><span class="w"> </span><span class="cp">-%}</span>
      &lt;li&gt;
        <span class="cp">{%-</span><span class="w"> </span><span class="nt">assign</span><span class="w"> </span><span class="nv">date_format</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">site</span><span class="p">.</span><span class="nv">minima</span><span class="p">.</span><span class="nv">date_format</span><span class="w"> </span><span class="p">|</span><span class="w"> </span><span class="nf">default</span><span class="p">:</span><span class="w"> </span><span class="s2">"%b %-d, %Y"</span><span class="w"> </span><span class="cp">-%}</span>
        &lt;span class="post-meta"&gt;<span class="cp">{{</span><span class="w"> </span><span class="nv">post</span><span class="p">.</span><span class="nv">date</span><span class="w"> </span><span class="p">|</span><span class="w"> </span><span class="nf">date</span><span class="p">:</span><span class="w"> </span><span class="nv">date_format</span><span class="w"> </span><span class="cp">}}</span>&lt;/span&gt;
        &lt;h3&gt;
          &lt;a class="post-link" href="<span class="cp">{{</span><span class="w"> </span><span class="nv">post</span><span class="p">.</span><span class="nv">url</span><span class="w"> </span><span class="p">|</span><span class="w"> </span><span class="nf">relative_url</span><span class="w"> </span><span class="cp">}}</span>"&gt;
            <span class="cp">{{</span><span class="w"> </span><span class="nv">post</span><span class="p">.</span><span class="nv">title</span><span class="w"> </span><span class="p">|</span><span class="w"> </span><span class="nf">escape</span><span class="w"> </span><span class="cp">}}</span>
          &lt;/a&gt;
        &lt;/h3&gt;
        <span class="cp">{%-</span><span class="w"> </span><span class="nt">if</span><span class="w"> </span><span class="nv">site</span><span class="p">.</span><span class="nv">show_excerpts</span><span class="w"> </span><span class="cp">-%}</span>
          <span class="cp">{{</span><span class="w"> </span><span class="nv">post</span><span class="p">.</span><span class="nv">excerpt</span><span class="w"> </span><span class="cp">}}</span>
        <span class="cp">{%-</span><span class="w"> </span><span class="nt">endif</span><span class="w"> </span><span class="cp">-%}</span>
      &lt;/li&gt;
      <span class="cp">{%-</span><span class="nt">endif</span><span class="w"> </span><span class="cp">-%}</span>
      <span class="cp">{%-</span><span class="w"> </span><span class="nt">endfor</span><span class="w"> </span><span class="cp">-%}</span>

    &lt;/ul&gt;

    <span class="cp">{%-</span><span class="w"> </span><span class="nt">if</span><span class="w"> </span><span class="nv">include</span><span class="p">.</span><span class="nv">category</span><span class="w"> </span><span class="ow">and</span><span class="w"> </span><span class="nv">site</span><span class="p">.</span><span class="nv">feed</span><span class="p">.</span><span class="nv">categories</span><span class="w"> </span><span class="ow">contains</span><span class="w"> </span><span class="nv">include</span><span class="p">.</span><span class="nv">category</span><span class="w"> </span><span class="cp">-%}</span>
      <span class="cp">{%</span><span class="w"> </span><span class="nt">unless</span><span class="w"> </span><span class="nv">include</span><span class="p">.</span><span class="nv">tag</span><span class="w"> </span><span class="cp">%}</span>
      <span class="cp">{%</span><span class="w"> </span><span class="nt">assign</span><span class="w"> </span><span class="nv">feed_location</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nv">site</span><span class="p">.</span><span class="nv">feed</span><span class="p">.</span><span class="nv">categories</span><span class="p">[</span><span class="nv">include</span><span class="p">.</span><span class="nv">category</span><span class="p">].</span><span class="nv">path</span><span class="w"> </span><span class="p">|</span><span class="w"> </span><span class="nf">default</span><span class="p">:</span><span class="w"> </span><span class="s1">'/feed/'</span><span class="w"> </span><span class="p">|</span><span class="w"> </span><span class="nf">append</span><span class="p">:</span><span class="w"> </span><span class="nv">include</span><span class="p">.</span><span class="nv">category</span><span class="w"> </span><span class="p">|</span><span class="w"> </span><span class="nf">append</span><span class="p">:</span><span class="w"> </span><span class="s1">'.xml'</span><span class="w"> </span><span class="p">|</span><span class="w"> </span><span class="nf">relative_url</span><span class="w"> </span><span class="cp">%}</span>
        &lt;p class="rss-subscribe"&gt;subscribe &lt;a href="<span class="cp">{{</span><span class="w"> </span><span class="s1">'/feed/'</span><span class="w"> </span><span class="p">|</span><span class="w"> </span><span class="nf">append</span><span class="p">:</span><span class="w"> </span><span class="nv">include</span><span class="p">.</span><span class="nv">category</span><span class="w"> </span><span class="p">|</span><span class="w"> </span><span class="nf">append</span><span class="p">:</span><span class="w"> </span><span class="s1">'.xml'</span><span class="w"> </span><span class="p">|</span><span class="w"> </span><span class="nf">relative_url</span><span class="w"> </span><span class="cp">}}</span>"&gt;via RSS&lt;/a&gt;&lt;/p&gt;
        <span class="cp">{%</span><span class="w"> </span><span class="nt">endunless</span><span class="w"> </span><span class="cp">%}</span>
    <span class="cp">{%-</span><span class="w"> </span><span class="nt">endif</span><span class="w"> </span><span class="cp">-%}</span>

    <span class="cp">{%-</span><span class="w"> </span><span class="nt">if</span><span class="w"> </span><span class="nv">include</span><span class="p">.</span><span class="nv">tag</span><span class="w"> </span><span class="ow">and</span><span class="w"> </span><span class="nv">site</span><span class="p">.</span><span class="nv">feed</span><span class="p">.</span><span class="nv">tags</span><span class="w"> </span><span class="ow">contains</span><span class="w"> </span><span class="nv">include</span><span class="p">.</span><span class="nv">tag</span><span class="w"> </span><span class="cp">-%}</span>
    <span class="cp">{%</span><span class="w"> </span><span class="nt">unless</span><span class="w"> </span><span class="nv">include</span><span class="p">.</span><span class="nv">category</span><span class="w"> </span><span class="cp">%}</span>
      &lt;p class="rss-subscribe"&gt;subscribe &lt;a href="<span class="cp">{{</span><span class="w"> </span><span class="s1">'/feed/'</span><span class="w"> </span><span class="p">|</span><span class="w"> </span><span class="nf">append</span><span class="p">:</span><span class="w"> </span><span class="nv">include</span><span class="p">.</span><span class="nv">tag</span><span class="w"> </span><span class="p">|</span><span class="w"> </span><span class="nf">append</span><span class="p">:</span><span class="w"> </span><span class="s1">'.xml'</span><span class="w"> </span><span class="p">|</span><span class="w"> </span><span class="nf">relative_url</span><span class="w"> </span><span class="cp">}}</span>"&gt;via RSS&lt;/a&gt;&lt;/p&gt;
    <span class="cp">{%</span><span class="w"> </span><span class="nt">endunless</span><span class="w"> </span><span class="cp">%}</span>
    <span class="cp">{%-</span><span class="w"> </span><span class="nt">endif</span><span class="w"> </span><span class="cp">-%}</span>

&lt;/div&gt;</code></pre></figure>

<p>The above code is available under the <a href="/assets/bitsbipsbricks/Jekyll-Sub-Blogs/license.txt">MIT license</a> and contains code from <a href="https://github.com/jekyll/minima/blob/38a84a949f9753c4542e25f422935f59b4913053/_layouts/home.html">minima/_layouts/home.html</a>
<br /></p>

<p>On the page that you want a sub blog with only posts from a certain category:</p>

<figure class="highlight"><pre><code class="language-liquid" data-lang="liquid"><span class="cp">{%</span><span class="w"> </span><span class="nt">include</span><span class="w"> </span>blog.html<span class="w"> </span><span class="na">category</span><span class="o">=</span><span class="s2">"category_name"</span><span class="w"> </span><span class="cp">%}</span></code></pre></figure>

<p>On the page that you want a sub blog with only posts with a certain tag:</p>

<figure class="highlight"><pre><code class="language-liquid" data-lang="liquid"><span class="cp">{%</span><span class="w"> </span><span class="nt">include</span><span class="w"> </span>blog.html<span class="w"> </span><span class="na">tag</span><span class="o">=</span><span class="s2">"tag_name"</span><span class="w"> </span><span class="cp">%}</span></code></pre></figure>

<p>If you don’t add a category or tag parameter, then all posts will be in the sub blog.</p>

<p><a href="https://github.com/jekyll/minima/pull/137/files#r124796175">Minima</a> assumes that if there are no posts, the feed will not be shown. I disagree, you can have a blog without blog posts.</p>

<p>Make sure to update your <em>_config.yml</em> according to the instructions for <a href="https://github.com/jekyll/jekyll-feed">jekyll-feed</a> to make sure that the feeds for your category or tag are generated.</p>]]></content><author><name></name></author><category term="bitsbipsbricks" /><summary type="html"><![CDATA[]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://colon-analogy-notation.personal-website-a13.pages.dev/assets/bitsbipsbricks/Jekyll-Sub-Blogs/andrew-neel-cckf4TsHAuw-unsplash.jpg" /><media:content medium="image" url="https://colon-analogy-notation.personal-website-a13.pages.dev/assets/bitsbipsbricks/Jekyll-Sub-Blogs/andrew-neel-cckf4TsHAuw-unsplash.jpg" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">A Bit of a Sabbatical: Time for More Focus</title><link href="https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/Focus" rel="alternate" type="text/html" title="A Bit of a Sabbatical: Time for More Focus" /><published>2023-11-25T00:00:00+00:00</published><updated>2023-11-25T00:00:00+00:00</updated><id>https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/A%20Bit-of-a-Sabbatical-Time-for-More-Focus</id><content type="html" xml:base="https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/Focus"><![CDATA[<div class="image-container">
    <img src="/assets/bitsbipsbricks/Focus/patrick-tomasso-61MtRBl1qeE-unsplash.jpg" alt="Toronto Buildings In Fog" />
    <div class="caption">
        
<p>Photo by <a href="https://unsplash.com/@impatrickt">Patrick Tomasso</a> from <a href="https://unsplash.com/photos/high-rise-buildings-covered-with-fog-61MtRBl1qeE">Unsplash</a></p>

    </div>
</div>

<p><strong>Editor’s Note: This was written in early November and my views have changed a bit, but I’ve decided to post this now for posterity</strong></p>

<p>The last 12 weeks have been great. It helped me figure out what to do with my life:</p>

<p><em>I am a software engineer on sabbatical. I am working on applying technology to real estate in Toronto.</em></p>

<p>But my sabbatical is constrained by money and and thus constrained by time. It’s now time for focus.</p>

<p>Projects which will be focusing on:</p>

<ol>
  <li>Lobbying in Toronto
    <ul>
      <li>Build a great way to search and visualize data published by the <a href="https://www.toronto.ca/city-government/accountability-operations-customer-service/accountability-officers/lobbyist-registrar/search-the-registry-register-as-a-lobbyist/search-the-lobbyist-registry/">City of Toronto’s Lobbyist Registrar</a></li>
    </ul>
  </li>
  <li>TRREB MLS Search Engine
    <ul>
      <li>Build a <a href="https://en.wikipedia.org/wiki/Virtual_Office_Website">Virtual Office Website
</a> for TRREB’s MLS to make it easier for Realtor and their clients to search for properties in Toronto</li>
    </ul>
  </li>
  <li>Open Map of Toronto
    <ul>
      <li>Combine open data sources to create a better view of Toronto. Definitely <a href="https://open.toronto.ca/dataset/property-boundaries/">Property Boundaries</a> and <a href="https://open.toronto.ca/dataset/address-points-municipal-toronto-one-address-repository/">Address Points (Municipal) - Toronto One Address Repository
</a>, plus some more data from the <a href="https://open.toronto.ca/">City of Toronto’s Open Data Portal</a> and other data sources</li>
    </ul>
  </li>
  <li>Bits, Bips and Bricks
    <ul>
      <li>Write more regularly and about more topics</li>
      <li>The vibe that I am going for:</li>
    </ul>
    <blockquote class="twitter-tweet"><p lang="en" dir="ltr">I really like this. It&#39;s helpful in getting over the little voice in my head that says &quot;It&#39;s not as good as the writers you admire&quot; <a href="https://t.co/h0HzKUrQSm">https://t.co/h0HzKUrQSm</a></p>&mdash; Ram Vasuthevan (in SF Oct 31 - Nov 7) (@RamVasuthevan) <a href="https://twitter.com/RamVasuthevan/status/1684079350050881536?ref_src=twsrc%5Etfw">July 26, 2023</a></blockquote>
    <script async="" src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
  </li>
</ol>

<p>I will also work on side projects, especially if they align with my goal of applying technology to real estate but it is now time to impose a discipline on myself.</p>]]></content><author><name></name></author><category term="bitsbipsbricks" /><summary type="html"><![CDATA[Photo by Patrick Tomasso from Unsplash]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://colon-analogy-notation.personal-website-a13.pages.dev/assets/bitsbipsbricks/Focus/mwangi-gatheca-qlKaN7eqay8-unsplash.jpg" /><media:content medium="image" url="https://colon-analogy-notation.personal-website-a13.pages.dev/assets/bitsbipsbricks/Focus/mwangi-gatheca-qlKaN7eqay8-unsplash.jpg" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Felt Feels like Magic</title><link href="https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/Felt-Magic" rel="alternate" type="text/html" title="Felt Feels like Magic" /><published>2023-09-13T00:00:00+00:00</published><updated>2023-09-13T00:00:00+00:00</updated><id>https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/Felt-Magic</id><content type="html" xml:base="https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/Felt-Magic"><![CDATA[<div class="image-container">
    <img src="/assets/bitsbipsbricks/Felt-Magic/francesca-saraco-u8DiM00gIR8-unsplash.jpg" alt="Descriptive Alt Text" />
    <div class="caption">
        
<p>Photo by <a href="https://unsplash.com/@fransaraco">Francesca Saraco</a> from <a href="https://unsplash.com/photos/u8DiM00gIR8">Unsplash</a></p>

    </div>
</div>

<p><strong>Editor’s Note: Here is the link to the <a href="https://felt.com/map/Toronto-Property-Boundaries-Blog-Post-2023-08-29-Felt-Feels-like-Magic-copy-n0X6GPVNTjWv6keVeffKRD?loc=43.62012,-79.36888,13.6z&amp;share=1">map</a>. Embedding maps now requires the “Talk to Sales” Enterprise tier.</strong></p>

<p>I just started using <a href="https://felt.com/">Felt</a>. The best way to describe it is it feels like magic.
I have been thinking about side projects involving creating maps or using geospatial data for a while, but I’ve procrastinated on learning Mapbox or QGIS. And I’ve spent way too much time trying to install SpatiaLite on a Windows Laptop.</p>

<p>No coding involved. I just dragged the two Shapefiles (<a href="https://open.toronto.ca/dataset/property-boundaries/">Property Boundaries</a> and <a href="https://open.toronto.ca/dataset/address-points-municipal-toronto-one-address-repository/">Address Points (Municipal) - Toronto One Address Repository</a>) from the Toronto Open Data Portal on, and the map appeared. I then added the Felt’s preexisting building footprint layer. It was then easy to quickly add colouring by category. And even better (unlike some other tools), there is a working search bar so that you can look up parcels at an address.</p>

<p>In general, I like open tools so that I can have more control over the output and be confident that the publisher won’t stop supporting the tool in a couple of years. But I value velocity more than everything else. (If you’re reading this ten years from now, you’ll know how it worked out).</p>

<p>It didn’t take me that long to start seeing interesting things near the water, on Algonquin Island, near my home, etc.
However, I need to work on my styling.</p>]]></content><author><name></name></author><category term="bitsbipsbricks" /><summary type="html"><![CDATA[Photo by Francesca Saraco from Unsplash]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://colon-analogy-notation.personal-website-a13.pages.dev/assets/bitsbipsbricks/Felt-Magic/francesca-saraco-u8DiM00gIR8-unsplash.jpg" /><media:content medium="image" url="https://colon-analogy-notation.personal-website-a13.pages.dev/assets/bitsbipsbricks/Felt-Magic/francesca-saraco-u8DiM00gIR8-unsplash.jpg" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">A Bit of a Sabbatical</title><link href="https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/Sabbatical" rel="alternate" type="text/html" title="A Bit of a Sabbatical" /><published>2023-08-27T00:00:00+00:00</published><updated>2023-08-27T00:00:00+00:00</updated><id>https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/A-Bit-of-a-Sabbatical</id><content type="html" xml:base="https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/Sabbatical"><![CDATA[<div class="image-container">
    <img src="/assets/bitsbipsbricks/Sabbatical/mwangi-gatheca-qlKaN7eqay8-unsplash.jpg" alt="Descriptive Alt Text" />
    <div class="caption">
        
<p>Photo by <a href="https://unsplash.com/@thirdworldhippy">Mwangi Gatheca</a> from <a href="https://unsplash.com/photos/qlKaN7eqay8">Unsplash</a></p>

    </div>
</div>

<p>I was laid off on Aug. 10, 2023. I feel like I was a good employee, but due to the vicissitudes of trade, my services were no longer needed. I wasn’t disappointed, I was honestly pretty excited.</p>

<p>During my sabbatical from employment, I want to produce work that I will be proud of 10 years from now. Reading, browsing Twitter or getting nerd-sniped are okay, and they feel like work. They definitely are intellectual work. But they are not legible. They do not let me signal what type of person I am and what I can do.</p>

<p>I have benefited for a long time from being perceived as a young, ambitious person. I lost that sheen for a bit when I was at Accenture. I regained it at Searchspring. Greatness comes from slack. The slack I had at Searchspring gave me time to become a better engineer and the confidence that I could be a great engineer. I want to build on that over the next couple of months.</p>

<p>I invested for a future decades away. But I worked for my stand-up hours away. That is no longer true. I am now constrained by money. But I can work on projects that can take years to pay off.</p>

<p>But I can’t waste time. I can invest time for a far future, but my limited money buys me limited freedom from the social contract of employment. I don’t want to impose a totalitarian discipline on myself, but failure is not acceptable. I have run away from the prison, which employment is. But the guards are out searching for me. I must find a new home or build a new one. I will not die in the wilderness. I will not go back. I will not spend years plotting another escape.</p>

<p>I have lived a charmed life. I have had one or more part-time jobs or a full-time job since the month after my 18th birthday. I have had less money in the past, but I have not really been constrained by money. Ever since I started working full-time, I have readily traded money for more time, reduced hassle or psychic benefits. But now that money directly buys freedom, I need to be more conservative with my spending.</p>

<p>I am a little afraid, very excited, but also overwhelmed. In the past, when I am overwhelmed, I have delayed or taken no action. Sometimes, no action is the right move, but often, it allows me to procrastinate on make hard decisions. I need to rapidly develop a bias for action.</p>

<p>For the last several years, my life has gotten better almost automatically. I passed my courses and went to the next grade. I matured as I gained more life experience just by waking up every day. But after I graduated, that is no longer true. I need to take action to improve my life. In 2020, I graduated and joined Accenture. In 2021, I took action, and I left my consulting job at Accenture and got a better job as a software engineer at Searchspring. I was concerned this year would break the trend. Whether or not it does, it certainly won’t be boring.</p>

<p>Goals:</p>
<ul>
  <li>Base:
    <ul>
      <li>I want to stop selling commodity engineering services to generic tech companies</li>
    </ul>
  </li>
  <li>High
    <ul>
      <li>Exit the social contract of employment</li>
    </ul>
  </li>
  <li>Low
    <ul>
      <li>Get another software engineering job</li>
    </ul>
  </li>
</ul>

<p>Fail:</p>
<ul>
  <li>Lose control of my sleep cycle. Allowing it to invert and me to be nocturnal</li>
  <li>Become unemployable before reaching sustainability</li>
  <li>Not being able to get another job</li>
  <li>Taking a sabbatical, working on side projects,  “Building in public”, etc., is a luxury belief</li>
  <li>I become overwhelmed and procrastinating on everything</li>
  <li>I have implicit and explicit responsibilities to others that I don’t want to abandon</li>
</ul>]]></content><author><name></name></author><category term="bitsbipsbricks" /><summary type="html"><![CDATA[Photo by Mwangi Gatheca from Unsplash]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://colon-analogy-notation.personal-website-a13.pages.dev/assets/bitsbipsbricks/Sabbatical/mwangi-gatheca-qlKaN7eqay8-unsplash.jpg" /><media:content medium="image" url="https://colon-analogy-notation.personal-website-a13.pages.dev/assets/bitsbipsbricks/Sabbatical/mwangi-gatheca-qlKaN7eqay8-unsplash.jpg" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">The World Has Changed:Image Generation Engines</title><link href="https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/Image-Generation-Engines" rel="alternate" type="text/html" title="The World Has Changed:Image Generation Engines" /><published>2023-08-05T00:00:00+00:00</published><updated>2023-08-05T00:00:00+00:00</updated><id>https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/Image-Generation-Engines</id><content type="html" xml:base="https://colon-analogy-notation.personal-website-a13.pages.dev/bitsbipsbricks/Image-Generation-Engines"><![CDATA[<p><strong>Editor’s Note: This was written in September 2022. At the time, I wanted to add more about what I thought image generators would be used for, and then I procrastinated … a lot. But I’ve decided to publish this version for posterity. The world has changed, and still almost nobody knows it yet.</strong></p>

<p>Today is September 6th, 2022. The three main image generation engines are DALL-E 2, Stable Diffusion, and Midjourney. (The date is important. The leading engines could be different a week from now.) Two months ago, the creation of digital artwork cost $100’s dollars or $1000’s dollars an image and photography costs $10’s and $1000’s per image. Today, the creation of digital images costs cents. Images can now be generated in seconds, by giving an image generation engine a text prompt and by fiddling with two or three simple parameters.</p>

<p>DALL-E 2 was released on July 20th, 2022. OpenAI, one of the world’s leading research laboratories, created it. OpenAI has XX<sup id="fnref:1" role="doc-noteref"><a href="#fn:1" class="footnote" rel="footnote">1</a></sup> employees. It was closed-sourced and available initially only to beta testers on the waitlist. OpenAI distorted any faces in images making it hard to be used for deep fakes. Stability AI released Stable Diffusion on August 22nd, 2022, 33 days later. Stable Diffusion is open source, can be run on a consumer GPU, and doesn’t blur faces like DALL-E 2. Stability AI, as of August 12th, 2022, has 75 employees.</p>

<div class="image-container">
    <img src="/assets/bitsbipsbricks/Image-Generation-Engines/out-1.png" alt="" />
    <div class="caption">
        <p>Created by Stable Diffusion using <a href="https://replicate.com/p/xipb7ajpnretfmu42z3yxnhwuu">Replicate</a></p>

    </div>
</div>

<p>The images aren’t prefect. They still gave off a weird vibe. And giving the right words to get the image you want (prompt engineering<sup id="fnref:2" role="doc-noteref"><a href="#fn:2" class="footnote" rel="footnote">2</a></sup>) is still a bit finicky. But an hour after I started playing with Stable Diffusion, I was able to create this image of an Canadian Flag and an Astronaut on the moon. (So can you with <a href="https://replicate.com/p/xipb7ajpnretfmu42z3yxnhwuu">Stable Diffusion</a> on commit <code class="language-plaintext highlighter-rouge">a9758cbfbd5f</code> with width <code class="language-plaintext highlighter-rouge">512</code> height <code class="language-plaintext highlighter-rouge">512</code> prompt <code class="language-plaintext highlighter-rouge">Neil Armstrong on the Moon Canadian Flag</code> num_outputs <code class="language-plaintext highlighter-rouge">4</code> guidance_scale <code class="language-plaintext highlighter-rouge">7</code> prompt_strength <code class="language-plaintext highlighter-rouge">0.8</code> num_inference_steps <code class="language-plaintext highlighter-rouge">129</code> and seed <code class="language-plaintext highlighter-rouge">47692</code>).</p>

<p>More:</p>
<ul>
  <li>Soon for videos, etc</li>
  <li>Fundamentally, a different medium</li>
  <li>Deepfakes</li>
  <li>Creative labour</li>
  <li>New art created (Comic book etc)</li>
  <li>Programmatic creation (See what clothes would look like on you?, What products look like your home?)</li>
  <li>Meaning of non-human-created artwork?</li>
  <li>Creative work of curation??</li>
  <li>Can’t be put back in the box. This felt different. We were/aren’t ready.</li>
  <li><strong>We won’t be ready for the next one</strong></li>
</ul>

<p>Edit: 2023-11-11 A link was added to footnote 2 and the title was changed to from <code class="language-plaintext highlighter-rouge">The World Has Changed</code> to <code class="language-plaintext highlighter-rouge">The World Has Changed:Image Generation Engines</code></p>
<div class="footnotes" role="doc-endnotes">
  <ol>
    <li id="fn:1" role="doc-endnote">
      <p>I didn’t find the number at the time and couldn’t find the exact number now <a href="#fnref:1" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
    </li>
    <li id="fn:2" role="doc-endnote">
      <p>I’ve changed my mind about what prompt engineering is. See: <a href="https://mitchellh.com/writing/prompt-engineering-vs-blind-prompting">Prompt Engineering vs. Blind Prompting — Mitchell Hashimoto</a> <a href="#fnref:2" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
    </li>
  </ol>
</div>]]></content><author><name></name></author><category term="bitsbipsbricks" /><summary type="html"><![CDATA[Editor’s Note: This was written in September 2022. At the time, I wanted to add more about what I thought image generators would be used for, and then I procrastinated … a lot. But I’ve decided to publish this version for posterity. The world has changed, and still almost nobody knows it yet.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://colon-analogy-notation.personal-website-a13.pages.dev/assets/bitsbipsbricks/Image-Generation-Engines/out-1.png" /><media:content medium="image" url="https://colon-analogy-notation.personal-website-a13.pages.dev/assets/bitsbipsbricks/Image-Generation-Engines/out-1.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry></feed>