<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="/feed.xsl"?>
<rss version="2.0">
  <channel>
    <title>ernesto.dev</title>
    <link>https://ernesto.dev</link>
    <description></description>
    <lastBuildDate>Tue, 10 Mar 2026 24:00:00 GMT</lastBuildDate>
    <language>en</language>
    
      <item>
        <title>Agent Experience</title>
        <link>https://ernesto.dev/posts/agent-experience/</link>
        <guid>https://ernesto.dev/posts/agent-experience/</guid>
        <pubDate>Tue, 10 Mar 2026 24:00:00 GMT</pubDate>
        
          <description><![CDATA[If agents cannot get work done smoothly in your product, they and the users behind them will choose one that lets them.]]></description>
        
      </item>
    
      <item>
        <title>Architecture as feedback for AI coding</title>
        <link>https://ernesto.dev/posts/architecture-feedback-ai-coding/</link>
        <guid>https://ernesto.dev/posts/architecture-feedback-ai-coding/</guid>
        <pubDate>Sat, 10 Jan 2026 24:00:00 GMT</pubDate>
        
          <description><![CDATA[Verification for AI coding is not only about whether features work. It is also about whether changes respect the shape of the codebase.]]></description>
        
      </item>
    
      <item>
        <title>Your MCP Server is just another client app</title>
        <link>https://ernesto.dev/posts/mcp-client-app/</link>
        <guid>https://ernesto.dev/posts/mcp-client-app/</guid>
        <pubDate>Wed, 24 Sep 2025 24:00:00 GMT</pubDate>
        
          <description><![CDATA[An MCP server around your service is another client app for that service. Just as your iOS, Android, or web app are.]]></description>
        
      </item>
    
      <item>
        <title>Being an effective AI whisperer</title>
        <link>https://ernesto.dev/posts/ai-whisperer/</link>
        <guid>https://ernesto.dev/posts/ai-whisperer/</guid>
        <pubDate>Mon, 19 May 2025 24:00:00 GMT</pubDate>
        
          <description><![CDATA[In a world where your next collaborator might be a language model, soft skills aren&#39;t soft anymore. They&#39;re the sharpest tool you&#39;ve got.]]></description>
        
      </item>
    
      <item>
        <title>We&#39;re building AI like we built airplanes</title>
        <link>https://ernesto.dev/posts/ai-flying/</link>
        <guid>https://ernesto.dev/posts/ai-flying/</guid>
        <pubDate>Sun, 18 May 2025 24:00:00 GMT</pubDate>
        
          <description><![CDATA[We didn&#39;t conquer the skies by flapping our arms. We did it by understanding flight on its own terms. The same applies to AI: real progress comes not from mimicking human minds, but from designing systems that play to the strengths of our machines.]]></description>
        
      </item>
    
      <item>
        <title>Habit tracking streaks are demotivating</title>
        <link>https://ernesto.dev/posts/streaks-habit-tracking/</link>
        <guid>https://ernesto.dev/posts/streaks-habit-tracking/</guid>
        <pubDate>Fri, 06 Jan 2023 24:00:00 GMT</pubDate>
        
          <description><![CDATA[Keeping streaks (e.g. of a habit) is the worse. Here are some better alternatives.]]></description>
        
      </item>
    
      <item>
        <title>Semantic blockquotes and citations in HTML</title>
        <link>https://ernesto.dev/posts/semantic-blockquotes/</link>
        <guid>https://ernesto.dev/posts/semantic-blockquotes/</guid>
        <pubDate>Thu, 10 Feb 2022 24:00:00 GMT</pubDate>
        
          <description><![CDATA[How should you add the author and source of a citation in the HTML blockquote element? In this article, we&#39;ll find out.]]></description>
        
      </item>
    
      <item>
        <title>Making impossible React states impossible</title>
        <link>https://ernesto.dev/posts/making-impossible-react-states-impossible/</link>
        <guid>https://ernesto.dev/posts/making-impossible-react-states-impossible/</guid>
        <pubDate>Mon, 10 Jan 2022 24:00:00 GMT</pubDate>
        
          <description><![CDATA[In this article, we&#39;ll explore how to leverage TypeScript union types to better express React component state.]]></description>
        
      </item>
    
      <item>
        <title>CSS rant</title>
        <link>https://ernesto.dev/posts/css-rant/</link>
        <guid>https://ernesto.dev/posts/css-rant/</guid>
        <pubDate>Wed, 12 May 2021 24:00:00 GMT</pubDate>
        
          <description><![CDATA[Or why Tailwind CSS is winning]]></description>
        
      </item>
    
      <item>
        <title>On writing notes while reading</title>
        <link>https://ernesto.dev/posts/on-writing-notes-while-reading/</link>
        <guid>https://ernesto.dev/posts/on-writing-notes-while-reading/</guid>
        <pubDate>Mon, 19 Apr 2021 24:00:00 GMT</pubDate>
        
          <description><![CDATA[No description available.]]></description>
        
      </item>
    
  </channel>
</rss>
