<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Posts on Technical Blog of Matthew</title>
    <link>https://matthewlk.com/post/</link>
    <description>Recent content in Posts on Technical Blog of Matthew</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Tue, 19 May 2026 16:35:00 -0400</lastBuildDate>
    <atom:link href="https://matthewlk.com/post/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Migrating from Jekyll to Hugo with Kiro CLI</title>
      <link>https://matthewlk.com/post/2026-05-19-migrating-to-hugo-with-kiro-cli/</link>
      <pubDate>Tue, 19 May 2026 16:35:00 -0400</pubDate>
      <guid>https://matthewlk.com/post/2026-05-19-migrating-to-hugo-with-kiro-cli/</guid>
      <description>&lt;p&gt;I just migrated this blog from Jekyll to Hugo, and I did it almost entirely through conversation with &lt;a href=&#34;https://kiro.dev&#34;&gt;Kiro CLI&lt;/a&gt; — an AI coding agent that runs in the terminal.&lt;/p&gt;
&lt;p&gt;The Jekyll setup had been giving me Ruby dependency headaches. Rather than debug bundler version conflicts, I decided to switch to Hugo, which ships as a single binary with no runtime dependencies.&lt;/p&gt;
&lt;p&gt;The migration involved:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Importing the existing post with &lt;code&gt;hugo import jekyll&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Adding &lt;a href=&#34;https://github.com/adityatelange/hugo-PaperMod&#34;&gt;PaperMod&lt;/a&gt; as a theme via git submodule&lt;/li&gt;
&lt;li&gt;Porting the about and portfolio pages to Hugo&amp;rsquo;s content structure&lt;/li&gt;
&lt;li&gt;Updating &lt;code&gt;deploy.sh&lt;/code&gt; to use &lt;code&gt;hugo&lt;/code&gt; + &lt;code&gt;aws s3 sync public/&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Kiro handled all of it — reading the existing files, making the changes, fixing issues as they came up (like Hugo&amp;rsquo;s Goldmark renderer blocking raw HTML by default), and verifying the build was clean before finishing.&lt;/p&gt;</description>
    </item>
    <item>
      <title>We&#39;re live!</title>
      <link>https://matthewlk.com/post/2023-01-01-welcome-to-my-blog/</link>
      <pubDate>Sun, 01 Jan 2023 15:40:07 +0000</pubDate>
      <guid>https://matthewlk.com/post/2023-01-01-welcome-to-my-blog/</guid>
      <description>&lt;p&gt;We&amp;rsquo;re live!&lt;/p&gt;
&lt;p&gt;Welcome to my blog.&lt;/p&gt;
&lt;p&gt;My intention with this blog is to publish posts on subjects related to software engineering. These will range from tutorials, opinion articles, lessons I&amp;rsquo;ve learned, and notes from technical readings.&lt;/p&gt;
&lt;p&gt;I built this blog using Jekyll, and AWS. It is hosted in a public S3 bucket, and delivered with CloudFront&amp;rsquo;s Content Delivery Network. The CDN redirects HTTP requests to HTTPS ones, and allows for faster delivery from edge locations. I used Route53 to reserve my DNS record (&lt;code&gt;matthewlk.com&lt;/code&gt;).&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
