<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Compiled Thoughts</title>
    <link>https://andreibodea.com</link>
    <description>Reflection on code, life, and learning</description>
    <language>en-gb</language>
    <lastBuildDate>Thu, 10 Sep 2026 12:00:00 GMT</lastBuildDate>
    <atom:link href="https://andreibodea.com/rss.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>AI slop and tech debt — where three models agree</title>
      <link>https://andreibodea.com/2026-09-10-ai-slop-where-three-models-agree</link>
      <guid isPermaLink="true">https://andreibodea.com/2026-09-10-ai-slop-where-three-models-agree</guid>
      <pubDate>Thu, 10 Sep 2026 12:00:00 GMT</pubDate>
      <description>I put the same argument to three models from two vendors. They converged on eight points, split on three, and there is one good reason to distrust the whole exercise.</description>
      <enclosure url="https://andreibodea.com/img/coding_risk_debate.png" length="0" type="image/png" />
      <category>AI</category>
      <category>code review</category>
      <category>engineering practice</category>
      <category>AI summarised</category>
    </item>
    <item>
      <title>27 MB and no keyboard — auditing a photography portfolio</title>
      <link>https://andreibodea.com/2026-08-24-auditing-a-photography-portfolio</link>
      <guid isPermaLink="true">https://andreibodea.com/2026-08-24-auditing-a-photography-portfolio</guid>
      <pubDate>Mon, 24 Aug 2026 18:00:00 GMT</pubDate>
      <description>A photo gallery that downloaded itself, two CSS classes that did not exist, and why reserving space is what makes lazy loading lazy.</description>
      <enclosure url="https://andreibodea.com/img/blog24_08_26.png" length="0" type="image/png" />
      <category>next</category>
      <category>react</category>
      <category>tailwind</category>
      <category>front-end</category>
      <category>design</category>
      <category>accessibility</category>
      <category>performance</category>
      <category>AI generated</category>
    </item>
    <item>
      <title>Redesigning Compiled Thoughts with an AI design critique</title>
      <link>https://andreibodea.com/2026-08-12-redesigning-compiled-thoughts-with-claude</link>
      <guid isPermaLink="true">https://andreibodea.com/2026-08-12-redesigning-compiled-thoughts-with-claude</guid>
      <pubDate>Wed, 12 Aug 2026 10:00:00 GMT</pubDate>
      <description>What a two-agent design critique found in this blog, and the twenty-odd things it changed.</description>
      <enclosure url="https://andreibodea.com/img/redesign-2026.png" length="0" type="image/png" />
      <category>nuxt</category>
      <category>vue</category>
      <category>front-end</category>
      <category>design</category>
      <category>accessibility</category>
      <category>AI generated</category>
    </item>
    <item>
      <title>WAF Deployment Stamps Pattern</title>
      <link>https://andreibodea.com/2025-08-19-deployment-stamps</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-08-19-deployment-stamps</guid>
      <pubDate>Tue, 19 Aug 2025 14:14:00 GMT</pubDate>
      <description>Replicate your solution into independently scalable and updatable stamps.</description>
      <enclosure url="https://andreibodea.com/img/deployment_stamps.png" length="0" type="image/png" />
      <category>azure</category>
      <category>design patterns</category>
      <category>performance efficiency</category>
      <category>operational excellence</category>
    </item>
    <item>
      <title>WAF CQRS Pattern</title>
      <link>https://andreibodea.com/2025-08-12-cqrs</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-08-12-cqrs</guid>
      <pubDate>Tue, 12 Aug 2025 14:14:00 GMT</pubDate>
      <description>Separates the models for handling commands (writes that change state) and queries (reads that fetch data).</description>
      <enclosure url="https://andreibodea.com/img/cqrs.png" length="0" type="image/png" />
      <category>azure</category>
      <category>design patterns</category>
      <category>performance efficiency</category>
    </item>
    <item>
      <title>WAF Compute Resource Consolidation Pattern</title>
      <link>https://andreibodea.com/2025-08-05-compute-resource-consolidation</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-08-05-compute-resource-consolidation</guid>
      <pubDate>Tue, 05 Aug 2025 14:14:00 GMT</pubDate>
      <description>A pattern that consolidates multiple tasks or operations into a single computational unit.</description>
      <enclosure url="https://andreibodea.com/img/compute-resource-consolidation.png" length="0" type="image/png" />
      <category>azure</category>
      <category>design patterns</category>
      <category>operational excellence</category>
      <category>cost optimization</category>
      <category>performance efficiency</category>
    </item>
    <item>
      <title>WAF Competing Consumers Pattern</title>
      <link>https://andreibodea.com/2025-07-29-competing-consumers</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-07-29-competing-consumers</guid>
      <pubDate>Tue, 29 Jul 2025 14:14:00 GMT</pubDate>
      <description>A pattern that allows multiple independent consumer instances to pull messages from a shared queue</description>
      <enclosure url="https://andreibodea.com/img/competing-consumers.png" length="0" type="image/png" />
      <category>azure</category>
      <category>design patterns</category>
      <category>reliability</category>
      <category>cost optimization</category>
      <category>performance efficiency</category>
    </item>
    <item>
      <title>WAF Compensation Transaction Pattern</title>
      <link>https://andreibodea.com/2025-07-22-compensation-transaction</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-07-22-compensation-transaction</guid>
      <pubDate>Tue, 22 Jul 2025 14:14:00 GMT</pubDate>
      <description>A pattern that ensures system consistency by undoing work after failures</description>
      <enclosure url="https://andreibodea.com/img/compensation-transaction.png" length="0" type="image/png" />
      <category>azure</category>
      <category>design patterns</category>
      <category>reliability</category>
      <category>self healing</category>
    </item>
    <item>
      <title>WAF Claim-Check Pattern</title>
      <link>https://andreibodea.com/2025-07-15-claim-check</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-07-15-claim-check</guid>
      <pubDate>Tue, 15 Jul 2025 14:14:00 GMT</pubDate>
      <description>A pattern that allows workloads to transfer payloads without storing the payload in a messaging system</description>
      <enclosure url="https://andreibodea.com/img/claim-check.png" length="0" type="image/png" />
      <category>azure</category>
      <category>design patterns</category>
      <category>reliability</category>
      <category>performance efficiency</category>
      <category>security</category>
      <category>cost optimization</category>
    </item>
    <item>
      <title>WAF Circuit-Breaker Pattern</title>
      <link>https://andreibodea.com/2025-07-07-circuit-breaker</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-07-07-circuit-breaker</guid>
      <pubDate>Mon, 07 Jul 2025 14:14:00 GMT</pubDate>
      <description>Temporarily blocks access to a faulty service after it detects failures</description>
      <enclosure url="https://andreibodea.com/img/circuit-breaker.png" length="0" type="image/png" />
      <category>azure</category>
      <category>design patterns</category>
      <category>reliability</category>
      <category>performance efficiency</category>
      <category>self healing</category>
    </item>
    <item>
      <title>WAF Choreography Pattern</title>
      <link>https://andreibodea.com/2025-07-02-choreography</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-07-02-choreography</guid>
      <pubDate>Wed, 02 Jul 2025 14:14:00 GMT</pubDate>
      <description>Decentralize workflow logic and distribute the responsibilities to other components within a system</description>
      <enclosure url="https://andreibodea.com/img/choreography-pattern.png" length="0" type="image/png" />
      <category>azure</category>
      <category>design patterns</category>
      <category>operational excellence</category>
      <category>performance efficiency</category>
    </item>
    <item>
      <title>WAF Cache-Aside Pattern</title>
      <link>https://andreibodea.com/2025-06-24-cache-aside</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-06-24-cache-aside</guid>
      <pubDate>Tue, 24 Jun 2025 14:14:00 GMT</pubDate>
      <description>Read performance is a priority and eventual consistency is acceptable</description>
      <enclosure url="https://andreibodea.com/img/cache-aside.png" length="0" type="image/png" />
      <category>azure</category>
      <category>design patterns</category>
      <category>reliability</category>
      <category>performance efficiency</category>
    </item>
    <item>
      <title>WAF Bulkhead Pattern</title>
      <link>https://andreibodea.com/2025-06-10-design-pattern-bulkhead</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-06-10-design-pattern-bulkhead</guid>
      <pubDate>Tue, 10 Jun 2025 14:14:00 GMT</pubDate>
      <description>Segmentation of an application to increase fault tolerance</description>
      <enclosure url="https://andreibodea.com/img/bulkheads.png" length="0" type="image/png" />
      <category>azure</category>
      <category>design patterns</category>
      <category>reliability</category>
      <category>security</category>
      <category>performance efficiency</category>
      <category>self healing</category>
    </item>
    <item>
      <title>WAF Backends for Frontends Pattern</title>
      <link>https://andreibodea.com/2025-05-27-design-pattern-bffp</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-05-27-design-pattern-bffp</guid>
      <pubDate>Tue, 27 May 2025 14:14:00 GMT</pubDate>
      <description>Avoid customizing a backend that serves multiple interfaces</description>
      <enclosure url="https://andreibodea.com/img/bffs.png" length="0" type="image/png" />
      <category>azure</category>
      <category>design patterns</category>
      <category>reliability</category>
      <category>security</category>
      <category>performance efficiency</category>
    </item>
    <item>
      <title>WAF Asynchronous Request-Reply Pattern</title>
      <link>https://andreibodea.com/2025-05-20-desig-pattern-async-request-reply</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-05-20-desig-pattern-async-request-reply</guid>
      <pubDate>Tue, 20 May 2025 14:14:00 GMT</pubDate>
      <description>Decouple backend processing from a frontend host</description>
      <enclosure url="https://andreibodea.com/img/async-request2.png" length="0" type="image/png" />
      <category>azure</category>
      <category>design patterns</category>
      <category>performance efficiency</category>
    </item>
    <item>
      <title>WAF Anti-Corruption Layer Pattern</title>
      <link>https://andreibodea.com/2025-05-07-design-pattern-anti-corruption-layer</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-05-07-design-pattern-anti-corruption-layer</guid>
      <pubDate>Tue, 13 May 2025 14:14:00 GMT</pubDate>
      <description>Layer between two subsystems to prevent undesirable dependencies</description>
      <enclosure url="https://andreibodea.com/img/anti-corruption-layer2.png" length="0" type="image/png" />
      <category>azure</category>
      <category>design patterns</category>
      <category>operational excellence</category>
    </item>
    <item>
      <title>WAF Ambassador Pattern</title>
      <link>https://andreibodea.com/2025-05-07-design-pattern-ambassador</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-05-07-design-pattern-ambassador</guid>
      <pubDate>Wed, 07 May 2025 14:14:00 GMT</pubDate>
      <description>Proxy between your application and external services</description>
      <enclosure url="https://andreibodea.com/img/ambassador2.png" length="0" type="image/png" />
      <category>azure</category>
      <category>design patterns</category>
      <category>reliability</category>
      <category>security</category>
    </item>
    <item>
      <title>AZ-305 Network Solutions</title>
      <link>https://andreibodea.com/2025-05-06-az-305-network-solutions</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-05-06-az-305-network-solutions</guid>
      <pubDate>Tue, 06 May 2025 14:14:00 GMT</pubDate>
      <description>AI summarised</description>
      <enclosure url="https://andreibodea.com/img/az-305.webp" length="0" type="image/webp" />
      <category>certification</category>
      <category>azure</category>
      <category>AI summarised</category>
    </item>
    <item>
      <title>AZ-305 Design Migrations</title>
      <link>https://andreibodea.com/2025-05-05-az-305-design-migrations</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-05-05-az-305-design-migrations</guid>
      <pubDate>Mon, 05 May 2025 14:14:00 GMT</pubDate>
      <description>AI summarised</description>
      <enclosure url="https://andreibodea.com/img/az-305.webp" length="0" type="image/webp" />
      <category>certification</category>
      <category>azure</category>
      <category>AI summarised</category>
    </item>
    <item>
      <title>AZ-305 Compute solutions</title>
      <link>https://andreibodea.com/2025-04-30-az-305-compute-solutions</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-04-30-az-305-compute-solutions</guid>
      <pubDate>Wed, 30 Apr 2025 14:14:00 GMT</pubDate>
      <description>AI summarised</description>
      <enclosure url="https://andreibodea.com/img/az-305.webp" length="0" type="image/webp" />
      <category>certification</category>
      <category>azure</category>
      <category>AI summarised</category>
    </item>
    <item>
      <title>AZ-305 Business Continuity solutions</title>
      <link>https://andreibodea.com/2025-04-29-az-305-business-continuity</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-04-29-az-305-business-continuity</guid>
      <pubDate>Tue, 29 Apr 2025 14:14:00 GMT</pubDate>
      <description>AI summarised</description>
      <enclosure url="https://andreibodea.com/img/az-305.webp" length="0" type="image/webp" />
      <category>certification</category>
      <category>azure</category>
      <category>AI summarised</category>
    </item>
    <item>
      <title>AZ-305 Data Storage solutions</title>
      <link>https://andreibodea.com/2025-04-28-az-305-data</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-04-28-az-305-data</guid>
      <pubDate>Mon, 28 Apr 2025 14:14:00 GMT</pubDate>
      <description>AI summarised</description>
      <enclosure url="https://andreibodea.com/img/az-305.webp" length="0" type="image/webp" />
      <category>certification</category>
      <category>azure</category>
      <category>AI summarised</category>
    </item>
    <item>
      <title>AZ-305 Governance solutions</title>
      <link>https://andreibodea.com/2025-04-27-az-305-governance</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-04-27-az-305-governance</guid>
      <pubDate>Sun, 27 Apr 2025 14:14:00 GMT</pubDate>
      <description>AI summarised</description>
      <enclosure url="https://andreibodea.com/img/az-305.webp" length="0" type="image/webp" />
      <category>certification</category>
      <category>azure</category>
      <category>AI summarised</category>
    </item>
    <item>
      <title>AZ-305 Authentication and Authorization solutions</title>
      <link>https://andreibodea.com/2025-04-26-az-305-authz-authn</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-04-26-az-305-authz-authn</guid>
      <pubDate>Sat, 26 Apr 2025 14:14:00 GMT</pubDate>
      <description>AI summarised</description>
      <enclosure url="https://andreibodea.com/img/az-305.webp" length="0" type="image/webp" />
      <category>certification</category>
      <category>azure</category>
      <category>AI summarised</category>
    </item>
    <item>
      <title>AZ-305 Logging, log routing, and monitoring solutions</title>
      <link>https://andreibodea.com/2025-04-26-az-305-logging</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-04-26-az-305-logging</guid>
      <pubDate>Fri, 25 Apr 2025 14:14:00 GMT</pubDate>
      <description>AI summarised</description>
      <enclosure url="https://andreibodea.com/img/az-305.webp" length="0" type="image/webp" />
      <category>certification</category>
      <category>azure</category>
      <category>AI summarised</category>
    </item>
    <item>
      <title>AZ-305 Azure Solutions Architect Expert learning pathways (part 4)</title>
      <link>https://andreibodea.com/2025-04-15-reading-for-az-305-part4</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-04-15-reading-for-az-305-part4</guid>
      <pubDate>Thu, 24 Apr 2025 14:14:00 GMT</pubDate>
      <description>Cloud Adoption Framework for Azure (CAF)</description>
      <enclosure url="https://andreibodea.com/img/az-305.webp" length="0" type="image/webp" />
      <category>certification</category>
      <category>azure</category>
    </item>
    <item>
      <title>AZ-305 Azure Solutions Architect Expert learning pathways (part 3)</title>
      <link>https://andreibodea.com/2025-04-07-reading-for-az-305-part3</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-04-07-reading-for-az-305-part3</guid>
      <pubDate>Tue, 15 Apr 2025 14:14:00 GMT</pubDate>
      <description>Deep dive into Azure Well-Architected Framework (WAF)</description>
      <enclosure url="https://andreibodea.com/img/az-305.webp" length="0" type="image/webp" />
      <category>certification</category>
      <category>azure</category>
    </item>
    <item>
      <title>AZ-305 Azure Solutions Architect Expert learning pathways (part 2)</title>
      <link>https://andreibodea.com/2025-04-07-reading-for-az-305-part2</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-04-07-reading-for-az-305-part2</guid>
      <pubDate>Mon, 07 Apr 2025 14:14:00 GMT</pubDate>
      <description>Design infrastructure solutions</description>
      <enclosure url="https://andreibodea.com/img/az-305.webp" length="0" type="image/webp" />
      <category>certification</category>
      <category>azure</category>
    </item>
    <item>
      <title>AZ-305 Azure Solutions Architect Expert learning pathways (part 1)</title>
      <link>https://andreibodea.com/2025-03-12-reading-for-az-305</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-03-12-reading-for-az-305</guid>
      <pubDate>Sat, 29 Mar 2025 14:14:00 GMT</pubDate>
      <description>Identity, Monitoring solutions, Governance, Continuity, Storage</description>
      <enclosure url="https://andreibodea.com/img/az-305.webp" length="0" type="image/webp" />
      <category>certification</category>
      <category>azure</category>
    </item>
    <item>
      <title>C# Retry Mechanisms for Handling Transient Failures in Cloud Apps</title>
      <link>https://andreibodea.com/2025-03-25-retry-patterns-csharp</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-03-25-retry-patterns-csharp</guid>
      <pubDate>Tue, 25 Mar 2025 14:14:00 GMT</pubDate>
      <description>AI summarised</description>
      <enclosure url="https://andreibodea.com/img/retry_csharp.webp" length="0" type="image/webp" />
      <category>C#</category>
      <category>AI summarised</category>
    </item>
    <item>
      <title>Concurrency control using HTTP headers</title>
      <link>https://andreibodea.com/2025-03-16-http-cc</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-03-16-http-cc</guid>
      <pubDate>Sun, 16 Mar 2025 14:14:00 GMT</pubDate>
      <description>C# 13 / dotnet 9 implementation of concurrency control using HTTP headers</description>
      <enclosure url="https://andreibodea.com/img/httpcc_o.jpg" length="0" type="image/jpeg" />
      <category>C#</category>
      <category>HTTP</category>
    </item>
    <item>
      <title>Building &apos;Compiled Thoughts&apos; with nuxt and @nuxt/content</title>
      <link>https://andreibodea.com/2025-03-10-building-my-blog</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-03-10-building-my-blog</guid>
      <pubDate>Mon, 10 Mar 2025 15:24:00 GMT</pubDate>
      <description>Having fun writing a basic blog in 3 days (really!)</description>
      <enclosure url="https://andreibodea.com/img/my-blog.webp" length="0" type="image/webp" />
      <category>nuxt</category>
      <category>vue</category>
      <category>front-end</category>
    </item>
    <item>
      <title>Passing AZ-104 as a software developer</title>
      <link>https://andreibodea.com/2025-03-08-passing-az-104</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-03-08-passing-az-104</guid>
      <pubDate>Sat, 08 Mar 2025 15:24:00 GMT</pubDate>
      <description>Steps I took to understand administration in Azure</description>
      <enclosure url="https://andreibodea.com/img/az-104.webp" length="0" type="image/webp" />
      <category>certification</category>
      <category>azure</category>
    </item>
    <item>
      <title>Creating a static photo gallery using next.js</title>
      <link>https://andreibodea.com/2025-02-20-my-first-post</link>
      <guid isPermaLink="true">https://andreibodea.com/2025-02-20-my-first-post</guid>
      <pubDate>Thu, 20 Feb 2025 15:24:00 GMT</pubDate>
      <description>Why I had to switch from .NET Framework 4.5 to next.js</description>
      <enclosure url="https://andreibodea.com/img/friendly_chat.webp" length="0" type="image/webp" />
      <category>next.js</category>
      <category>react</category>
      <category>front-end</category>
    </item>
  </channel>
</rss>
