<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Patrick Hannah</title>
    <description>The latest articles on DEV Community by Patrick Hannah (@patricklovesaws).</description>
    <link>https://dev.to/patricklovesaws</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F634748%2F9f8df79f-7b67-4ea4-bba2-af75136bfa96.jpg</url>
      <title>DEV Community: Patrick Hannah</title>
      <link>https://dev.to/patricklovesaws</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/patricklovesaws"/>
    <language>en</language>
    <item>
      <title>Zendesk Relate 2026 - What I learned</title>
      <dc:creator>Patrick Hannah</dc:creator>
      <pubDate>Wed, 27 May 2026 18:20:38 +0000</pubDate>
      <link>https://dev.to/patricklovesaws/zendesk-relate-2026-what-i-learned-5a58</link>
      <guid>https://dev.to/patricklovesaws/zendesk-relate-2026-what-i-learned-5a58</guid>
      <description>&lt;p&gt;As I promised, I'm sharing some of my notes from Zendesk Relate 2026 in Denver, CO. The event, which was aptly titled "A Mile High, A Mile Ahead", had, unsuprisingly the prevalent theme of Agentic AI. Signage throughout the venue literally read "Hard launch agentic AI" and various flavors of that.&lt;/p&gt;

&lt;p&gt;One of the key things I hoped to leave with was the ability to articulate the value of Local Measure joining the Zendesk team. For context: Local Measure built Engage for Amazon Connect - a full CCaaS layer on top of Connect - and their acquisition brings that native channel depth directly into the Zendesk ecosystem. With Zendesk Contact Center, the impact is evident.&lt;/p&gt;

&lt;p&gt;Some of the key takeaways for me were around the current market landscape for Amazon Connect in the Contact Center. These included:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;"Overlays are dying": The overlay model isn't the future. What's an overlay? A custom CCP built on the Amazon Connect Streams SDK - essentially a feature-extended agent softphone that sits on top of the connect CCP (figuratively). These made a lot of sense pre-Amazon Connect Agent Workspaces, especially for customers without a CRM that natively embedded the Amazon Connect CCP and needed added functionality. It's also clear that AWS has not prioritized feature parity between the Streams SDK and Agent Workspace. CRM tie-ins make this even more evident - Zendesk's native Amazon Connect integration and Salesforce's ever-evolving CTI adapter, SCV and CCaaS flavors  both demonstrate that the embedded CRM experience is where the market is heading, not custom-built agent desktops. This makes the overlay a situation where custom overlays are chasing a moving target, and the ROI case is getting harder to make.&lt;/li&gt;
&lt;li&gt;AHT is going up, not down. This makes sense: bots are handling the easy stuff, so human agents are left with the harder, more complex calls. The metric looks worse on paper, but the workload composition has shifted. An agent's average handle time climbing from 4 minutes to 7 minutes isn't necessarily a problem - it might mean your containment rate jumped 40% and what's left is genuinely hard. The challenge is that most contact center leadership is still reading AHT as a performance signal without that context.&lt;/li&gt;
&lt;li&gt;Non-human-agent reporting is a gap. Specifically, trying to apply traditional call center metrics - AHT, ASA, FCR - to bot interactions doesn't really work. A bot that "handles" a call in 45 seconds and transfers isn't the same as a bot that fully resolves. First Contact Resolution, in particular, loses meaning when the "contact" is split across an IVA and a human. The industry doesn't have a good answer for this yet.&lt;/li&gt;
&lt;li&gt;Queue management remains a pain point. This isn't exclusive to Amazon Connect, but it's compounded by Connect's expanding routing capabilities - specifically Proficiencies and Pick Lists. Proficiency-based routing lets you score agents on skills and route accordingly, which is powerful, but adds real configuration complexity when layering on top of queues, routing profiles and giving agents the ability to pick contacts out of the queue. The more granular your routing logic, the harder it is to predict queue behavior at scale and the easier it is to accidentally implement inefficiencies and create the opportunity for abuse.&lt;/li&gt;
&lt;li&gt;QA'ing automation is an emerging need. As bots handle more volume, evaluating bot behavior becomes just as critical as evaluating agent behavior - arguably more so, given scale. This sounds like a reporting gap, but it extends beyond that. It's about building rubrics for IVA interactions: Was the right intent recognized? Was the resolution path appropriate? Was the handoff clean? Most QA tooling wasn't built for this, and most QA teams aren't trained for it either.&lt;/li&gt;
&lt;li&gt;Post go-live support is underserved - real opportunity here. Going live on a CRM is a different problem than going live on a channel that supports real-time communications. A CRM without a live channel integrated has human latency baked in - agents are switching tabs, copying notes, managing context manually. When you integrate the channel, that latency disappears and every inefficiency it was masking suddenly becomes visible. Customers often interpret this as the integration creating problems when it's actually just exposing them. That gap in expectation management and post-launch optimization is largely unaddressed in the market.&lt;/li&gt;
&lt;li&gt;Front-end for Connect admin - this circles back to the overlay concept. Do you recreate the Amazon Connect experience, or do you improve it? Increasingly, the answer has to be "improve it", otherwise you are in a race you will never win. This requires opinionated decisions about what "better" looks like for a given customer segment, which is harder than it sounds.&lt;/li&gt;
&lt;li&gt;Knowledge quality drives IVR/IVA retention rates. A referenced customer showed 80–90% containment tied directly to the quality of their knowledge base. Not the sophistication of the bot, not the model - the knowledge. This is an underrated point: you can deploy a best-in-class IVA and still get 40% containment if the underlying content is stale, incomplete, or inconsistently structured. This is what I'm calling the iron triangle of IVA (more to come on that).&lt;/li&gt;
&lt;li&gt;Marketplace-style onboarding for Connect is strongly desired. The ask was simple: give me the same click-through, guided experience to get up and running on Connect that I get when signing up for Zendesk. Right now, Connect sign-up often means navigating a new AWS account, IAM, and a handful of service dependencies before you've even touched the product. That friction is real and it's a barrier - especially for customers coming from simpler CCaaS backgrounds.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;So the big question, in the world of Amazon Connect is: What's AWS going to address? How does this resonate with customers? Whose going to dominate ecosystem by solving for these?&lt;/p&gt;

&lt;p&gt;Finally, it was great seeing some old AWS friends, finally getting to meet some of the Local Measure stars, and unfortunately missing a presentation featuring a very old customer.&lt;/p&gt;

</description>
      <category>zendeskrelate2026</category>
      <category>zendesk</category>
      <category>relate</category>
      <category>zendeskrelate</category>
    </item>
    <item>
      <title>Streamlining Workflows with a MIDI Controller: Efficient Multitasking</title>
      <dc:creator>Patrick Hannah</dc:creator>
      <pubDate>Mon, 25 May 2026 18:26:42 +0000</pubDate>
      <link>https://dev.to/patricklovesaws/streamlining-workflows-with-a-midi-controller-efficient-multitasking-o80</link>
      <guid>https://dev.to/patricklovesaws/streamlining-workflows-with-a-midi-controller-efficient-multitasking-o80</guid>
      <description>&lt;p&gt;Why not?&lt;/p&gt;

&lt;p&gt;I normally have 3+ concurrent activities going on between &lt;strong&gt;Claude&lt;/strong&gt;, &lt;strong&gt;Claude Code in Visual Studio Code (VSCode)&lt;/strong&gt;,  &lt;strong&gt;Kiro&lt;/strong&gt; and &lt;strong&gt;Quick&lt;/strong&gt; In between waiting for them to finish, or moving to the next step, or asking me questions because I am vague in my requests, I do other things - typical multitasking. Good use of time, right? Then I forgot they are waiting.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Interrupts and Notifications&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;So what if we think about computers and interrupts? What if these tools become the interrupt to my background activities? Great, we can create a local &lt;strong&gt;MCP server&lt;/strong&gt; (I know, a bad idea for most, but bear with me), use that with these tools, and pop a notification to my screen so I am 1) reminded that it's here 2) am aware it needs me 3) can give it one of a few obvious responses).&lt;/p&gt;

&lt;p&gt;(Tools are tools in the traditional sense, not agent tools, and I am calling it 'it', not 'Barbie').&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Enhancing Efficiency with MIDI Controllers&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Neat, now that that works, why not pre-can some responses? I swear I have seen a 3-key USB-C attached device that does this. Well, I have a &lt;strong&gt;MIDI controller&lt;/strong&gt;, which is even better because I lack musical talent.&lt;/p&gt;

&lt;p&gt;By configuring my MIDI controller, I can streamline my workflow even further. When I get a popup (or the MIDI pad lights up for the specific tool), I can hit a button, switch focus to that tool, and likely tell it 'okay go ahead'.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Balancing Innovation and Stability&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This is about as willing as I am to go in the world of &lt;strong&gt;OpenClaw&lt;/strong&gt;, because the last thing I need is to end up with a wiped laptop. Of course, &lt;strong&gt;Quick&lt;/strong&gt; has been interesting, but it is starting to show its &lt;strong&gt;AWS&lt;/strong&gt;-ness (can't seem to add more than one Slack Workspace, though it claims it's possible, but also doesn't know where to go to raise a support case, besides the usual suspects, which are not appropriate for a consumer app).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Project&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I called it MPD-Vibe because it's an MPD218 controller and I'm vibe coding with it. Pretty creative, right? Unfortunately when I got this pandemic-era device I didn't envision using it for this purpose, so this model only has Red LEDs (other models have the full RGB spectrum).&lt;/p&gt;

&lt;p&gt;I started in Claude as an experiment, got some help with Quick to explain to Claude how to setup an MCP server automatically, and tied it off in Kiro for an actual OSX installer and app. Claude also pretended not to know how to light an LED on the controller so google found me a nice GitHub Gist with sample python code (thanks! &lt;a href="https://gist.github.com/peterc/7f618761f47b1669068ed4c93c9d0eb2" rel="noopener noreferrer"&gt;https://gist.github.com/peterc/7f618761f47b1669068ed4c93c9d0eb2&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;Aside from that, some testing yielded various MCP behavioral differences between the tools, state management, blocking and timeout issues, but I think I have them all nailed.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;By integrating a MIDI controller with the various flavors of Agentic apps and setting up a local MCP server, you can streamline your multitasking workflow, ensuring you never miss a notification and can efficiently manage multiple tasks across platforms. While diving into more complex systems like &lt;strong&gt;OpenClaw&lt;/strong&gt; might seem tempting, balancing innovation with stability is key. With the right tools and setup, you can enhance productivity without unnecessary risks.&lt;/p&gt;

</description>
      <category>midicontroller</category>
      <category>kiro</category>
      <category>claude</category>
      <category>vscode</category>
    </item>
    <item>
      <title>Sticking Feathers Up Your Butt Doesn't Make You a Chicken</title>
      <dc:creator>Patrick Hannah</dc:creator>
      <pubDate>Wed, 20 May 2026 00:53:29 +0000</pubDate>
      <link>https://dev.to/patricklovesaws/sticking-feathers-up-your-butt-doesnt-make-you-a-chicken-52ha</link>
      <guid>https://dev.to/patricklovesaws/sticking-feathers-up-your-butt-doesnt-make-you-a-chicken-52ha</guid>
      <description>&lt;p&gt;Nor does declaring your company an 'AI Company'.&lt;/p&gt;

&lt;p&gt;Or, in the words of Ludacris:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;James: Shit man, I got myself a little internet business myself&lt;/p&gt;

&lt;p&gt;Willy Beamen: Oh yeah? What's that?&lt;/p&gt;

&lt;p&gt;James: &lt;em&gt;cocks gun&lt;/em&gt; Robbin', muthafucka&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Customers don't care. Investors do. AWS does (or whoever your 'partner' hyperscaler is). Anthropic does (J/K they don't care). I guess they all give you money in one way or another, some in exchange for labor, some in exchange for your soul.&lt;/p&gt;

&lt;p&gt;This is very evident when I look at the positioning of some technology consulting companies (and no, I am not referring to a former employer). It's a problem with the industry as a whole, and AWS did a poor job of articulating it to partners (my experience was an obsessive, not in the customer obsessed way, of consulting offers, or I mean solutions).&lt;/p&gt;

&lt;p&gt;What do customers think? Customers don't care (I think I said that already).&lt;/p&gt;

&lt;p&gt;What do they want?&lt;/p&gt;

&lt;h3&gt;
  
  
  1) Value
&lt;/h3&gt;

&lt;p&gt;Customers are fundamentally seeking value. This means they want a product or service that fulfills a genuine need, and they want it delivered in a way that either costs them less or generates more value than alternatives. For instance, if a company can automate a process that saves a client significant time and money, that's value. It's not about the complexity of the technology behind it, but rather the tangible benefits it brings to the customer's bottom line.&lt;/p&gt;

&lt;h3&gt;
  
  
  2) Consistency
&lt;/h3&gt;

&lt;p&gt;Consistency is crucial. Customers want to know they can rely on a company to show up and perform every day, no matter what. This includes being available, dependable, and delivering a high-quality service whether the team is dealing with personal challenges or not. Consistency breeds trust, and trust is the cornerstone of long-term customer relationships.&lt;/p&gt;

&lt;h3&gt;
  
  
  3) Safety and Performance
&lt;/h3&gt;

&lt;p&gt;Customers also look for safety in their business partners. This can be demonstrated through a company's past performance and reliability. They want assurance that the solutions they adopt won't fail them and that their peers are working with proven, reliable technologies. Moreover, customers want to feel that they are not missing out on industry trends and best practices. This is why seeing what other successful businesses are using or avoiding can be a significant factor in their decision-making process.&lt;/p&gt;

&lt;h3&gt;
  
  
  4) Vision and Innovation
&lt;/h3&gt;

&lt;p&gt;While not always a primary concern, some customers are drawn to a company's vision and innovation. They might be excited about the latest technology, like the release of a new version of a software or platform, and want to leverage it to stay ahead. Conversely, other customers might feel intimidated by rapid technological changes and prefer to avoid them unless guided by an expert. For these customers, a company's vision and ability to navigate complex technologies safely are key differentiators.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Bottom Line
&lt;/h3&gt;

&lt;p&gt;So, while touting your ability to use the latest AI technology might impress some, it doesn't necessarily make you a hero. What truly matters is how you use that technology to deliver visionary solutions consistently, that create value and don't expose your customers to risk. When you prevent issues before they arise and ensure your services are reliable, that's when you build the trust and loyalty that lead to lasting business success.&lt;/p&gt;

&lt;p&gt;Context:Title: Sticking Feathers Up Your Butt Doesn't Make You a ChickenTags: AI Company, Customer Value, Value Creation, Customer Loyalty, Consistency, Safety, VisionDescription: Discover why labeling your company as an 'AI Company' doesn't resonate with customers; learn what truly matters to them, from value and consistency to safety and vision, in this insightful blog post. Explore how genuine value creation and reliable service, not flashy labels, drive customer loyalty and business success.&lt;/p&gt;

</description>
      <category>aicompany</category>
      <category>customervalue</category>
      <category>valuecreation</category>
      <category>customerloyalty</category>
    </item>
    <item>
      <title>From Smoky to Rocky: My 4 Dimensional Journey to Zendesk Relate</title>
      <dc:creator>Patrick Hannah</dc:creator>
      <pubDate>Mon, 18 May 2026 17:12:50 +0000</pubDate>
      <link>https://dev.to/patricklovesaws/from-smoky-to-rocky-my-4-dimensional-journey-to-zendesk-relate-37n0</link>
      <guid>https://dev.to/patricklovesaws/from-smoky-to-rocky-my-4-dimensional-journey-to-zendesk-relate-37n0</guid>
      <description>&lt;p&gt;Amazing that in less than 24 hours I went from the Smoky mountains to the Rocky mountains and a good 6 hours on the road and a flight to get there.&lt;/p&gt;

&lt;h2&gt;
  
  
  A Journey Through Time and Technology
&lt;/h2&gt;

&lt;p&gt;My first time to Denver was in 2010 - Perficient flew me out to interview (and offered me a job, and then disappeared - likely due to Oracle's change of heart around Contact Center Anywhere). I'm literally staring at the hotel that I stayed at at the time. 3 of the past 4 years I found myself in Denver the last school week of the year give or take Memorial day weekend. I won't get into those last two :).&lt;/p&gt;

&lt;h2&gt;
  
  
  Attending Zendesk Relate
&lt;/h2&gt;

&lt;p&gt;This year, I'm privileged to attend Zendesk Relate, as a partner, benefitting from the hard work my colleagues at Call Center Power put into demonstrating competency and capability in delivering Zendesk Contact Center.&lt;/p&gt;

&lt;h3&gt;
  
  
  Zendesk's Evolution
&lt;/h3&gt;

&lt;p&gt;(If I recall correctly, this is about a year into their acquisition of Local Measure as well). That's about the time Zendesk popped back up into my radar, having last used it (as a customer) in 2015ish and periodically running into customer opportunities where it was in play. I recall there were a few rough years, nothing to be ashamed of, nor to laugh at. Finding myself leaving my own rough year, I looked back at their story numerous times and felt some relief - challenges happen, and you overcome them. Now, when Zendesk did pop back up on my radar I was amazed - what was a SME ticketing system (in my mind) 10 years ago had grown up. I'm genuinely excited about what I'm about to learn this week.&lt;/p&gt;

&lt;h2&gt;
  
  
  Learning and Growing
&lt;/h2&gt;

&lt;p&gt;So now, my hope is this week to learn as much as possible - what's changed in the product (a lot!), what do customers like about it? And, as always, how does that intersect with AWS :)&lt;/p&gt;

&lt;h3&gt;
  
  
  Behind the Scenes
&lt;/h3&gt;

&lt;p&gt;We have been building some neat things behind the scenes around Zendesk as well, and look forward to sharing them soon. It's exciting to see the innovations and improvements Zendesk has made, and how these advancements can be leveraged to benefit our clients.&lt;/p&gt;

&lt;h3&gt;
  
  
  Reflections and Future Outlook
&lt;/h3&gt;

&lt;p&gt;Reflecting on my journey, I've seen how Zendesk has evolved not just as a product, but as a platform that continues to adapt to the ever-changing landscape of customer service. The transition from being a simple ticketing system to a comprehensive customer engagement platform is remarkable.&lt;/p&gt;

&lt;h3&gt;
  
  
  Key Takeaways
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Product Evolution:&lt;/strong&gt; Zendesk has come a long way, integrating more robust features and capabilities.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Customer Feedback:&lt;/strong&gt; Understanding what customers value is crucial for continued improvement.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Integration with Contact Center Technology:&lt;/strong&gt; The intersection of Zendesk with broader technologies opens up new possibilities for enhancing customer experiences.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  What's Next?
&lt;/h3&gt;

&lt;p&gt;As I delve deeper into Zendesk Relate, I'm eager to explore the new features, network with other professionals, and gather insights that can be applied to our ongoing projects.&lt;/p&gt;

&lt;h3&gt;
  
  
  Conclusion
&lt;/h3&gt;

&lt;p&gt;My journey from the Smoky to the Rocky Mountains is more than just a physical trip; it's a testament to growth, learning, and the exciting advancements in the Contact Center technology space. Attending Zendesk Relate is part of my reignighted passion for innovation in technology to support the front lines of service and support - whether it's for an internal customer or an external customer.&lt;/p&gt;

&lt;p&gt;Stay tuned for more updates as I continue to explore and learn at Zendesk Relate!&lt;/p&gt;

</description>
      <category>zendesk</category>
      <category>contactcenter</category>
      <category>zendeskrelate</category>
      <category>denver</category>
    </item>
    <item>
      <title>Creating a Personal Landing Page: Oops I created a CMS</title>
      <dc:creator>Patrick Hannah</dc:creator>
      <pubDate>Fri, 24 Apr 2026 17:52:34 +0000</pubDate>
      <link>https://dev.to/patricklovesaws/creating-a-personal-landing-page-oops-i-created-a-cms-47hn</link>
      <guid>https://dev.to/patricklovesaws/creating-a-personal-landing-page-oops-i-created-a-cms-47hn</guid>
      <description>&lt;p&gt;Well, that got out of control.&lt;/p&gt;

&lt;p&gt;I ended up building more of a landing page than a blog (perhaps what LinkedIn could be? Or a really powerful LinkTree-like site). My initial goal was to create a simple showcase of my work and achievements, but as I delved deeper into the project, it evolved into something much more comprehensive and robust.&lt;/p&gt;

&lt;h3&gt;
  
  
  Delving into the Scraping Process
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Gathering Data from Various Sources&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;To create a landing page that truly represents me, I had to gather a significant amount of information from various sources. This process involved dealing with both public and non-public APIs, which presented its own set of challenges. While Kiro's warnings about the risks of using non-public APIs were very much valid, the data I scraped was essential in creating a comprehensive and personalized landing page.&lt;/p&gt;

&lt;p&gt;Scraping data from APIs was relatively straightforward and provided the foundation for my landing page, ensuring that it was both informative and reflective of my professional journey.&lt;/p&gt;

&lt;h3&gt;
  
  
  Building a Custom CMS
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;The Need for a Content Management System&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;As I started aggregating data, I quickly realized that I needed a way to manage and edit these pages effectively. While WordPress is a popular and powerful option, I chose to create a custom content management system (CMS) to avoid the usual security and operational concerns associated with WordPress. This decision allowed me to have full control over the development process and to tailor the CMS to my specific needs.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Creating a Local Client&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The custom CMS I built is designed to run locally on my machine. This local client ensures that all the code is executed in a controlled environment, providing a seamless development experience. Once the code is ready, it is versioned and pushed to GitHub. However, the CMS is flexible enough to work with any static hosting site solution, giving me the freedom to choose the platform that best suits my needs.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Enhancing Visual Appeal with Jekyll&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;To handle the visual aspects of my landing page, I used Jekyll, a popular static site generator, combined with a well-crafted template. Jekyll's simplicity and flexibility made it an ideal choice for this project, allowing me to create a visually appealing and professional-looking website without the need for complex server-side scripting.&lt;/p&gt;

&lt;h3&gt;
  
  
  Enhancing the Project with Additional Features
&lt;/h3&gt;

&lt;p&gt;To further enhance my landing page, I created several additional features that improve both the functionality and user experience.&lt;/p&gt;

&lt;h4&gt;
  
  
  Media Library Manager
&lt;/h4&gt;

&lt;p&gt;&lt;strong&gt;Organizing and Managing Media Files&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;One of the key features I added was a media library manager. This tool is essential for organizing and managing all the media files I use on my site, such as images, videos, and presentations. It also deploys and manages the content delivery network (CDN), ensuring that my media content is efficiently distributed and accessible to users worldwide.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Keeping Content Up-to-Date&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In addition to managing media files, the media library manager extracts and re-tags common tags from YouTube and SlideShare content I have previously authored. This ensures that my landing page always showcases the most relevant and up-to-date information. With nearly 200 references, having a well-organized media library is crucial to avoid overwhelming visitors with too much information.&lt;/p&gt;

&lt;h4&gt;
  
  
  URL Shortener
&lt;/h4&gt;

&lt;p&gt;&lt;strong&gt;Simplifying Long URLs&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Another crucial addition to my landing page is a URL shortener. This feature simplifies long URLs, making them more user-friendly and easier to share. It also helps with tracking and analytics, providing insights into how users interact with my content. By shortening URLs, I can monitor which links are most popular and adjust my content strategy accordingly.&lt;/p&gt;

&lt;h4&gt;
  
  
  YouTube Synchronization
&lt;/h4&gt;

&lt;p&gt;&lt;strong&gt;Keeping Content Fresh and Engaging&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;To keep my content fresh and engaging, I implemented YouTube synchronization. This feature automatically updates my landing page with the latest videos from my YouTube channel, ensuring that visitors always have access to the most recent content.&lt;/p&gt;

&lt;h4&gt;
  
  
  Editorial Assistance with Bedrock
&lt;/h4&gt;

&lt;p&gt;&lt;strong&gt;Maintaining High-Quality Content&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;To maintain high-quality content, I integrated Bedrock, as an editorial assistance tool. Using basic prompts, Bedrock helps with spelling and grammar checks, as well as elaboration and generation of titles, descriptions, and tags. This feature ensures that my content is polished and professional, while still remaining authentic to my voice and style. By leveraging AI-driven editorial assistance, I can focus on creating high-quality content without worrying about minor errors or inconsistencies.&lt;/p&gt;

&lt;h3&gt;
  
  
  Balancing Efficiency and Effectiveness
&lt;/h3&gt;

&lt;p&gt;While this project isn't 'agentic' in the sense of being fully autonomous, it strikes a balance between efficiency and effectiveness. By building a custom CMS and adding these additional features, I created a landing page that is not only functional but also serves as my portfolio. This balance ensures that I meet my needs while keeping costs and resources in check.&lt;/p&gt;

&lt;h3&gt;
  
  
  Conclusion
&lt;/h3&gt;

&lt;p&gt;Creating a personal landing page turned out to be more than a 24-hour project, but (and the same can be said about nearly any AI project), it came down to data quality. I found this to be a great exercise in using Kiro to build something that sees the light of day (versus the other dozen or two projects I've not yet deployed). The journey of creating this landing page has been a valuable learning experience, providing insights into the intricacies of scraping APIs, building a custom CMS with Jekyll, and the balance between efficiency and effectiveness in personal projects.&lt;/p&gt;

</description>
      <category>apiscraping</category>
      <category>customcms</category>
      <category>jekyll</category>
      <category>medialibrarymanager</category>
    </item>
    <item>
      <title>First Post</title>
      <dc:creator>Patrick Hannah</dc:creator>
      <pubDate>Fri, 17 Apr 2026 18:33:33 +0000</pubDate>
      <link>https://dev.to/patricklovesaws/first-post-1l85</link>
      <guid>https://dev.to/patricklovesaws/first-post-1l85</guid>
      <description>&lt;p&gt;I want to get back into writing (okay, blogging), but the challenge I've always had is never having a permanent home for it. Self host? Use a platform? What about ownership? Future paywalls?&lt;/p&gt;

&lt;p&gt;I used my AI friends to help get to a conclusion - host it on GitHub. No different than Code and I alone determine how my intellectual property is used and by who. The problem is, the workflow around publishing to GitHub, and writing in Markdown puts me back into a spot I was in previously.&lt;/p&gt;

&lt;p&gt;The other issue is reach - how can I use friendlier platforms (ideally ones with APIs and are geared towards the community of developers) to syndicate my writing elsewhere?&lt;/p&gt;

&lt;p&gt;I've been using Kira A LOT, nothing (recently, at least) has made it to the Internet, so this is the first. I used Kiro to help me create a browser based (albeit local) "application" that handles the editorial lifecycle of content drafted, reviewed and published by a singular person (so no sharing, RBAC, etc.) with a heavy focus on the publishing workflow and syndication.&lt;/p&gt;

&lt;p&gt;After about a dozen tests (I see Twitter, I mean X is still desparate for money and posting through an API is nowhere near free), I am able to post to GitHub, Dev.to, Hashnode and a link from "Linked" In to the GitHub based Blog. Twitter sure would be nice, as would the AWS developer community portal (hint hint). Medium and Substack seem to be less than intersted in API-based posting, and based on some of Medium's practices in the past, I am less interested in posting there (Substack is still promising, though).&lt;/p&gt;

&lt;p&gt;Perhaps in the future I'll cross post to Slack, eh?&lt;/p&gt;

&lt;p&gt;Anyway, this is the first test post I won't delete, and I'm proud that it cost me zero hard dollars and about a day or so to incept, iterate and begin using.&lt;/p&gt;

&lt;p&gt;Patrick&lt;/p&gt;

</description>
      <category>first</category>
      <category>post</category>
    </item>
  </channel>
</rss>
