<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="/feed.xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <title>Michael Harley (Posts only)</title>
  <subtitle>Blog posts from Michael Harley.</subtitle>
  <link href="https://michaelharley.net/posts/feed.xml" rel="self"/>
  <link href="https://michaelharley.net/posts/"/>
  <updated>2026-03-03T11:39:06Z</updated>
  <id>https://michaelharley.net/posts/</id>
  <author>
    <name>Michael Harley</name>
    <email>michael@michaelharley.net</email>
  </author>
      <entry>
        <title>My Smart Home Setup 2026</title>
        <link href="https://michaelharley.net/posts/2026/03/03/my-smart-home-setup-2026/"/>
        <updated>2026-03-03T11:39:06Z</updated>
        <id>https://michaelharley.net/posts/2026/03/03/my-smart-home-setup-2026/</id>
        <content type="html">
          &lt;p&gt;I last wrote about &lt;a href=&quot;https://michaelharley.net/posts/2023/10/22/my-smart-home-setup-2023/&quot;&gt;my smart home setup&lt;/a&gt; all the way back in 2023, so I&#39;ve taken the time to fully update my setup. This time around, I&#39;ve decided to do it as a &lt;a href=&quot;https://slashpages.net/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;slash page&lt;/a&gt; and I&#39;ll just update the page as needed.&lt;/p&gt;
&lt;p&gt;Link -&amp;gt; &lt;a href=&quot;https://michaelharley.net/smarthome/&quot;&gt;/smarthome/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;mailto:michael@michaelharley.net?subject=Re:%20My%20Smart%20Home%20Setup%202026&quot;&gt;Reply via email&lt;/a&gt; · &lt;a href=&quot;https://infosec.exchange/@michaelharley/116165365962332498&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Discuss on Mastodon&lt;/a&gt; · &lt;a href=&quot;https://bsky.app/profile/michaelharley.net/post/3mg5t6ibd322n&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Discuss on Bluesky&lt;/a&gt;&lt;/p&gt;
        </content>
      </entry>
      <entry>
        <title>My AI Manifesto</title>
        <link href="https://michaelharley.net/posts/2026/02/25/my-ai-manifesto/"/>
        <updated>2026-02-25T13:00:00Z</updated>
        <id>https://michaelharley.net/posts/2026/02/25/my-ai-manifesto/</id>
        <content type="html">
          &lt;p&gt;Good grief, I&#39;m thinking and talking about AI too much. Sorry about that. I, too, am exhausted by it and after this, I will try my very best to stfu about it in public channels.&lt;/p&gt;
&lt;p&gt;In response to &lt;a href=&quot;https://michaelharley.net/posts/2026/02/24/re-no-ai-badges/&quot;&gt;Re: No AI Badges&lt;/a&gt;, I learned that people are creating an &lt;a href=&quot;https://slashpages.net/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;/ai slash page&lt;/a&gt; for their sites (source: &lt;a href=&quot;https://www.bydamo.la/p/ai-manifesto&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;The /ai &#39;manifesto&#39;&lt;/a&gt;). I think this is an excellent idea as it allows me to directly state my position, in long form, and be done with it.&lt;/p&gt;
&lt;p&gt;Without further ado, I give you my &lt;a href=&quot;https://michaelharley.net/ai&quot;&gt;/ai slash page&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I worry about bothering other people but if you&#39;re interested in discussing any of this, I&#39;m very open to it so please drop me an email, toot, or whatever they call them on Bluesky.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;mailto:michael@michaelharley.net?subject=Re:%20My%20AI%20Manifesto&quot;&gt;Reply via email&lt;/a&gt; · &lt;a href=&quot;https://infosec.exchange/@michaelharley/116131465369583863&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Discuss on Mastodon&lt;/a&gt; · &lt;a href=&quot;https://bsky.app/profile/michaelharley.net/post/3mforgbvslo24&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Discuss on Bluesky&lt;/a&gt;&lt;/p&gt;
        </content>
      </entry>
      <entry>
        <title>Re: No AI Badges</title>
        <link href="https://michaelharley.net/posts/2026/02/24/re-no-ai-badges/"/>
        <updated>2026-02-24T22:22:55Z</updated>
        <id>https://michaelharley.net/posts/2026/02/24/re-no-ai-badges/</id>
        <content type="html">
          &lt;p&gt;I really love when people use old school image badges on their websites. It&#39;s a real throwback to the old web. So my interest was piqued when I saw Andy&#39;s post about some icons they created.&lt;/p&gt;
&lt;blockquote cite=&quot;https://social.lol/@andycarolan/116125222064672181&quot;&gt;
&lt;p&gt;No AI Badges — Want to show visitors to your site that your content is human made and doesn&#39;t use AI? Grab my badge pack for FREE (or pay as much as you want).&lt;/p&gt;
&lt;footer&gt;— &lt;a href=&quot;https://social.lol/@andycarolan&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Andy Carolan&lt;/a&gt;, &lt;cite&gt;&lt;a href=&quot;https://social.lol/@andycarolan/116125222064672181&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Mastodon&lt;/a&gt;&lt;/cite&gt;&lt;/footer&gt;
&lt;/blockquote&gt;
&lt;p&gt;AI use has been on my mind a lot, and there&#39;s a raging discussion happening in the circles I follow, so I&#39;m wondering what most people think is the right amount of non-AI use to qualify a person for the badges.&lt;/p&gt;
&lt;p&gt;I&#39;m really not trying to play devil&#39;s advocate or be a pedantic asshole. I&#39;m truly curious what people participating in the AI debate think is the right level of usage to qualify for the badges.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Can a person use AI to write a blog post about the benefits of AI?&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Obviously, no, this person should not think they can use the badges.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Can a person use AI to review a blog post they wrote themselves but they just want help with spelling, grammar, and clarity?&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;I don&#39;t know on this one. I bet most people would say no, this person cannot use the badge.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Can a person use AI to help build their website?&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;I don&#39;t know on this one either. Should only web developers be allowed to have personal websites? Must they use Wordpress or Bear only because they don&#39;t have the technical chops to build a site using a static site generator?&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;From there, the scenarios only get grayer. Can a person get AI help on these things and still use the badge?&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Server setup&lt;/li&gt;
&lt;li&gt;Server review&lt;/li&gt;
&lt;li&gt;Research questions&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I&#39;d bet dollars to doughnuts that many of the people I follow and admire on the Fediverse/IndieWeb will say ZERO AI use is the only correct level of AI use to qualify for the badges.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;mailto:michael@michaelharley.net?subject=Re:%20Re:%20No%20AI%20Badges&quot;&gt;Reply via email&lt;/a&gt; · &lt;a href=&quot;https://infosec.exchange/@michaelharley/116127977786079602&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Discuss on Mastodon&lt;/a&gt; · &lt;a href=&quot;https://bsky.app/profile/michaelharley.net/post/3mfn7ucoxah2f&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Discuss on Bluesky&lt;/a&gt;&lt;/p&gt;
        </content>
      </entry>
      <entry>
        <title>Meet Mac!</title>
        <link href="https://michaelharley.net/posts/2026/02/20/meet-mac/"/>
        <updated>2026-02-20T12:36:42Z</updated>
        <id>https://michaelharley.net/posts/2026/02/20/meet-mac/</id>
        <content type="html">
          &lt;p&gt;We got Mac at the same kitten adoption event as Polly. They were not from the same litter, but they both were kittens when we got them. We named him Mac, as in mac and cheese. We often call him Big Mac, Mac Daddy, Big Daddy, or Ole Floofy Boy.&lt;/p&gt;
&lt;figure class=&quot;constrained-img&quot;&gt;
  &lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/Bx9-1bwhBy-300.webp 300w, https://michaelharley.net/assets/images/Bx9-1bwhBy-600.webp 600w, https://michaelharley.net/assets/images/Bx9-1bwhBy-900.webp 900w, https://michaelharley.net/assets/images/Bx9-1bwhBy-1200.webp 1200w, https://michaelharley.net/assets/images/Bx9-1bwhBy-1542.webp 1542w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/Bx9-1bwhBy-300.jpeg 300w, https://michaelharley.net/assets/images/Bx9-1bwhBy-600.jpeg 600w, https://michaelharley.net/assets/images/Bx9-1bwhBy-900.jpeg 900w, https://michaelharley.net/assets/images/Bx9-1bwhBy-1200.jpeg 1200w, https://michaelharley.net/assets/images/Bx9-1bwhBy-1542.jpeg 1542w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/Bx9-1bwhBy-1542.jpeg&quot; width=&quot;1542&quot; height=&quot;2048&quot; alt=&quot;Mac sitting upright on a blanket, looking directly at the camera with his collar and tag visible&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
  &lt;figcaption&gt;May 28th, 2025 Richmond VA.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p&gt;I would describe him as a medium/long-haired orange tabby. He&#39;s very adventurous and probably ranges the farthest of any of the cats. He is the one I&#39;m least worried about being outside because he&#39;s very athletic and strong. I&#39;ve seen him on the top of the neighbor&#39;s house, on top of our shed, and on top of our back patio. He&#39;s the only cat that can force the cat door when it&#39;s locked, and he does it a few times a week because apparently our door locking schedule is just a suggestion for him.&lt;/p&gt;
&lt;p&gt;Mac has an even temperament. He&#39;s not easily startled or scared. He retires when new people are around, but it feels more like he&#39;s politely excusing himself instead of beating a hasty retreat like Polly. When I&#39;ve observed him encounter other cats or possums/raccoons, he&#39;s never been aggressive, and he seems open to being their friend. This is very different from Oliver, who never saw a cat or critter he didn&#39;t want to fight.&lt;/p&gt;
&lt;p&gt;He loves the big fish tank in the living room. Anytime I&#39;m feeding the fish or fiddling with the tank, he&#39;s right there to supervise and help. I have no doubt he&#39;d love to pluck out Tina, the Betta fish.&lt;/p&gt;
&lt;p&gt;He gets along well with all the other cats. He often plays with Lennie and Linus. He&#39;s interested in playing with Polly, but as they&#39;ve aged, she seems to be less interested in playing with Mac. And Lily is Lily. She might play in her weird way but almost never with Mac that I remember.&lt;/p&gt;
&lt;p&gt;He often comes to lie with us on the couch, and it&#39;s not uncommon for him to sit on our chests, facing the wrong way, making biscuits and having a runny nose. We work from home, and Linus/Lily often make appearances on my Teams calls. Mac rarely does, but what a treat when he does!&lt;/p&gt;
&lt;p&gt;We love our orange fluffy boy.&lt;/p&gt;
&lt;h2 id=&quot;photos&quot; tabindex=&quot;-1&quot;&gt;Photos &lt;a class=&quot;heading-anchor&quot; href=&quot;https://michaelharley.net/posts/2026/02/20/meet-mac/#photos&quot;&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Please enjoy these photos of Mac Daddy.&lt;/p&gt;
&lt;div class=&quot;photo-grid&quot;&gt;
  &lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/zxyecj3RbR-300.webp 300w, https://michaelharley.net/assets/images/zxyecj3RbR-600.webp 600w, https://michaelharley.net/assets/images/zxyecj3RbR-900.webp 900w, https://michaelharley.net/assets/images/zxyecj3RbR-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/zxyecj3RbR-300.jpeg 300w, https://michaelharley.net/assets/images/zxyecj3RbR-600.jpeg 600w, https://michaelharley.net/assets/images/zxyecj3RbR-900.jpeg 900w, https://michaelharley.net/assets/images/zxyecj3RbR-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/zxyecj3RbR-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Kitten Mac sleeping in someone&#39;s arms on the couch&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
  &lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/sHV_pDYt-b-300.webp 300w, https://michaelharley.net/assets/images/sHV_pDYt-b-600.webp 600w, https://michaelharley.net/assets/images/sHV_pDYt-b-900.webp 900w, https://michaelharley.net/assets/images/sHV_pDYt-b-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/sHV_pDYt-b-300.jpeg 300w, https://michaelharley.net/assets/images/sHV_pDYt-b-600.jpeg 600w, https://michaelharley.net/assets/images/sHV_pDYt-b-900.jpeg 900w, https://michaelharley.net/assets/images/sHV_pDYt-b-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/sHV_pDYt-b-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Selfie with kitten Mac perched on a shoulder&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
  &lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/QiDLA2GjBF-300.webp 300w, https://michaelharley.net/assets/images/QiDLA2GjBF-600.webp 600w, https://michaelharley.net/assets/images/QiDLA2GjBF-900.webp 900w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/QiDLA2GjBF-300.jpeg 300w, https://michaelharley.net/assets/images/QiDLA2GjBF-600.jpeg 600w, https://michaelharley.net/assets/images/QiDLA2GjBF-900.jpeg 900w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/QiDLA2GjBF-900.jpeg&quot; width=&quot;900&quot; height=&quot;1600&quot; alt=&quot;Kitten Mac and Polly sharing an Amazon box&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
  &lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/tDJp4Ipa3u-300.webp 300w, https://michaelharley.net/assets/images/tDJp4Ipa3u-600.webp 600w, https://michaelharley.net/assets/images/tDJp4Ipa3u-900.webp 900w, https://michaelharley.net/assets/images/tDJp4Ipa3u-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/tDJp4Ipa3u-300.jpeg 300w, https://michaelharley.net/assets/images/tDJp4Ipa3u-600.jpeg 600w, https://michaelharley.net/assets/images/tDJp4Ipa3u-900.jpeg 900w, https://michaelharley.net/assets/images/tDJp4Ipa3u-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/tDJp4Ipa3u-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Kitten Mac exploring the back of the couch in the living room&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
  &lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/azUbze_Q4U-300.webp 300w, https://michaelharley.net/assets/images/azUbze_Q4U-600.webp 600w, https://michaelharley.net/assets/images/azUbze_Q4U-900.webp 900w, https://michaelharley.net/assets/images/azUbze_Q4U-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/azUbze_Q4U-300.jpeg 300w, https://michaelharley.net/assets/images/azUbze_Q4U-600.jpeg 600w, https://michaelharley.net/assets/images/azUbze_Q4U-900.jpeg 900w, https://michaelharley.net/assets/images/azUbze_Q4U-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/azUbze_Q4U-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Two orange cats on the nightstand and bed headboard in the bedroom&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
  &lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/0viUy6VyHE-300.webp 300w, https://michaelharley.net/assets/images/0viUy6VyHE-600.webp 600w, https://michaelharley.net/assets/images/0viUy6VyHE-900.webp 900w, https://michaelharley.net/assets/images/0viUy6VyHE-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/0viUy6VyHE-300.jpeg 300w, https://michaelharley.net/assets/images/0viUy6VyHE-600.jpeg 600w, https://michaelharley.net/assets/images/0viUy6VyHE-900.jpeg 900w, https://michaelharley.net/assets/images/0viUy6VyHE-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/0viUy6VyHE-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Mac lounging on the couch with Christmas trees glowing in the background&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
  &lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/CCAh7rsJve-300.webp 300w, https://michaelharley.net/assets/images/CCAh7rsJve-600.webp 600w, https://michaelharley.net/assets/images/CCAh7rsJve-900.webp 900w, https://michaelharley.net/assets/images/CCAh7rsJve-1200.webp 1200w, https://michaelharley.net/assets/images/CCAh7rsJve-1600.webp 1600w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/CCAh7rsJve-300.jpeg 300w, https://michaelharley.net/assets/images/CCAh7rsJve-600.jpeg 600w, https://michaelharley.net/assets/images/CCAh7rsJve-900.jpeg 900w, https://michaelharley.net/assets/images/CCAh7rsJve-1200.jpeg 1200w, https://michaelharley.net/assets/images/CCAh7rsJve-1600.jpeg 1600w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/CCAh7rsJve-1600.jpeg&quot; width=&quot;1600&quot; height=&quot;1410&quot; alt=&quot;Mac and Linus cuddled together napping on the couch&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
  &lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/EZPbVpoDO4-300.webp 300w, https://michaelharley.net/assets/images/EZPbVpoDO4-600.webp 600w, https://michaelharley.net/assets/images/EZPbVpoDO4-900.webp 900w, https://michaelharley.net/assets/images/EZPbVpoDO4-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/EZPbVpoDO4-300.jpeg 300w, https://michaelharley.net/assets/images/EZPbVpoDO4-600.jpeg 600w, https://michaelharley.net/assets/images/EZPbVpoDO4-900.jpeg 900w, https://michaelharley.net/assets/images/EZPbVpoDO4-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/EZPbVpoDO4-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Mac hiding in tall grass in the yard, peeking out at the camera&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
  &lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/wQZplDOL8C-300.webp 300w, https://michaelharley.net/assets/images/wQZplDOL8C-600.webp 600w, https://michaelharley.net/assets/images/wQZplDOL8C-900.webp 900w, https://michaelharley.net/assets/images/wQZplDOL8C-1200.webp 1200w, https://michaelharley.net/assets/images/wQZplDOL8C-1600.webp 1600w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/wQZplDOL8C-300.jpeg 300w, https://michaelharley.net/assets/images/wQZplDOL8C-600.jpeg 600w, https://michaelharley.net/assets/images/wQZplDOL8C-900.jpeg 900w, https://michaelharley.net/assets/images/wQZplDOL8C-1200.jpeg 1200w, https://michaelharley.net/assets/images/wQZplDOL8C-1600.jpeg 1600w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/wQZplDOL8C-1600.jpeg&quot; width=&quot;1600&quot; height=&quot;1200&quot; alt=&quot;Four cats gathered on the kitchen island during the holidays&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
  &lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/IOc39s8EGa-300.webp 300w, https://michaelharley.net/assets/images/IOc39s8EGa-600.webp 600w, https://michaelharley.net/assets/images/IOc39s8EGa-900.webp 900w, https://michaelharley.net/assets/images/IOc39s8EGa-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/IOc39s8EGa-300.jpeg 300w, https://michaelharley.net/assets/images/IOc39s8EGa-600.jpeg 600w, https://michaelharley.net/assets/images/IOc39s8EGa-900.jpeg 900w, https://michaelharley.net/assets/images/IOc39s8EGa-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/IOc39s8EGa-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Mac and Polly lounging together on stepping stones in the backyard&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
  &lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/ZpMBTSw-hZ-300.webp 300w, https://michaelharley.net/assets/images/ZpMBTSw-hZ-600.webp 600w, https://michaelharley.net/assets/images/ZpMBTSw-hZ-900.webp 900w, https://michaelharley.net/assets/images/ZpMBTSw-hZ-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/ZpMBTSw-hZ-300.jpeg 300w, https://michaelharley.net/assets/images/ZpMBTSw-hZ-600.jpeg 600w, https://michaelharley.net/assets/images/ZpMBTSw-hZ-900.jpeg 900w, https://michaelharley.net/assets/images/ZpMBTSw-hZ-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/ZpMBTSw-hZ-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Mac relaxing on his owner&#39;s chest on the couch&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
  &lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/SrtbuJtQ4r-300.webp 300w, https://michaelharley.net/assets/images/SrtbuJtQ4r-600.webp 600w, https://michaelharley.net/assets/images/SrtbuJtQ4r-900.webp 900w, https://michaelharley.net/assets/images/SrtbuJtQ4r-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/SrtbuJtQ4r-300.jpeg 300w, https://michaelharley.net/assets/images/SrtbuJtQ4r-600.jpeg 600w, https://michaelharley.net/assets/images/SrtbuJtQ4r-900.jpeg 900w, https://michaelharley.net/assets/images/SrtbuJtQ4r-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/SrtbuJtQ4r-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Mac and Polly squeezed into a small plaid cat bed together&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
  &lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/SeysNyhAQL-300.webp 300w, https://michaelharley.net/assets/images/SeysNyhAQL-600.webp 600w, https://michaelharley.net/assets/images/SeysNyhAQL-900.webp 900w, https://michaelharley.net/assets/images/SeysNyhAQL-1200.webp 1200w, https://michaelharley.net/assets/images/SeysNyhAQL-1600.webp 1600w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/SeysNyhAQL-300.jpeg 300w, https://michaelharley.net/assets/images/SeysNyhAQL-600.jpeg 600w, https://michaelharley.net/assets/images/SeysNyhAQL-900.jpeg 900w, https://michaelharley.net/assets/images/SeysNyhAQL-1200.jpeg 1200w, https://michaelharley.net/assets/images/SeysNyhAQL-1600.jpeg 1600w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/SeysNyhAQL-1600.jpeg&quot; width=&quot;1600&quot; height=&quot;1232&quot; alt=&quot;Mac rolled on his side under a bookshelf, playing with a toy&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
  &lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/d2AJGVR1MS-300.webp 300w, https://michaelharley.net/assets/images/d2AJGVR1MS-600.webp 600w, https://michaelharley.net/assets/images/d2AJGVR1MS-900.webp 900w, https://michaelharley.net/assets/images/d2AJGVR1MS-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/d2AJGVR1MS-300.jpeg 300w, https://michaelharley.net/assets/images/d2AJGVR1MS-600.jpeg 600w, https://michaelharley.net/assets/images/d2AJGVR1MS-900.jpeg 900w, https://michaelharley.net/assets/images/d2AJGVR1MS-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/d2AJGVR1MS-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Mac stretched out on the floor looking directly at the camera&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
  &lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/BUs2KqHmuU-300.webp 300w, https://michaelharley.net/assets/images/BUs2KqHmuU-600.webp 600w, https://michaelharley.net/assets/images/BUs2KqHmuU-900.webp 900w, https://michaelharley.net/assets/images/BUs2KqHmuU-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/BUs2KqHmuU-300.jpeg 300w, https://michaelharley.net/assets/images/BUs2KqHmuU-600.jpeg 600w, https://michaelharley.net/assets/images/BUs2KqHmuU-900.jpeg 900w, https://michaelharley.net/assets/images/BUs2KqHmuU-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/BUs2KqHmuU-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Mac and Polly playing together on the living room rug&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
  &lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/X0PbFalzFI-300.webp 300w, https://michaelharley.net/assets/images/X0PbFalzFI-600.webp 600w, https://michaelharley.net/assets/images/X0PbFalzFI-900.webp 900w, https://michaelharley.net/assets/images/X0PbFalzFI-1200.webp 1200w, https://michaelharley.net/assets/images/X0PbFalzFI-1600.webp 1600w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/X0PbFalzFI-300.jpeg 300w, https://michaelharley.net/assets/images/X0PbFalzFI-600.jpeg 600w, https://michaelharley.net/assets/images/X0PbFalzFI-900.jpeg 900w, https://michaelharley.net/assets/images/X0PbFalzFI-1200.jpeg 1200w, https://michaelharley.net/assets/images/X0PbFalzFI-1600.jpeg 1600w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/X0PbFalzFI-1600.jpeg&quot; width=&quot;1600&quot; height=&quot;1504&quot; alt=&quot;Mac lounging on the couch with a family member&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
  &lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/XqrdW1nxKe-300.webp 300w, https://michaelharley.net/assets/images/XqrdW1nxKe-600.webp 600w, https://michaelharley.net/assets/images/XqrdW1nxKe-900.webp 900w, https://michaelharley.net/assets/images/XqrdW1nxKe-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/XqrdW1nxKe-300.jpeg 300w, https://michaelharley.net/assets/images/XqrdW1nxKe-600.jpeg 600w, https://michaelharley.net/assets/images/XqrdW1nxKe-900.jpeg 900w, https://michaelharley.net/assets/images/XqrdW1nxKe-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/XqrdW1nxKe-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Mac sitting upright by the couch, mid-yawn&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
  &lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/ZkZ26J_cj_-300.webp 300w, https://michaelharley.net/assets/images/ZkZ26J_cj_-600.webp 600w, https://michaelharley.net/assets/images/ZkZ26J_cj_-900.webp 900w, https://michaelharley.net/assets/images/ZkZ26J_cj_-1200.webp 1200w, https://michaelharley.net/assets/images/ZkZ26J_cj_-1600.webp 1600w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/ZkZ26J_cj_-300.jpeg 300w, https://michaelharley.net/assets/images/ZkZ26J_cj_-600.jpeg 600w, https://michaelharley.net/assets/images/ZkZ26J_cj_-900.jpeg 900w, https://michaelharley.net/assets/images/ZkZ26J_cj_-1200.jpeg 1200w, https://michaelharley.net/assets/images/ZkZ26J_cj_-1600.jpeg 1600w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/ZkZ26J_cj_-1600.jpeg&quot; width=&quot;1600&quot; height=&quot;1200&quot; alt=&quot;Mac and another cat curled up in an open suitcase&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
  &lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/F5_B9KQDcb-300.webp 300w, https://michaelharley.net/assets/images/F5_B9KQDcb-600.webp 600w, https://michaelharley.net/assets/images/F5_B9KQDcb-900.webp 900w, https://michaelharley.net/assets/images/F5_B9KQDcb-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/F5_B9KQDcb-300.jpeg 300w, https://michaelharley.net/assets/images/F5_B9KQDcb-600.jpeg 600w, https://michaelharley.net/assets/images/F5_B9KQDcb-900.jpeg 900w, https://michaelharley.net/assets/images/F5_B9KQDcb-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/F5_B9KQDcb-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Mac lying on a colorful rug in the sunlight, looking regal&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
  &lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/UnOc1pu2w--300.webp 300w, https://michaelharley.net/assets/images/UnOc1pu2w--600.webp 600w, https://michaelharley.net/assets/images/UnOc1pu2w--900.webp 900w, https://michaelharley.net/assets/images/UnOc1pu2w--1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/UnOc1pu2w--300.jpeg 300w, https://michaelharley.net/assets/images/UnOc1pu2w--600.jpeg 600w, https://michaelharley.net/assets/images/UnOc1pu2w--900.jpeg 900w, https://michaelharley.net/assets/images/UnOc1pu2w--1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/UnOc1pu2w--1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Mac sitting alert in front of the couch, gazing upward&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
  &lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/OY9hJ0a5mm-300.webp 300w, https://michaelharley.net/assets/images/OY9hJ0a5mm-600.webp 600w, https://michaelharley.net/assets/images/OY9hJ0a5mm-900.webp 900w, https://michaelharley.net/assets/images/OY9hJ0a5mm-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/OY9hJ0a5mm-300.jpeg 300w, https://michaelharley.net/assets/images/OY9hJ0a5mm-600.jpeg 600w, https://michaelharley.net/assets/images/OY9hJ0a5mm-900.jpeg 900w, https://michaelharley.net/assets/images/OY9hJ0a5mm-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/OY9hJ0a5mm-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Mac standing in front of the fish tank, keeping watch&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
  &lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/qTcvcHL5Pn-300.webp 300w, https://michaelharley.net/assets/images/qTcvcHL5Pn-600.webp 600w, https://michaelharley.net/assets/images/qTcvcHL5Pn-900.webp 900w, https://michaelharley.net/assets/images/qTcvcHL5Pn-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/qTcvcHL5Pn-300.jpeg 300w, https://michaelharley.net/assets/images/qTcvcHL5Pn-600.jpeg 600w, https://michaelharley.net/assets/images/qTcvcHL5Pn-900.jpeg 900w, https://michaelharley.net/assets/images/qTcvcHL5Pn-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/qTcvcHL5Pn-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Three cats on wall shelves and a cat tree above the fish tank&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
  &lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/pFq8dPlH41-300.webp 300w, https://michaelharley.net/assets/images/pFq8dPlH41-600.webp 600w, https://michaelharley.net/assets/images/pFq8dPlH41-900.webp 900w, https://michaelharley.net/assets/images/pFq8dPlH41-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/pFq8dPlH41-300.jpeg 300w, https://michaelharley.net/assets/images/pFq8dPlH41-600.jpeg 600w, https://michaelharley.net/assets/images/pFq8dPlH41-900.jpeg 900w, https://michaelharley.net/assets/images/pFq8dPlH41-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/pFq8dPlH41-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Mac curled up sleeping in a round felt basket&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
  &lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/e87DKPFJTb-300.webp 300w, https://michaelharley.net/assets/images/e87DKPFJTb-600.webp 600w, https://michaelharley.net/assets/images/e87DKPFJTb-900.webp 900w, https://michaelharley.net/assets/images/e87DKPFJTb-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/e87DKPFJTb-300.jpeg 300w, https://michaelharley.net/assets/images/e87DKPFJTb-600.jpeg 600w, https://michaelharley.net/assets/images/e87DKPFJTb-900.jpeg 900w, https://michaelharley.net/assets/images/e87DKPFJTb-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/e87DKPFJTb-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Mac sleeping peacefully on a fuzzy blanket on the couch&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
  &lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/LJjqkims9Z-300.webp 300w, https://michaelharley.net/assets/images/LJjqkims9Z-600.webp 600w, https://michaelharley.net/assets/images/LJjqkims9Z-900.webp 900w, https://michaelharley.net/assets/images/LJjqkims9Z-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/LJjqkims9Z-300.jpeg 300w, https://michaelharley.net/assets/images/LJjqkims9Z-600.jpeg 600w, https://michaelharley.net/assets/images/LJjqkims9Z-900.jpeg 900w, https://michaelharley.net/assets/images/LJjqkims9Z-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/LJjqkims9Z-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Mac draped over the top of the fish tank, peering inside&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
  &lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/oLZPV0bpe0-300.webp 300w, https://michaelharley.net/assets/images/oLZPV0bpe0-600.webp 600w, https://michaelharley.net/assets/images/oLZPV0bpe0-900.webp 900w, https://michaelharley.net/assets/images/oLZPV0bpe0-1200.webp 1200w, https://michaelharley.net/assets/images/oLZPV0bpe0-1600.webp 1600w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/oLZPV0bpe0-300.jpeg 300w, https://michaelharley.net/assets/images/oLZPV0bpe0-600.jpeg 600w, https://michaelharley.net/assets/images/oLZPV0bpe0-900.jpeg 900w, https://michaelharley.net/assets/images/oLZPV0bpe0-1200.jpeg 1200w, https://michaelharley.net/assets/images/oLZPV0bpe0-1600.jpeg 1600w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/oLZPV0bpe0-1600.jpeg&quot; width=&quot;1600&quot; height=&quot;1546&quot; alt=&quot;Mac in a cardboard box with Polly and Linus looking on&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
&lt;/div&gt;&lt;p&gt;&lt;a href=&quot;mailto:michael@michaelharley.net?subject=Re:%20Meet%20Mac!&quot;&gt;Reply via email&lt;/a&gt; · &lt;a href=&quot;https://infosec.exchange/@michaelharley/116108437310171301&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Discuss on Mastodon&lt;/a&gt; · &lt;a href=&quot;https://bsky.app/profile/michaelharley.net/post/3mfek6ddanw2k&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Discuss on Bluesky&lt;/a&gt;&lt;/p&gt;
        </content>
      </entry>
      <entry>
        <title>Sorry folks, you can&#39;t avoid AI</title>
        <link href="https://michaelharley.net/posts/2026/02/17/sorry-folks-you-cant-avoid-ai/"/>
        <updated>2026-02-17T12:11:25Z</updated>
        <id>https://michaelharley.net/posts/2026/02/17/sorry-folks-you-cant-avoid-ai/</id>
        <content type="html">
          &lt;p&gt;I&#39;m on Mastodon, aka the &lt;a href=&quot;https://en.wikipedia.org/wiki/Fediverse&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Fediverse&lt;/a&gt;. A big reason people are there is because they do not like the big tech, corporate, algorithmic social media platforms, and they want more control of their social media identities and online lives.&lt;/p&gt;
&lt;h2 id=&quot;my-tribe&quot; tabindex=&quot;-1&quot;&gt;My Tribe &lt;a class=&quot;heading-anchor&quot; href=&quot;https://michaelharley.net/posts/2026/02/17/sorry-folks-you-cant-avoid-ai/#my-tribe&quot;&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;So it&#39;s hardly a surprise to see lots of anti-AI sentiment on the platform. And to be honest, I consider many of these people to be part of my tribe as we generally have common values when it comes to the internet.&lt;/p&gt;
&lt;p&gt;The hype from the AI companies is &lt;em&gt;crazy&lt;/em&gt; intense though. Of course, the AI companies want everyone to believe AI is going to transform the world because they want us all to buy the Pro subscription to their AI models. They want companies and government to buy the hype and replace workers with their robots. They want to capture some portion of employee salaries as subscription revenue.&lt;/p&gt;
&lt;p&gt;Corporate executives love the idea because they get to spend less on salaries, which gives shareholders a boner about profits. Their profits go up, the shares go up, and all the C-suite douchebags get to buy their boats and vacation homes because of their supersized bonuses.&lt;/p&gt;
&lt;h2 id=&quot;testing-the-hype&quot; tabindex=&quot;-1&quot;&gt;Testing the Hype &lt;a class=&quot;heading-anchor&quot; href=&quot;https://michaelharley.net/posts/2026/02/17/sorry-folks-you-cant-avoid-ai/#testing-the-hype&quot;&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;I think my tribe has it wrong about AI though. This isn&#39;t just another fad, looking for a problem to solve like blockchain crypto bro hype. Agentic, generative AI &lt;em&gt;really is transformative&lt;/em&gt;. I too saw all the hype from OpenAI, Microsoft and the like and immediately felt dismissive because it felt like blockchain all over again. I tried out the different AI models to form my own opinion, but I was using it like a search engine. Or I&#39;d copy in some code I wrote and ask the robot to help me improve it or to offer recommendations. I used it to help me write work emails to leadership or customers and to write user stories using our team templates. This use case felt productive and helpful, and I found value in the tools, but it didn&#39;t feel like it was going to change the world. It felt like the natural next step of Intellisense or an advanced search engine.&lt;/p&gt;
&lt;p&gt;But then my brother sent me &lt;a href=&quot;https://x.com/mattshumer_/status/2021256989876109403&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Something Big is Happening&lt;/a&gt; (sorry about the twitter/x link) from a &#39;CEO&#39; of an AI company I&#39;d never heard of. We often talk about this topic, so I was prepared to hate-read the article and promptly dismiss it. Who can believe AI company CEOs anyway?&lt;/p&gt;
&lt;p&gt;He described a workflow different than the one I&#39;ve been using, so I installed Claude Code in VS Code so I could get access to the Claude Opus 4.6 model. I wanted to &lt;a href=&quot;https://en.wikipedia.org/wiki/Straw_man#Steelmanning&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;steel man&lt;/a&gt; this person&#39;s argument so when I inevitably laugh and say this guy is full of shit, I can do so from a position of experience.&lt;/p&gt;
&lt;p&gt;I used this setup and workflow to &lt;a href=&quot;https://michaelharley.net/posts/2026/02/12/site-redesign-complete/&quot;&gt;redevelop my website&lt;/a&gt; recently. I wanted to go to the latest version of &lt;a href=&quot;https://www.11ty.dev/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;11ty&lt;/a&gt; plus I wanted to change my layout some. I was pretty surprised at how well it performed the job. I didn&#39;t just dump my old site in there and tell it to upgrade it with a so-and-so layout. I carefully and slowly built my templates and scripts using the tool until I got what I wanted. I&#39;m really happy with the result, and I believe I made a better website quicker than I could have if I just did it the old-fashioned way.&lt;/p&gt;
&lt;p&gt;With that completed, I wanted to experiment more with what agents can do. This led me to &lt;a href=&quot;https://modelcontextprotocol.io/docs/getting-started/intro&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Model Context Protocol (MCP)&lt;/a&gt;, which is a protocol that allows these AI systems to interact directly with a specific system. In my case, I wanted to see if I could use Claude Code to manage my &lt;a href=&quot;https://www.home-assistant.io/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Home Assistant&lt;/a&gt; instance and sure enough, there was an MCP server available and I happily tasked Claude to review my instance, automations and scripts. It flagged an issue with my RokuTV. I recently updated the firmware, you see, and that reset a certain setting that needed to be turned on. At this point during troubleshooting, Claude asked me to verify if the IP address of the TV was a specific IP address. I use Unifi networking gear in my house, so I set up the Unifi MCP server and asked Claude to perform the check itself. It did so successfully.&lt;/p&gt;
&lt;p&gt;To be clear, an AI agent, running in VS Code on my laptop, can access, query and manipulate my local Home Assistant instance directly. It can create automations, scenes, scripts and dashboards. It can do the same thing with my Unifi equipment and my Synology NAS. I can tell Claude to configure new network storage in Home Assistant, and it will configure my Synology NAS with a network share, then set it up in Home Assistant. It can recommend the Synology NAS device be set to a static IP address and it can perform that step on my networking gear too. The thing that makes it feel transformative is it can run the commands, capture the output and fix errors, as they happen. There&#39;s no copy and paste back and forth while we argue about an old command syntax that&#39;s been changed. That feels like magic. It&#39;s what assistants are &lt;em&gt;supposed to be&lt;/em&gt;.&lt;/p&gt;
&lt;h2 id=&quot;the-haters&quot; tabindex=&quot;-1&quot;&gt;The Haters &lt;a class=&quot;heading-anchor&quot; href=&quot;https://michaelharley.net/posts/2026/02/17/sorry-folks-you-cant-avoid-ai/#the-haters&quot;&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Many of my tribe who reject AI do so for good reasons.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;AI makes us less proficient.&lt;/strong&gt; The more I use Claude Code to manage my Home Assistant instance, the more I lose my ability to do it myself. I&#39;ll forget the syntax of the dumb YAML configuration for mushroom cards. This isn&#39;t hypothetical. Researchers call it &amp;quot;deskilling,&amp;quot; and it&#39;s &lt;a href=&quot;https://www.npr.org/2025/08/05/nx-s1-5485286/ai-jobs-economy-wealth-gap&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;already showing up across industries&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;AI products make us more dependent on them.&lt;/strong&gt; If we&#39;re losing proficiency because we&#39;ve offloaded the practice, that&#39;s a real problem when OpenAI or Anthropic go down. And they do go down. ChatGPT&#39;s June 2025 outage &lt;a href=&quot;https://aimagazine.com/articles/what-chatgpts-outage-highlights-about-global-ai-dependence&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;disrupted over 500 million users&lt;/a&gt;, many of whom had built it into their daily workflows.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;AI agents could be vulnerable to hacks and data exploits.&lt;/strong&gt; In order for these agents to access all the different systems, we must configure them with the secret keys and credentials to do the work we&#39;re asking them to do. That&#39;s a lot of trust to place in tools and protocols that are still very new, and a compromised agent with access to your network gear, NAS, and home automation is a &lt;a href=&quot;https://martinfowler.com/articles/agentic-ai-security.html&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;nightmare scenario&lt;/a&gt;. Imagine the same scenario at work.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;AI data centers use a lot of water and have a negative impact on the environment.&lt;/strong&gt; Large data centers can consume &lt;a href=&quot;https://www.brookings.edu/articles/ai-data-centers-and-water/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;up to 5 million gallons of water per day&lt;/a&gt;, equivalent to the needs of a town of 50,000 people, and that demand is projected to keep climbing.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;AI data centers use a lot of power and are making energy bills higher for everyone.&lt;/strong&gt; NPR&#39;s Planet Money traced one Ohio couple&#39;s electricity bills and found they&#39;d &lt;a href=&quot;https://www.npr.org/2026/01/02/nx-s1-5638587/ai-data-centers-use-a-lot-of-electricity-how-it-could-affect-your-power-bill&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;risen 60% in five years&lt;/a&gt;, driven in part by grid expansion to serve nearby data centers. The AP reports this has become a &lt;a href=&quot;https://www.opb.org/article/2026/02/13/as-electricity-costs-rise-everyone-wants-data-centers-to-pick-up-their-tab-but-how/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;bipartisan flashpoint&lt;/a&gt;, with politicians from Trump to local lawmakers insisting tech companies, not regular people, should foot the bill.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;AI corporations exploit vulnerable data labelers desperate for work to make the technology &amp;quot;safe&amp;quot; (primarily for Western audiences).&lt;/strong&gt; Kenyan workers earning under $2 an hour have described their conditions as &lt;a href=&quot;https://www.cbsnews.com/news/ai-work-kenya-exploitation-60-minutes/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;&amp;quot;modern-day slavery&amp;quot;&lt;/a&gt;, labeling graphic content including violence and child abuse for eight hours a day, with minimal mental health support, to train systems like ChatGPT. Big tech in general outsources this work to countries with high unemployment and weak labor protections, then &lt;a href=&quot;https://theconversation.com/ai-is-a-multi-billion-dollar-industry-its-underpinned-by-an-invisible-and-exploited-workforce-240568&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;distances itself through layers of subcontractors&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&quot;its-coming&quot; tabindex=&quot;-1&quot;&gt;It&#39;s Coming &lt;a class=&quot;heading-anchor&quot; href=&quot;https://michaelharley.net/posts/2026/02/17/sorry-folks-you-cant-avoid-ai/#its-coming&quot;&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;I think points 1 and 2 are the disruptive parts for tech workers like myself. Points 3, 4, and 5 are engineering problems that can be solved. Point 6 is just companies doing capitalism and is not unique to AI.&lt;/p&gt;
&lt;p&gt;I&#39;m not an AI champion. I think big tech, capitalist, companies will try to capture the market, and I&#39;m extremely skeptical the US government will do anything about it. In my heart of hearts, I believe AI as it&#39;s being envisioned and the way companies will use it is very problematic. I just don&#39;t think the right response is to ignore and avoid it like many of my tribe are doing. I will be trying to learn all I can about these tools because I believe it&#39;s coming.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;mailto:michael@michaelharley.net?subject=Re:%20Sorry%20folks,%20you%20can&amp;#39;t%20avoid%20AI&quot;&gt;Reply via email&lt;/a&gt; · &lt;a href=&quot;https://infosec.exchange/@michaelharley/116085964597447811&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Discuss on Mastodon&lt;/a&gt; · &lt;a href=&quot;https://bsky.app/profile/michaelharley.net/post/3mf2kswcnzt2k&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Discuss on Bluesky&lt;/a&gt;&lt;/p&gt;
        </content>
      </entry>
      <entry>
        <title>Please meet our cat Polly</title>
        <link href="https://michaelharley.net/posts/2026/02/15/please-meet-our-cat-polly/"/>
        <updated>2026-02-15T12:27:57Z</updated>
        <id>https://michaelharley.net/posts/2026/02/15/please-meet-our-cat-polly/</id>
        <content type="html">
          &lt;p&gt;Polly Pockets is the cutest, most snuggly cat we have. We got her and Mac at a kitten adoption event here in the Richmond area in 2024. I would describe her physical appearance as a medium/long hair, calico, ragamuffin mix.&lt;/p&gt;
&lt;figure class=&quot;constrained-img&quot;&gt;
  &lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/Zs1x1Umdvl-300.webp 300w, https://michaelharley.net/assets/images/Zs1x1Umdvl-600.webp 600w, https://michaelharley.net/assets/images/Zs1x1Umdvl-900.webp 900w, https://michaelharley.net/assets/images/Zs1x1Umdvl-1200.webp 1200w, https://michaelharley.net/assets/images/Zs1x1Umdvl-1536.webp 1536w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/Zs1x1Umdvl-300.jpeg 300w, https://michaelharley.net/assets/images/Zs1x1Umdvl-600.jpeg 600w, https://michaelharley.net/assets/images/Zs1x1Umdvl-900.jpeg 900w, https://michaelharley.net/assets/images/Zs1x1Umdvl-1200.jpeg 1200w, https://michaelharley.net/assets/images/Zs1x1Umdvl-1536.jpeg 1536w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/Zs1x1Umdvl-1536.jpeg&quot; width=&quot;1536&quot; height=&quot;2048&quot; alt=&quot;Polly lounging in a sunbeam on the table next to a potted plant&quot; loading=&quot;eager&quot; decoding=&quot;async&quot; fetchpriority=&quot;high&quot; /&gt;
      &lt;/picture&gt;
  &lt;figcaption&gt;Polly Pockets, in all her glory.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p&gt;She got her name because, as a kitten, she really wanted to sit on my shoulder like a parrot, so that behavior led us to name her Polly, as in Polly wants a cracker. Over time, that has kind of morphed into Polly Pockets because I wanted to stick her in my pocket and take her everywhere I went (and the plural version of the toy sounds cuter to me and greatly irritates Rachelle). Rachelle often shortens it to Palls, and that tickles me. (She also calls her Paulina Porizkova, the Czechoslovakian supermodel. While Polly is cute, I&#39;m not sure her unkempt hair will pass for supermodel status.)&lt;/p&gt;
&lt;p&gt;She&#39;s the most timid and easily startled cat of the house. When people come over to visit, she makes herself scarce by beating it out the back door. Loud noises in general spook her too. One funny quirk about her is that she likes to sleep under the neighbor&#39;s house during the day, especially in the summer. She comes home in the evening, smelling of musky crawl space and leaves trapped in her undercarriage.&lt;/p&gt;
&lt;p&gt;She&#39;s a very good sleeper and will often snuggle up in the crook of my arm to sleep during the night; she usually only moves when I roll over or need to adjust. Once I&#39;ve settled, she seeks out my arm crook again and settles back in.&lt;/p&gt;
&lt;p&gt;She gets along with the other cats well. Here are my impressions:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://michaelharley.net/posts/2025/04/12/please-meet-our-cat-lily/&quot;&gt;Lily&lt;/a&gt;&lt;/strong&gt; - She and Lily don&#39;t really seem to acknowledge each other very much. A sniff in passing during feeding times, but that&#39;s about it. They don&#39;t fuss or anything.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mac&lt;/strong&gt; - As kittens they played a lot, of course, but now as adults, she doesn&#39;t really want to play as much or as often. Mac sometimes tries to force the issue, and she&#39;ll give him a good hissing at.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Linus&lt;/strong&gt; - Linus gets along with everyone, and Polly is no exception. She, Linus, and Lennie are often snuggled up together snoozing in a sunny spot. She will often bathe Linus too. It&#39;s cute!&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Lennie&lt;/strong&gt; - She seems to get along pretty well with Lennie. She&#39;ll get the zoomies and play with him on the regular.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I think Polly is a great cat and companion. She&#39;s affectionate and snuggly and cute as a button, but she does have a bit of a RBF. I&#39;m looking forward to many more long years with this little cutie pie.&lt;/p&gt;
&lt;h2 id=&quot;photos&quot; tabindex=&quot;-1&quot;&gt;Photos &lt;a class=&quot;heading-anchor&quot; href=&quot;https://michaelharley.net/posts/2026/02/15/please-meet-our-cat-polly/#photos&quot;&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Please enjoy these photos of Polly Pockets.&lt;/p&gt;
&lt;div class=&quot;photo-grid&quot;&gt;
&lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/wZJeu2prX3-300.webp 300w, https://michaelharley.net/assets/images/wZJeu2prX3-600.webp 600w, https://michaelharley.net/assets/images/wZJeu2prX3-900.webp 900w, https://michaelharley.net/assets/images/wZJeu2prX3-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/wZJeu2prX3-300.jpeg 300w, https://michaelharley.net/assets/images/wZJeu2prX3-600.jpeg 600w, https://michaelharley.net/assets/images/wZJeu2prX3-900.jpeg 900w, https://michaelharley.net/assets/images/wZJeu2prX3-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/wZJeu2prX3-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Kitten Polly sitting inside a pink flower pot on the kitchen table&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
&lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/Kx3uPtfxcB-300.webp 300w, https://michaelharley.net/assets/images/Kx3uPtfxcB-600.webp 600w, https://michaelharley.net/assets/images/Kx3uPtfxcB-900.webp 900w, https://michaelharley.net/assets/images/Kx3uPtfxcB-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/Kx3uPtfxcB-300.jpeg 300w, https://michaelharley.net/assets/images/Kx3uPtfxcB-600.jpeg 600w, https://michaelharley.net/assets/images/Kx3uPtfxcB-900.jpeg 900w, https://michaelharley.net/assets/images/Kx3uPtfxcB-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/Kx3uPtfxcB-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Tiny kitten Polly on the bed, dwarfed by decorative pillows&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
&lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/Ni9paETx45-300.webp 300w, https://michaelharley.net/assets/images/Ni9paETx45-600.webp 600w, https://michaelharley.net/assets/images/Ni9paETx45-900.webp 900w, https://michaelharley.net/assets/images/Ni9paETx45-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/Ni9paETx45-300.jpeg 300w, https://michaelharley.net/assets/images/Ni9paETx45-600.jpeg 600w, https://michaelharley.net/assets/images/Ni9paETx45-900.jpeg 900w, https://michaelharley.net/assets/images/Ni9paETx45-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/Ni9paETx45-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Polly sprawled across Mike&#39;s back on the couch while he works on a laptop&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
&lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/PxdArYkWDk-300.webp 300w, https://michaelharley.net/assets/images/PxdArYkWDk-600.webp 600w, https://michaelharley.net/assets/images/PxdArYkWDk-900.webp 900w, https://michaelharley.net/assets/images/PxdArYkWDk-1200.webp 1200w, https://michaelharley.net/assets/images/PxdArYkWDk-1600.webp 1600w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/PxdArYkWDk-300.jpeg 300w, https://michaelharley.net/assets/images/PxdArYkWDk-600.jpeg 600w, https://michaelharley.net/assets/images/PxdArYkWDk-900.jpeg 900w, https://michaelharley.net/assets/images/PxdArYkWDk-1200.jpeg 1200w, https://michaelharley.net/assets/images/PxdArYkWDk-1600.jpeg 1600w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/PxdArYkWDk-1600.jpeg&quot; width=&quot;1600&quot; height=&quot;1410&quot; alt=&quot;Polly and Linus curled up together napping on the couch&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
&lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/1Y8sNKIo2c-300.webp 300w, https://michaelharley.net/assets/images/1Y8sNKIo2c-600.webp 600w, https://michaelharley.net/assets/images/1Y8sNKIo2c-900.webp 900w, https://michaelharley.net/assets/images/1Y8sNKIo2c-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/1Y8sNKIo2c-300.jpeg 300w, https://michaelharley.net/assets/images/1Y8sNKIo2c-600.jpeg 600w, https://michaelharley.net/assets/images/1Y8sNKIo2c-900.jpeg 900w, https://michaelharley.net/assets/images/1Y8sNKIo2c-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/1Y8sNKIo2c-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Mike holding Polly belly-up in his arms like a baby&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
&lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/sbuJxpKebu-300.webp 300w, https://michaelharley.net/assets/images/sbuJxpKebu-600.webp 600w, https://michaelharley.net/assets/images/sbuJxpKebu-900.webp 900w, https://michaelharley.net/assets/images/sbuJxpKebu-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/sbuJxpKebu-300.jpeg 300w, https://michaelharley.net/assets/images/sbuJxpKebu-600.jpeg 600w, https://michaelharley.net/assets/images/sbuJxpKebu-900.jpeg 900w, https://michaelharley.net/assets/images/sbuJxpKebu-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/sbuJxpKebu-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Polly mid-stride in the living room, tail swishing&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
&lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/fMdvMekGS2-300.webp 300w, https://michaelharley.net/assets/images/fMdvMekGS2-600.webp 600w, https://michaelharley.net/assets/images/fMdvMekGS2-900.webp 900w, https://michaelharley.net/assets/images/fMdvMekGS2-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/fMdvMekGS2-300.jpeg 300w, https://michaelharley.net/assets/images/fMdvMekGS2-600.jpeg 600w, https://michaelharley.net/assets/images/fMdvMekGS2-900.jpeg 900w, https://michaelharley.net/assets/images/fMdvMekGS2-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/fMdvMekGS2-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Polly wearing a tiny sheriff cowboy hat on the kitchen counter&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
&lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/ifvLXA9Zd7-300.webp 300w, https://michaelharley.net/assets/images/ifvLXA9Zd7-600.webp 600w, https://michaelharley.net/assets/images/ifvLXA9Zd7-900.webp 900w, https://michaelharley.net/assets/images/ifvLXA9Zd7-1200.webp 1200w, https://michaelharley.net/assets/images/ifvLXA9Zd7-1600.webp 1600w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/ifvLXA9Zd7-300.jpeg 300w, https://michaelharley.net/assets/images/ifvLXA9Zd7-600.jpeg 600w, https://michaelharley.net/assets/images/ifvLXA9Zd7-900.jpeg 900w, https://michaelharley.net/assets/images/ifvLXA9Zd7-1200.jpeg 1200w, https://michaelharley.net/assets/images/ifvLXA9Zd7-1600.jpeg 1600w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/ifvLXA9Zd7-1600.jpeg&quot; width=&quot;1600&quot; height=&quot;1522&quot; alt=&quot;Polly flopped on her back on a purple blanket, paws up&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
&lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/4UCp8xJ2lN-300.webp 300w, https://michaelharley.net/assets/images/4UCp8xJ2lN-600.webp 600w, https://michaelharley.net/assets/images/4UCp8xJ2lN-900.webp 900w, https://michaelharley.net/assets/images/4UCp8xJ2lN-1200.webp 1200w, https://michaelharley.net/assets/images/4UCp8xJ2lN-1600.webp 1600w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/4UCp8xJ2lN-300.jpeg 300w, https://michaelharley.net/assets/images/4UCp8xJ2lN-600.jpeg 600w, https://michaelharley.net/assets/images/4UCp8xJ2lN-900.jpeg 900w, https://michaelharley.net/assets/images/4UCp8xJ2lN-1200.jpeg 1200w, https://michaelharley.net/assets/images/4UCp8xJ2lN-1600.jpeg 1600w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/4UCp8xJ2lN-1600.jpeg&quot; width=&quot;1600&quot; height=&quot;1220&quot; alt=&quot;Kittens Mac and Polly snuggled together in a plaid holiday basket&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
&lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/k8lmADiLmh-300.webp 300w, https://michaelharley.net/assets/images/k8lmADiLmh-600.webp 600w, https://michaelharley.net/assets/images/k8lmADiLmh-900.webp 900w, https://michaelharley.net/assets/images/k8lmADiLmh-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/k8lmADiLmh-300.jpeg 300w, https://michaelharley.net/assets/images/k8lmADiLmh-600.jpeg 600w, https://michaelharley.net/assets/images/k8lmADiLmh-900.jpeg 900w, https://michaelharley.net/assets/images/k8lmADiLmh-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/k8lmADiLmh-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Polly grooming herself on the couch next to a red blanket&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
&lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/iZtznF6pRy-300.webp 300w, https://michaelharley.net/assets/images/iZtznF6pRy-600.webp 600w, https://michaelharley.net/assets/images/iZtznF6pRy-900.webp 900w, https://michaelharley.net/assets/images/iZtznF6pRy-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/iZtznF6pRy-300.jpeg 300w, https://michaelharley.net/assets/images/iZtznF6pRy-600.jpeg 600w, https://michaelharley.net/assets/images/iZtznF6pRy-900.jpeg 900w, https://michaelharley.net/assets/images/iZtznF6pRy-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/iZtznF6pRy-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Polly, Lily, and Linus each claiming their own section of the front walkway&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
&lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/T3mbeLShE2-300.webp 300w, https://michaelharley.net/assets/images/T3mbeLShE2-600.webp 600w, https://michaelharley.net/assets/images/T3mbeLShE2-900.webp 900w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/T3mbeLShE2-300.jpeg 300w, https://michaelharley.net/assets/images/T3mbeLShE2-600.jpeg 600w, https://michaelharley.net/assets/images/T3mbeLShE2-900.jpeg 900w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/T3mbeLShE2-900.jpeg&quot; width=&quot;900&quot; height=&quot;1299&quot; alt=&quot;Polly snuggled against Rachelle in a dimly lit bedroom&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
&lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/Be4TRVkei4-300.webp 300w, https://michaelharley.net/assets/images/Be4TRVkei4-600.webp 600w, https://michaelharley.net/assets/images/Be4TRVkei4-900.webp 900w, https://michaelharley.net/assets/images/Be4TRVkei4-1200.webp 1200w, https://michaelharley.net/assets/images/Be4TRVkei4-1580.webp 1580w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/Be4TRVkei4-300.jpeg 300w, https://michaelharley.net/assets/images/Be4TRVkei4-600.jpeg 600w, https://michaelharley.net/assets/images/Be4TRVkei4-900.jpeg 900w, https://michaelharley.net/assets/images/Be4TRVkei4-1200.jpeg 1200w, https://michaelharley.net/assets/images/Be4TRVkei4-1580.jpeg 1580w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/Be4TRVkei4-1580.jpeg&quot; width=&quot;1580&quot; height=&quot;1600&quot; alt=&quot;Polly settled into an open suitcase among the packed clothes&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
&lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/_M0PVVGlu7-300.webp 300w, https://michaelharley.net/assets/images/_M0PVVGlu7-600.webp 600w, https://michaelharley.net/assets/images/_M0PVVGlu7-900.webp 900w, https://michaelharley.net/assets/images/_M0PVVGlu7-1200.webp 1200w, https://michaelharley.net/assets/images/_M0PVVGlu7-1588.webp 1588w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/_M0PVVGlu7-300.jpeg 300w, https://michaelharley.net/assets/images/_M0PVVGlu7-600.jpeg 600w, https://michaelharley.net/assets/images/_M0PVVGlu7-900.jpeg 900w, https://michaelharley.net/assets/images/_M0PVVGlu7-1200.jpeg 1200w, https://michaelharley.net/assets/images/_M0PVVGlu7-1588.jpeg 1588w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/_M0PVVGlu7-1588.jpeg&quot; width=&quot;1588&quot; height=&quot;1600&quot; alt=&quot;Polly sprawled belly-up on Rachelle&#39;s lap&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
&lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/CDUxL9gfdE-300.webp 300w, https://michaelharley.net/assets/images/CDUxL9gfdE-600.webp 600w, https://michaelharley.net/assets/images/CDUxL9gfdE-900.webp 900w, https://michaelharley.net/assets/images/CDUxL9gfdE-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/CDUxL9gfdE-300.jpeg 300w, https://michaelharley.net/assets/images/CDUxL9gfdE-600.jpeg 600w, https://michaelharley.net/assets/images/CDUxL9gfdE-900.jpeg 900w, https://michaelharley.net/assets/images/CDUxL9gfdE-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/CDUxL9gfdE-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Polly by the cat door with wide eyes and her signature RBF&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
&lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/BseZo1My2N-300.webp 300w, https://michaelharley.net/assets/images/BseZo1My2N-600.webp 600w, https://michaelharley.net/assets/images/BseZo1My2N-900.webp 900w, https://michaelharley.net/assets/images/BseZo1My2N-1200.webp 1200w, https://michaelharley.net/assets/images/BseZo1My2N-1600.webp 1600w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/BseZo1My2N-300.jpeg 300w, https://michaelharley.net/assets/images/BseZo1My2N-600.jpeg 600w, https://michaelharley.net/assets/images/BseZo1My2N-900.jpeg 900w, https://michaelharley.net/assets/images/BseZo1My2N-1200.jpeg 1200w, https://michaelharley.net/assets/images/BseZo1My2N-1600.jpeg 1600w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/BseZo1My2N-1600.jpeg&quot; width=&quot;1600&quot; height=&quot;1200&quot; alt=&quot;Polly curled into a ball sleeping on navy blue sheets&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
&lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/Fl9HIZX5Wg-300.webp 300w, https://michaelharley.net/assets/images/Fl9HIZX5Wg-600.webp 600w, https://michaelharley.net/assets/images/Fl9HIZX5Wg-900.webp 900w, https://michaelharley.net/assets/images/Fl9HIZX5Wg-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/Fl9HIZX5Wg-300.jpeg 300w, https://michaelharley.net/assets/images/Fl9HIZX5Wg-600.jpeg 600w, https://michaelharley.net/assets/images/Fl9HIZX5Wg-900.jpeg 900w, https://michaelharley.net/assets/images/Fl9HIZX5Wg-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/Fl9HIZX5Wg-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1600&quot; alt=&quot;Mike dozing on the couch with Polly and Linus piled on his lap&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
&lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/IY6A8SbXSi-300.webp 300w, https://michaelharley.net/assets/images/IY6A8SbXSi-600.webp 600w, https://michaelharley.net/assets/images/IY6A8SbXSi-900.webp 900w, https://michaelharley.net/assets/images/IY6A8SbXSi-1200.webp 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/IY6A8SbXSi-300.jpeg 300w, https://michaelharley.net/assets/images/IY6A8SbXSi-600.jpeg 600w, https://michaelharley.net/assets/images/IY6A8SbXSi-900.jpeg 900w, https://michaelharley.net/assets/images/IY6A8SbXSi-1200.jpeg 1200w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/IY6A8SbXSi-1200.jpeg&quot; width=&quot;1200&quot; height=&quot;1496&quot; alt=&quot;Rachelle on the couch holding Polly belly-up while Linus sleeps beside them&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
&lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/CIbgrSMR17-300.webp 300w, https://michaelharley.net/assets/images/CIbgrSMR17-600.webp 600w, https://michaelharley.net/assets/images/CIbgrSMR17-900.webp 900w, https://michaelharley.net/assets/images/CIbgrSMR17-1200.webp 1200w, https://michaelharley.net/assets/images/CIbgrSMR17-1542.webp 1542w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/CIbgrSMR17-300.jpeg 300w, https://michaelharley.net/assets/images/CIbgrSMR17-600.jpeg 600w, https://michaelharley.net/assets/images/CIbgrSMR17-900.jpeg 900w, https://michaelharley.net/assets/images/CIbgrSMR17-1200.jpeg 1200w, https://michaelharley.net/assets/images/CIbgrSMR17-1542.jpeg 1542w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/CIbgrSMR17-1542.jpeg&quot; width=&quot;1542&quot; height=&quot;2048&quot; alt=&quot;Polly napping on Mike&#39;s desk on a MEOW mousepad, paw resting on the mouse&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
&lt;picture&gt;
        &lt;source type=&quot;image/webp&quot; srcset=&quot;https://michaelharley.net/assets/images/kuE7TnzoHR-300.webp 300w, https://michaelharley.net/assets/images/kuE7TnzoHR-600.webp 600w, https://michaelharley.net/assets/images/kuE7TnzoHR-900.webp 900w, https://michaelharley.net/assets/images/kuE7TnzoHR-1200.webp 1200w, https://michaelharley.net/assets/images/kuE7TnzoHR-1542.webp 1542w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
  &lt;source type=&quot;image/jpeg&quot; srcset=&quot;https://michaelharley.net/assets/images/kuE7TnzoHR-300.jpeg 300w, https://michaelharley.net/assets/images/kuE7TnzoHR-600.jpeg 600w, https://michaelharley.net/assets/images/kuE7TnzoHR-900.jpeg 900w, https://michaelharley.net/assets/images/kuE7TnzoHR-1200.jpeg 1200w, https://michaelharley.net/assets/images/kuE7TnzoHR-1542.jpeg 1542w&quot; sizes=&quot;(min-width: 30em) 50vw, 100vw&quot; /&gt;
        &lt;img src=&quot;https://michaelharley.net/assets/images/kuE7TnzoHR-1542.jpeg&quot; width=&quot;1542&quot; height=&quot;2048&quot; alt=&quot;Polly stretched out in a sunbeam on the floor&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; /&gt;
      &lt;/picture&gt;
&lt;/div&gt;&lt;p&gt;&lt;a href=&quot;mailto:michael@michaelharley.net?subject=Re:%20Please%20meet%20our%20cat%20Polly&quot;&gt;Reply via email&lt;/a&gt;&lt;/p&gt;
        </content>
      </entry>
      <entry>
        <title>Re: The Good &amp; Not Good</title>
        <link href="https://michaelharley.net/posts/2026/02/14/re-the-good-and-not-good/"/>
        <updated>2026-02-14T19:27:40Z</updated>
        <id>https://michaelharley.net/posts/2026/02/14/re-the-good-and-not-good/</id>
        <content type="html">
          &lt;p&gt;Ten to fifteen years ago, I was pretty militant about my atheism. I&#39;m from the south, you see, and so much is related to or about religion, so as an atheist, I thought I had to match the amount of religious expression I saw, with my own expression of non-religion. I think a lot of that was me convincing myself about the views I had.&lt;/p&gt;
&lt;p&gt;Growing up with my dad, we did not have any religion in the household. The only time I ever heard my dad talking about religion was when some religious people came to the door on a Saturday asking if we had a church. His response was, &lt;em&gt;I don&#39;t believe in that shit&lt;/em&gt;, and then he closed the door. We never had any sort of principled discussions about it though. I did go to church some with my friends from the neighborhood. I distinctly remember my dad making me go to church if I told the folks coming around that I wanted to go.&lt;/p&gt;
&lt;p&gt;So, I was particularly interested when &lt;a href=&quot;https://chriscoyier.net/2026/02/14/the-good-not-good/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Chris posted&lt;/a&gt; about this topic. He said:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;I’m interested in what helps any individual person be good and provides  some kind of framework for evaluating their actions. Maybe I can learn  from them. Religious or otherwise, equally. I’d like to think I can. I’m not above reading some scripture to help understand the world and  myself if it can help me be better.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;I&#39;ve always felt that religion gets special consideration and deference it doesn&#39;t deserve. I&#39;m not anti-religious though. I can appreciate &lt;em&gt;do unto others as you&#39;d have them do unto you&lt;/em&gt;. I can also appreciate &lt;em&gt;You must all be quick to listen, slow to speak, and slow to get angry&lt;/em&gt;. Those are great quotes to my mind but I don&#39;t think they&#39;re great because they&#39;re from religious sources. I can read them and decide if they&#39;re good or not using my own internal moral intuition. In the same vein, I can read all the awful quotes from the bible, which I won&#39;t bore you with here, and decide those are awful and not for me.&lt;/p&gt;
&lt;p&gt;If we could somehow remove religion from the world, we&#39;d still have good people being good and bad people being bad. Whatever mechanism people use to pick out the good parts of their holy book and ignore the bad parts is where morality comes from.&lt;/p&gt;
&lt;p&gt;I hope Chris, and anyone else looking, finds whatever they&#39;re looking for.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;mailto:michael@michaelharley.net?subject=Re:%20Re:%20The%20Good%20&amp;amp;%20Not%20Good&quot;&gt;Reply via email&lt;/a&gt;&lt;/p&gt;
        </content>
      </entry>
      <entry>
        <title>More blog updates! Feeds, books and watch log oh my!</title>
        <link href="https://michaelharley.net/posts/2026/02/13/more-blog-updates-feeds-books-and-watch-log-oh-my/"/>
        <updated>2026-02-13T21:24:00Z</updated>
        <id>https://michaelharley.net/posts/2026/02/13/more-blog-updates-feeds-books-and-watch-log-oh-my/</id>
        <content type="html">
          &lt;p&gt;Ok so I&#39;ve been working on the ole site some more. If your feed reader just got spammed, well I&#39;m sorry about that.&lt;/p&gt;
&lt;h2 id=&quot;logs&quot; tabindex=&quot;-1&quot;&gt;Logs! &lt;a class=&quot;heading-anchor&quot; href=&quot;https://michaelharley.net/posts/2026/02/13/more-blog-updates-feeds-books-and-watch-log-oh-my/#logs&quot;&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;I&#39;ve finally added a &lt;a href=&quot;https://michaelharley.net/books&quot;&gt;/books&lt;/a&gt; log! I&#39;m going to attempt to log my books here instead of Goodreads. I worry I will miss the recommendations part of Goodreads but let&#39;s find out I guess!&lt;/p&gt;
&lt;p&gt;I&#39;ve also added a &lt;a href=&quot;https://michaelharley.net/watching&quot;&gt;/watching&lt;/a&gt; log to the site. This is for logging the movies and series we watch.&lt;/p&gt;
&lt;h2 id=&quot;feeds&quot; tabindex=&quot;-1&quot;&gt;Feeds &lt;a class=&quot;heading-anchor&quot; href=&quot;https://michaelharley.net/posts/2026/02/13/more-blog-updates-feeds-books-and-watch-log-oh-my/#feeds&quot;&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;In addition to the two new log pages, I&#39;ve made some adjustments to my RSS feeds.&lt;/p&gt;
&lt;p&gt;The main feed pages, &lt;a href=&quot;https://michaelharley.net/feed.xml&quot;&gt;/feed.xml&lt;/a&gt; and &lt;a href=&quot;https://michaelharley.net/feed.json&quot;&gt;/feed.json&lt;/a&gt; have become the firehose. These will have all my blog posts, book and watch log entries.&lt;/p&gt;
&lt;p&gt;If you only care about certain types of content, there are now dedicated feeds for &lt;a href=&quot;https://michaelharley.net/posts/feed.xml&quot;&gt;posts&lt;/a&gt;, &lt;a href=&quot;https://michaelharley.net/books/feed.xml&quot;&gt;books&lt;/a&gt;, and &lt;a href=&quot;https://michaelharley.net/watching/feed.xml&quot;&gt;watching&lt;/a&gt;. See the &lt;a href=&quot;https://michaelharley.net/subscribe/&quot;&gt;subscribe&lt;/a&gt; page for all the options.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;mailto:michael@michaelharley.net?subject=Re:%20More%20blog%20updates!%20Feeds,%20books%20and%20watch%20log%20oh%20my!&quot;&gt;Reply via email&lt;/a&gt;&lt;/p&gt;
        </content>
      </entry>
      <entry>
        <title>Site Redesign Complete</title>
        <link href="https://michaelharley.net/posts/2026/02/12/site-redesign-complete/"/>
        <updated>2026-02-12T12:02:29Z</updated>
        <id>https://michaelharley.net/posts/2026/02/12/site-redesign-complete/</id>
        <content type="html">
          &lt;p&gt;I&#39;ve completed the redesign on my website. I&#39;m sure I&#39;ll continue to fiddle with things, but the major parts are done and published. Here are some of the big things that changed:&lt;/p&gt;
&lt;h2 id=&quot;design&quot; tabindex=&quot;-1&quot;&gt;Design &lt;a class=&quot;heading-anchor&quot; href=&quot;https://michaelharley.net/posts/2026/02/12/site-redesign-complete/#design&quot;&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;I&#39;m always drawn to minimalist designs and I&#39;d describe what I&#39;ve done as a hybrid of Systems Minimalist, &lt;a href=&quot;https://brutalist-web.design/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Brutalist Minimalist&lt;/a&gt;, and Editorial Minimalist. I have no idea if those are real design styles but that&#39;s just the vibe I&#39;m trying for. It&#39;s an understated, text focused, accessible style that just wants to focus on the stuff I publish.&lt;/p&gt;
&lt;h2 id=&quot;feeds&quot; tabindex=&quot;-1&quot;&gt;Feeds &lt;a class=&quot;heading-anchor&quot; href=&quot;https://michaelharley.net/posts/2026/02/12/site-redesign-complete/#feeds&quot;&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;I moved my RSS feed from /feed/feed.xml to &lt;a href=&quot;https://michaelharley.net/feed.xml&quot;&gt;/feed.xml&lt;/a&gt;. I hated doing that, but I felt it best. I did set up a 301 redirect on my server so hopefully, people who follow it will be automagically redirected and no one will even notice. I also added a brand new JSON feed at &lt;a href=&quot;https://michaelharley.net/feed.json&quot;&gt;/feed.json&lt;/a&gt; if you&#39;re into such things.&lt;/p&gt;
&lt;h2 id=&quot;open-graph&quot; tabindex=&quot;-1&quot;&gt;Open Graph &lt;a class=&quot;heading-anchor&quot; href=&quot;https://michaelharley.net/posts/2026/02/12/site-redesign-complete/#open-graph&quot;&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Previously, I ripped out all the open graph information from my site but I&#39;ve reversed course on that. I thought it best to at least attempt to control how the information is being displayed on sites so I&#39;ve configured my open graph previews to be the small summary with a little goofy text icon. I&#39;m not sure I&#39;m entirely happy with it but it&#39;s fine for now.&lt;/p&gt;
&lt;h2 id=&quot;favicons&quot; tabindex=&quot;-1&quot;&gt;Favicons &lt;a class=&quot;heading-anchor&quot; href=&quot;https://michaelharley.net/posts/2026/02/12/site-redesign-complete/#favicons&quot;&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;I took this opportunity to refresh my favicons. I put the call out on Mastodon and someone DM&#39;d me. I paid them a few bucks, provided my svg and boom they provided a nice set of images!&lt;/p&gt;
&lt;h2 id=&quot;conclusion&quot; tabindex=&quot;-1&quot;&gt;Conclusion &lt;a class=&quot;heading-anchor&quot; href=&quot;https://michaelharley.net/posts/2026/02/12/site-redesign-complete/#conclusion&quot;&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;If you&#39;re bumping into any 404&#39;s after this rebuild, I&#39;d really appreciate if you &lt;a href=&quot;https://michaelharley.net/contact&quot;&gt;dropped me a note&lt;/a&gt;. I&#39;d also really appreciate compliments at how nice and simple my design is. :)&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;mailto:michael@michaelharley.net?subject=Re:%20Site%20Redesign%20Complete&quot;&gt;Reply via email&lt;/a&gt;&lt;/p&gt;
        </content>
      </entry>
      <entry>
        <title>Re: Self-hosting versus lots of small indieweb providers</title>
        <link href="https://michaelharley.net/posts/2026/01/31/re-self-hosting-versus-lots-of-small-indieweb-providers/"/>
        <updated>2026-01-31T11:32:08Z</updated>
        <id>https://michaelharley.net/posts/2026/01/31/re-self-hosting-versus-lots-of-small-indieweb-providers/</id>
        <content type="html">
          &lt;p&gt;I see a &lt;a href=&quot;https://www.thisdaysportion.com/posts/self-host-or-indie/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;discussion&lt;/a&gt; about the IndieWeb happening and I had a few thoughts.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;It’s better by far to focus on other aspects of the independent and open web: a diffusion of many smaller service providers; easily having and keeping your own domain; and true data portability.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;I agree with this thought. The most important piece is portability and identity ownership. Then I get to move my identity wherever I want. I can take it to a big tech provider, a small IndieWeb provider, a VPS I rent, or my own computer in the tech cave.&lt;/p&gt;
&lt;p&gt;I think email is the gold standard. I can own my identity, myemail@mydomain.com, and I can use Apple, Google, Fastmail, or my own email server. If Apple and Google piss me off, I can move to Fastmail. If Fastmail is too expensive, I can torture myself by trying to run my own email server.&lt;/p&gt;
&lt;p&gt;This is probably my biggest complaint with Mastodon in its current implementation. I can&#39;t pay a provider to only host my account. To use my own domain, I must spin up a single-user instance, which is more management than I want.&lt;/p&gt;
&lt;p&gt;But on the topic of self-hosting versus lots of small IndieWeb providers, the answer is obviously both! The nerds get to nerd, and normies who just care about having their own identity but don&#39;t have the technical chops can still do it by using a small IndieWeb provider.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;mailto:michael@michaelharley.net?subject=Re:%20Re:%20Self-hosting%20versus%20lots%20of%20small%20indieweb%20providers&quot;&gt;Reply via email&lt;/a&gt;&lt;/p&gt;
        </content>
      </entry>
</feed>