<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="https://www.yellowduck.be/pretty-atom-feed-v3.xsl" type="text/xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <link rel="alternate" href="https://www.yellowduck.be"/>
  <link rel="self" href="https://www.yellowduck.be/posts/feed"/>
  <author>
    <name>Pieter Claerhout</name>
    <email>pieter@yellowduck.be</email>
  </author>
  <id>https://www.yellowduck.be/posts/feed</id>
  <title>🐥 YellowDuck.be</title>
  <updated>2026-08-22T13:00:00Z</updated>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link rel="alternate" href="https://www.yellowduck.be/posts/why-elixir-is-the-best-language-for-llms"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;On a significant benchmark, Elixir outperformed all other languages in large language model (LLM) problem-solving capabilities. Despite being a low-resource language compared to Python or JavaScript, Elixir achieved a 97.5% success rate in solving problems, vastly ahead of second-place Kotlin at 89.5%. The article highlights the strengths of Elixir, including immutability, verified documentation, and a stable ecosystem, all contributing to its efficacy in LLM contexts. The author points out that these features allow models to effectively reason about code, making Elixir an excellent choice for AI-assisted programming.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://codemyspec.com/blog/why-elixir-is-the-best-language-for-llms&quot;&gt;Continue reading on &lt;strong&gt;codemyspec.com&lt;/strong&gt;&lt;/a&gt;&lt;p&gt;&lt;a href=&quot;https://www.yellowduck.be/tags/reading-list&quot;&gt;#reading-list&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/development&quot;&gt;#development&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/ai&quot;&gt;#ai&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/elixir&quot;&gt;#elixir&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-08-22T13:00:00Z</published>
    <id>https://www.yellowduck.be/posts/why-elixir-is-the-best-language-for-llms</id>
    <title>🔗 Why Elixir is the best language for LLMs</title>
    <updated>2026-08-22T13:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link rel="alternate" href="https://www.yellowduck.be/posts/the-go-architecture-behind-intelligence-api"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;Can a Go-powered authentication layer achieve sub-50ms P99 latency? Autheona claims it can, using advanced concurrency techniques and local SQLite caching. The article dives into their architecture, which eliminates bottlenecks by executing multiple validation checks concurrently via Goroutines, avoiding traditional I/O delays. By replacing external database calls with a custom in-memory policy management tree and deploying asynchronous PostgreSQL batching, they demonstrated speed and scalability, even under heavy load. They also explained the economic implications of latency for businesses, revealing potential revenue losses due to increased authentication processing times. The detailed breakdown of their system architecture, including the use of AWS Graviton instances and embedded SQLite, highlights how efficiency and smart design can drastically improve user experience and conversion rates. This is a must-read for developers keen on optimizing backend performance for high-concurrency applications.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://autheona.com/developer-blog/architecture-behind-intelligence-api/&quot;&gt;Continue reading on &lt;strong&gt;autheona.com&lt;/strong&gt;&lt;/a&gt;&lt;p&gt;&lt;a href=&quot;https://www.yellowduck.be/tags/reading-list&quot;&gt;#reading-list&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/golang&quot;&gt;#golang&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/development&quot;&gt;#development&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/database&quot;&gt;#database&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/devops&quot;&gt;#devops&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/auth&quot;&gt;#auth&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-08-22T08:00:00Z</published>
    <id>https://www.yellowduck.be/posts/the-go-architecture-behind-intelligence-api</id>
    <title>🔗 The Go architecture behind intelligence API</title>
    <updated>2026-08-22T08:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link rel="alternate" href="https://www.yellowduck.be/posts/first-party-image-processing-in-laravel-13-20"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;Laravel 13.20 introduces first-party image processing through an immutable, driver-based API for transforming images. This new functionality allows developers to handle uploads, storage, URLs, and raw bytes directly in the framework without relying on third-party libraries. The &lt;code&gt;Image&lt;/code&gt; facade provides methods for various transformations like resizing, cropping, and format conversion while ensuring that each transformation returns a new instance. Additionally, enhancements such as a &lt;code&gt;#[WithoutMiddleware]&lt;/code&gt; controller attribute and separate Redis prefixes for sessions make for a more efficient development experience. This release builds upon the existing Eloquent and queue functionality with features designed to streamline image handling and improve application organization.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://laravel-news.com/laravel-13-20-0&quot;&gt;Continue reading on &lt;strong&gt;laravel-news.com&lt;/strong&gt;&lt;/a&gt;&lt;p&gt;&lt;a href=&quot;https://www.yellowduck.be/tags/reading-list&quot;&gt;#reading-list&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/development&quot;&gt;#development&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/laravel&quot;&gt;#laravel&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/php&quot;&gt;#php&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-08-21T17:00:00Z</published>
    <id>https://www.yellowduck.be/posts/first-party-image-processing-in-laravel-13-20</id>
    <title>🔗 First-party image processing in Laravel 13.20</title>
    <updated>2026-08-21T17:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link rel="alternate" href="https://www.yellowduck.be/posts/work-loudly"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;Working remotely strips away visibility, making it harder to showcase contributions effectively. &quot;Invisible work is, for every practical purpose—promotion, credit, getting pulled into the interesting projects—work that didn’t happen,&quot; notes Ben Balter. He emphasizes the importance of working loudly, making one&apos;s work visible in real time rather than in a post-project summary. By sharing issues, PRs, and progress updates publicly, individuals invite collaboration and prevent miscommunication that can occur when decisions are made behind closed doors. Visible work leads to better recognition and helps others contribute effectively, breaking the cycle of solitary problem-solving. Those who navigate this landscape successfully can transform their careers and their teams by ensuring their efforts are noted and valued as they happen, rather than waiting for a performance review.  This article advocates for proactively communicating work to build a stronger professional presence and collaborative environment.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://ben.balter.com/2026/07/14/work-loudly/&quot;&gt;Continue reading on &lt;strong&gt;ben.balter.com&lt;/strong&gt;&lt;/a&gt;&lt;p&gt;&lt;a href=&quot;https://www.yellowduck.be/tags/reading-list&quot;&gt;#reading-list&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/development&quot;&gt;#development&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/best-practice&quot;&gt;#best-practice&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-08-21T13:00:00Z</published>
    <id>https://www.yellowduck.be/posts/work-loudly</id>
    <title>🔗 Work loudly</title>
    <updated>2026-08-21T13:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link rel="alternate" href="https://www.yellowduck.be/posts/the-git-history-command-deserves-more-attention"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;The &lt;code&gt;git history&lt;/code&gt; command is an experimental feature that simplifies managing changes in Git. It includes three subcommands: &lt;code&gt;fixup&lt;/code&gt;, &lt;code&gt;reword&lt;/code&gt;, and &lt;code&gt;split&lt;/code&gt;. The &lt;code&gt;fixup&lt;/code&gt; command allows users to correct an old commit while automatically updating all branches that contain that commit. &lt;code&gt;reword&lt;/code&gt; lets users edit an old commit message and intelligently rebases dependent changes. Lastly, &lt;code&gt;split&lt;/code&gt; enables interactive selection of changes from a commit, dividing it into smaller commits. These features enhance user experience without switching to alternatives like &lt;code&gt;jj&lt;/code&gt; and are integrated into the core Git distribution. Despite having limitations, &lt;code&gt;git history&lt;/code&gt; offers significant improvements for managing a Git workflow and holds promise for future enhancements as user needs evolve.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://lalitm.com/post/git-history/&quot;&gt;Continue reading on &lt;strong&gt;lalitm.com&lt;/strong&gt;&lt;/a&gt;&lt;p&gt;&lt;a href=&quot;https://www.yellowduck.be/tags/reading-list&quot;&gt;#reading-list&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/development&quot;&gt;#development&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/best-practice&quot;&gt;#best-practice&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/git&quot;&gt;#git&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-08-21T08:00:00Z</published>
    <id>https://www.yellowduck.be/posts/the-git-history-command-deserves-more-attention</id>
    <title>🔗 The git history command deserves more attention</title>
    <updated>2026-08-21T08:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link rel="alternate" href="https://www.yellowduck.be/posts/learning-elixir-error-handling-with-try-rescue-catch-after"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;Error handling in Elixir can be approached with two toolkits for different scenarios. &lt;code&gt;try&lt;/code&gt;, &lt;code&gt;catch&lt;/code&gt;, &lt;code&gt;rescue&lt;/code&gt;, and &lt;code&gt;after&lt;/code&gt; serve as a safety net for unexpected failures, while tagged tuples like &lt;code&gt;{:ok, value}&lt;/code&gt; and &lt;code&gt;{:error, reason}&lt;/code&gt; are for predictable issues. Elixir 1.20.1 introduces constructs that allow developers to handle exceptions like &lt;code&gt;RuntimeError&lt;/code&gt; and &lt;code&gt;ArgumentError&lt;/code&gt;. Understanding when to use these tools is essential since overusing them contradicts Elixir&apos;s philosophy of &quot;let it crash.&quot; This article covers practical guidelines for implementing error handling effectively, demonstrating how to rescue exceptions, define custom error types, and clean up after errors gracefully.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://dev.to/abreujp/learning-elixir-error-handling-with-tryrescuecatchafter-55ij&quot;&gt;Continue reading on &lt;strong&gt;dev.to&lt;/strong&gt;&lt;/a&gt;&lt;p&gt;&lt;a href=&quot;https://www.yellowduck.be/tags/reading-list&quot;&gt;#reading-list&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/development&quot;&gt;#development&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/best-practice&quot;&gt;#best-practice&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/elixir&quot;&gt;#elixir&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-08-20T13:00:00Z</published>
    <id>https://www.yellowduck.be/posts/learning-elixir-error-handling-with-try-rescue-catch-after</id>
    <title>🔗 Learning Elixir: Error Handling with try/rescue/catch/after</title>
    <updated>2026-08-20T13:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link rel="alternate" href="https://www.yellowduck.be/posts/film-final-frontier-patagonia"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;100 riders journeyed through 3,000 kilometers in 24 days, traversing one of the world&apos;s last great wildernesses. The film &lt;em&gt;SouthBound&lt;/em&gt; captures the spirit of the inaugural edition of Final Frontier Patagonia, featuring cyclists who faced unimaginable physical and mental challenges as they made their way to Ushuaia. It’s more than just a biking adventure; it’s a powerful tale of endurance, friendship, and the unyielding human spirit amid Patagonia&apos;s breathtaking landscapes. Each rider&apos;s story reflects not just the road challenges, but the internal battles we all face in pursuit of our dreams.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://www.gravelstoke.com/gravel-cycling-gear-blog/final-frontier-patagonia-film&quot;&gt;Continue reading on &lt;strong&gt;www.gravelstoke.com&lt;/strong&gt;&lt;/a&gt;&lt;p&gt;&lt;a href=&quot;https://www.yellowduck.be/tags/reading-list&quot;&gt;#reading-list&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/sports&quot;&gt;#sports&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-08-20T08:00:00Z</published>
    <id>https://www.yellowduck.be/posts/film-final-frontier-patagonia</id>
    <title>🔗 Film: Final Frontier Patagonia</title>
    <updated>2026-08-20T08:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link rel="alternate" href="https://www.yellowduck.be/posts/learning-a-few-things-about-running-sqlite"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;SQLite may seem simple, but it&apos;s a full-fledged database that can be complex. After using it on a Django project, the author highlights several lessons learned. Key takeaways include the importance of running &lt;code&gt;ANALYZE&lt;/code&gt; to significantly improve query speed, especially for larger datasets. Initially surprised by slow queries, the author found that this one command transformed a 5-second wait into a mere 0.05 seconds. The write locks became problematic during clean-up tasks, prompting the use of smaller batches. Additionally, the author shares backup strategies using &lt;code&gt;restic&lt;/code&gt; and &lt;code&gt;litestream&lt;/code&gt;, revealing the challenges of managing backups effectively. Despite its simplicity, ongoing learning with SQLite proves essential for better database management.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://jvns.ca/blog/2026/07/17/learning-about-running-sqlite/&quot;&gt;Continue reading on &lt;strong&gt;jvns.ca&lt;/strong&gt;&lt;/a&gt;&lt;p&gt;&lt;a href=&quot;https://www.yellowduck.be/tags/reading-list&quot;&gt;#reading-list&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/database&quot;&gt;#database&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/best-practice&quot;&gt;#best-practice&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/django&quot;&gt;#django&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/sqlite&quot;&gt;#sqlite&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-08-19T17:00:00Z</published>
    <id>https://www.yellowduck.be/posts/learning-a-few-things-about-running-sqlite</id>
    <title>🔗 Learning a few things about running SQLite</title>
    <updated>2026-08-19T17:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link rel="alternate" href="https://www.yellowduck.be/posts/git-rebase-i-is-not-that-scary"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;The fear of &lt;code&gt;git rebase -i&lt;/code&gt; often grips junior developers, but it’s time to demystify its true nature. When executing &lt;code&gt;git rebase -i HEAD~4&lt;/code&gt;, nothing destructive happens immediately; it only opens a text file where you can manage commits. This process is essentially a plan to revise commit history, and everything can be undone with &lt;code&gt;git rebase --abort&lt;/code&gt; if needed. The article clarifies how rebasing creates new commits while preserving the old ones, accessible via &lt;code&gt;git reflog&lt;/code&gt;. Conflicts during a rebase are unavoidable but are often easier to resolve since they involve only one commit at a time. Developers are encouraged to explore interactive rebasing freely, particularly during their own feature branch development, to maintain a clean project history. Understanding this tool can significantly enhance a developer&apos;s confidence and efficacy with Git, making the workflow smoother and more efficient.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://cachebag.sh/journal/interactive-rebasing/&quot;&gt;Continue reading on &lt;strong&gt;cachebag.sh&lt;/strong&gt;&lt;/a&gt;&lt;p&gt;&lt;a href=&quot;https://www.yellowduck.be/tags/reading-list&quot;&gt;#reading-list&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/development&quot;&gt;#development&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/best-practice&quot;&gt;#best-practice&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/git&quot;&gt;#git&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-08-19T13:00:00Z</published>
    <id>https://www.yellowduck.be/posts/git-rebase-i-is-not-that-scary</id>
    <title>🔗 Git rebase -i is not that scary</title>
    <updated>2026-08-19T13:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link rel="alternate" href="https://www.yellowduck.be/posts/the-integration-loop"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;Handing everyone an LLM subscription gives them a model. A shared, self-hosted agent provides a configured environment with company context, connected tools, and clear boundaries. The article argues why companies should own this layer rather than rent it, outlining practical steps to start small. With implementation costs decreasing, businesses now face the challenge of deciding what is worth building. This shift calls for more autonomy and faster iteration, emphasizing that judgment and decision-making are increasingly valuable in the development process.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://madewithlove.com/blog/the-integration-loop/&quot;&gt;Continue reading on &lt;strong&gt;madewithlove.com&lt;/strong&gt;&lt;/a&gt;&lt;p&gt;&lt;a href=&quot;https://www.yellowduck.be/tags/reading-list&quot;&gt;#reading-list&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/development&quot;&gt;#development&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/best-practice&quot;&gt;#best-practice&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/ai&quot;&gt;#ai&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-08-19T08:00:00Z</published>
    <id>https://www.yellowduck.be/posts/the-integration-loop</id>
    <title>🔗 The integration loop</title>
    <updated>2026-08-19T08:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link rel="alternate" href="https://www.yellowduck.be/posts/supercharge-your-php-apps-with-go-powered-php-extensions"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;Can PHP really become faster without diving into C? In this article, Alexandria Daubois explores how Go-powered PHP extensions can enhance performance in Laravel and Symfony apps. The talk showcases building a custom PHP extension using FrankenPHP, eliminating the need for C code. Daubois details the creation of an in-memory LRU cache and how to integrate it as a native feature in Laravel through a custom cache driver. Readers can expect a hands-on approach focusing on real code and PHP internals, gaining insight into the flexibility of both frameworks and PHP&apos;s core runtime. This exploration hints at the immense potential for boosting performance in PHP applications without traditional complexities.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://phpconference.nl/session/supercharge-your-php-apps-with-go-powered-php-extensions/&quot;&gt;Continue reading on &lt;strong&gt;phpconference.nl&lt;/strong&gt;&lt;/a&gt;&lt;p&gt;&lt;a href=&quot;https://www.yellowduck.be/tags/reading-list&quot;&gt;#reading-list&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/golang&quot;&gt;#golang&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/development&quot;&gt;#development&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/laravel&quot;&gt;#laravel&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/php&quot;&gt;#php&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-08-18T17:00:00Z</published>
    <id>https://www.yellowduck.be/posts/supercharge-your-php-apps-with-go-powered-php-extensions</id>
    <title>🔗 Supercharge your PHP apps with Go-powered PHP extensions</title>
    <updated>2026-08-18T17:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link rel="alternate" href="https://www.yellowduck.be/posts/go-releases-are-exciting-especially-1-27"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;Go 1.27 introduces some thrilling changes and enhancements for developers. It offers improved performance and new features that make developing applications even more efficient. One notable inclusion is the capability to handle generics more effectively, streamlining code and reducing the boilerplate necessary for complex types. The focus on performance optimizations ensures that applications run faster, enhancing user experiences. As Go continues to evolve, the latest release proves to be a useful upgrade that developers will appreciate.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://kerkour.com/golang-release-exciting&quot;&gt;Continue reading on &lt;strong&gt;kerkour.com&lt;/strong&gt;&lt;/a&gt;&lt;p&gt;&lt;a href=&quot;https://www.yellowduck.be/tags/reading-list&quot;&gt;#reading-list&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/golang&quot;&gt;#golang&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/announcement&quot;&gt;#announcement&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-08-18T13:00:00Z</published>
    <id>https://www.yellowduck.be/posts/go-releases-are-exciting-especially-1-27</id>
    <title>🔗 Go releases are exciting (especially 1.27)</title>
    <updated>2026-08-18T13:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link rel="alternate" href="https://www.yellowduck.be/posts/laravel-facade-pattern-explained-build-your-own-custom-facade"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;The article dives deep into how Laravel&apos;s facade pattern operates and its significance in the framework’s architecture. The commonly used facades, which may appear as static method calls, actually resolve to real objects in Laravel’s Service Container. This structure not only simplifies code readability but also enhances the framework&apos;s testability and flexibility. Readers learn about facades&apos; inner workings, why they&apos;re not static, and when they&apos;re the right choice. The piece culminates in a practical guide on creating a custom facade, helping developers grasp both the theoretical and practical aspects of facades in Laravel. By the end, developers are equipped with the knowledge to use and implement facades efficiently, ultimately fostering a better understanding of Laravel&apos;s dependency injection and service management systems.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://laraveldailytips.com/laravel-facade-pattern-explained-build-your-own-custom-facade&quot;&gt;Continue reading on &lt;strong&gt;laraveldailytips.com&lt;/strong&gt;&lt;/a&gt;&lt;p&gt;&lt;a href=&quot;https://www.yellowduck.be/tags/reading-list&quot;&gt;#reading-list&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/development&quot;&gt;#development&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/pattern&quot;&gt;#pattern&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/laravel&quot;&gt;#laravel&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-08-18T08:00:00Z</published>
    <id>https://www.yellowduck.be/posts/laravel-facade-pattern-explained-build-your-own-custom-facade</id>
    <title>🔗 Laravel facade pattern explained: build your own custom facade</title>
    <updated>2026-08-18T08:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link rel="alternate" href="https://www.yellowduck.be/posts/my-notes-on-three-years-of-coding-with-ai"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;How has AI shaped the coding landscape over three years? Mike Zornek shares his journey from casual use to heavy reliance on tools like Copilot and Claude Code. Starting with a light-hearted rap song generated in 2023, Zornek transitioned to utilizing AI for actual development tasks while grappling with the ethical implications of AI-generated pull requests. Throughout this time, he emphasized the importance of human oversight and the need for clear communication about AI&apos;s role in the coding process. His experiences reveal both the challenges and opportunities presented by AI in software engineering, encouraging engineers not just to adapt but to actively engage with these emerging technologies as they evolve.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://mikezornek.com/posts/2026/7/three-years-coding-with-ai/&quot;&gt;Continue reading on &lt;strong&gt;mikezornek.com&lt;/strong&gt;&lt;/a&gt;&lt;p&gt;&lt;a href=&quot;https://www.yellowduck.be/tags/reading-list&quot;&gt;#reading-list&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/development&quot;&gt;#development&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/best-practice&quot;&gt;#best-practice&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/ai&quot;&gt;#ai&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-08-17T13:00:00Z</published>
    <id>https://www.yellowduck.be/posts/my-notes-on-three-years-of-coding-with-ai</id>
    <title>🔗 My notes on three years of coding with AI</title>
    <updated>2026-08-17T13:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link rel="alternate" href="https://www.yellowduck.be/posts/1password-for-claude-give-claude-access-without-giving-up-your-credentials"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;AI agents are evolving into powerful tools that can perform tasks on behalf of users, but the challenge of securely accessing accounts remains. The article introduces &lt;code&gt;1Password for Claude&lt;/code&gt;, which allows Claude to complete browser tasks that require logins without exposing user credentials. Built on a zero-exposure architecture, it ensures that credentials are not stored in the model, and every authentication request requires user consent. This innovative approach aligns with a new security model where users can grant AI agents the access they need for specific tasks while keeping credentials invisible to the agent.&lt;/p&gt;
&lt;p&gt;Moreover, the Agentic Mode feature enhances control when AI agents operate within browsers, ensuring that only approved logins are accessible. This approach safeguards against unauthorized access and maintains user trust. As AI capabilities grow, adopting governed access strategies like those offered by 1Password is crucial for maintaining security in a collaborative digital landscape.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://1password.com/blog/1password-for-claude&quot;&gt;Continue reading on &lt;strong&gt;1password.com&lt;/strong&gt;&lt;/a&gt;&lt;p&gt;&lt;a href=&quot;https://www.yellowduck.be/tags/reading-list&quot;&gt;#reading-list&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/best-practice&quot;&gt;#best-practice&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/ai&quot;&gt;#ai&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/auth&quot;&gt;#auth&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-08-17T08:00:00Z</published>
    <id>https://www.yellowduck.be/posts/1password-for-claude-give-claude-access-without-giving-up-your-credentials</id>
    <title>🔗 1Password for Claude: give Claude access without giving up your credentials</title>
    <updated>2026-08-17T08:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link rel="alternate" href="https://www.yellowduck.be/posts/detecting-full-table-scans-with-sqlite"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;What if you could detect full table scans in SQLite effortlessly? The article dives into how SQLite collects information about prepared statements, allowing developers to figure out if a query caused a full table scan after it was executed. This could have been beneficial for lobste.rs during a recent performance issue. With practical code examples, the author shows how to create a table, insert records, and utilize the statement statistics to check for full scans. By adding indices, the performance improves instantly, as demonstrated with another query. There’s also a thought-provoking suggestion to integrate this functionality into Rails, potentially enhancing the debugging process in development environments.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://tenderlovemaking.com/2026/07/15/detecting-full-table-scans-with-sqlite/&quot;&gt;Continue reading on &lt;strong&gt;tenderlovemaking.com&lt;/strong&gt;&lt;/a&gt;&lt;p&gt;&lt;a href=&quot;https://www.yellowduck.be/tags/reading-list&quot;&gt;#reading-list&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/development&quot;&gt;#development&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/database&quot;&gt;#database&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/best-practice&quot;&gt;#best-practice&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/sqlite&quot;&gt;#sqlite&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-08-16T17:00:00Z</published>
    <id>https://www.yellowduck.be/posts/detecting-full-table-scans-with-sqlite</id>
    <title>🔗 Detecting full table scans with SQLite</title>
    <updated>2026-08-16T17:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link rel="alternate" href="https://www.yellowduck.be/posts/its-time-to-rethink-how-we-measure-engineering-productivity"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;In an era where AI assists coding, traditional measures of engineering productivity, like lines of code, have become obsolete. Sriramprabhu Rajendran emphasizes that more code doesn’t equate to faster delivery. Instead, the focus should shift to validating software effectively. As teams experience increased coding output with new tools, they often face longer review cycles and hidden complexities. Rajendran advocates for separating tasks into two categories: AI-accelerable tasks with low validation burden and strategically complex tasks that require human validation. This nuanced approach improves estimations and project roadmaps by prioritizing validation time over mere code production. Engineering teams will thrive by recognizing that generating confidence is now the core constraint, and adapting leadership strategies accordingly will be crucial for success in the evolving tech landscape.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://leaddev.com/reporting/its-time-to-rethink-how-we-measure-engineering-productivity&quot;&gt;Continue reading on &lt;strong&gt;leaddev.com&lt;/strong&gt;&lt;/a&gt;&lt;p&gt;&lt;a href=&quot;https://www.yellowduck.be/tags/reading-list&quot;&gt;#reading-list&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/development&quot;&gt;#development&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/best-practice&quot;&gt;#best-practice&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/ai&quot;&gt;#ai&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-08-16T13:00:00Z</published>
    <id>https://www.yellowduck.be/posts/its-time-to-rethink-how-we-measure-engineering-productivity</id>
    <title>🔗 It’s time to rethink how we measure engineering productivity</title>
    <updated>2026-08-16T13:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link rel="alternate" href="https://www.yellowduck.be/posts/from-microservice-to-subprocess"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;What happens when JavaScript isn&apos;t enabled on a site? It can lead to a frustrating experience, preventing proper functionality. This article emphasizes the importance of JavaScript in modern web applications and highlights how reliance on it can shape development and user interaction. In an era where microservices and subprocesses define software architecture, understanding the implications of disabling JavaScript is crucial for developers and users alike.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://kerkour.com/from-microservice-to-subprocess&quot;&gt;Continue reading on &lt;strong&gt;kerkour.com&lt;/strong&gt;&lt;/a&gt;&lt;p&gt;&lt;a href=&quot;https://www.yellowduck.be/tags/reading-list&quot;&gt;#reading-list&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/javascript&quot;&gt;#javascript&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/development&quot;&gt;#development&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/frontend&quot;&gt;#frontend&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-08-16T08:00:00Z</published>
    <id>https://www.yellowduck.be/posts/from-microservice-to-subprocess</id>
    <title>🔗 From microservice to subprocess</title>
    <updated>2026-08-16T08:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link rel="alternate" href="https://www.yellowduck.be/posts/the-anti-mac-user-interface-don-gentner-and-jakob-nielsen"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;What if the design principles behind the Macintosh interface were turned on their head? Don Gentner and Jakob Nielsen outline this provocative scenario in their 1996 article, &quot;The Anti-Mac Interface.&quot; They explore interface alternatives that challenge traditional metaphors, arguing that existing design paradigms may limit innovation. By violating the Macintosh design principles, they introduce ideas that could lead to richer, more flexible interfaces better suited for advanced users and varied applications. This exploration reveals the constraints of familiar interfaces and the potential for a human-computer interaction that is less about metaphors and more about direct user control and shared engagement. It&apos;s a compelling look at how breaking with convention can inspire new paradigms in interface design.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://www.nngroup.com/articles/anti-mac-interface/&quot;&gt;Continue reading on &lt;strong&gt;www.nngroup.com&lt;/strong&gt;&lt;/a&gt;&lt;p&gt;&lt;a href=&quot;https://www.yellowduck.be/tags/reading-list&quot;&gt;#reading-list&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/frontend&quot;&gt;#frontend&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/best-practice&quot;&gt;#best-practice&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-08-15T17:00:00Z</published>
    <id>https://www.yellowduck.be/posts/the-anti-mac-user-interface-don-gentner-and-jakob-nielsen</id>
    <title>🔗 The Anti-Mac User Interface (Don Gentner and Jakob Nielsen)</title>
    <updated>2026-08-15T17:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link rel="alternate" href="https://www.yellowduck.be/posts/sqlite-should-have-rust-style-editions"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;SQLite is known for its simplicity but it faces significant issues due to its poor default settings. For instance, foreign key constraints are ignored by default, which compromises data integrity. This flaw allows an invalid reference to reappear, posing severe risks of data corruption. Additionally, SQLite&apos;s loose data type handling means that incorrect types can be inserted, complicating data validation. The absence of a global pragma for strict tables also leaves it up to developers to remember to apply stricter typing, further increasing the chance of errors.&lt;/p&gt;
&lt;p&gt;Another glaring issue is the SQLITE_BUSY error that can occur when multiple processes try writing simultaneously, which can lead to unexpected software crashes. Performance defaults are also subpar, as SQLite&apos;s Write-Ahead Log (WAL) is disabled by default, despite its benefits in enhancing write speeds. The article proposes that SQLite should adopt editions similar to Rust&apos;s versioning to tackle these persistent problems and make its defaults safer and more efficient.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://mort.coffee/home/sqlite-editions/&quot;&gt;Continue reading on &lt;strong&gt;mort.coffee&lt;/strong&gt;&lt;/a&gt;&lt;p&gt;&lt;a href=&quot;https://www.yellowduck.be/tags/reading-list&quot;&gt;#reading-list&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/rust&quot;&gt;#rust&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/database&quot;&gt;#database&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/best-practice&quot;&gt;#best-practice&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/sqlite&quot;&gt;#sqlite&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-08-15T08:00:00Z</published>
    <id>https://www.yellowduck.be/posts/sqlite-should-have-rust-style-editions</id>
    <title>🔗 SQLite should have (Rust-style) editions</title>
    <updated>2026-08-15T08:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link rel="alternate" href="https://www.yellowduck.be/posts/the-query-that-was-correct-but-broke-everything-else"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;A seemingly correct query can lead to a cascade of unexpected issues in system performance. This article delves into the nuanced relationship between SQL queries and their wider impact on applications. It highlights how even well-structured requests can disrupt workflows, revealing the importance of thorough testing and validation. By examining real-world scenarios, it presents insights on how to mitigate risks, ensuring that developers not only write effective queries but also consider their implications on system architecture. The piece serves as a reminder that in software development, every line of code carries potential consequences, underlining the need for a careful balance between efficiency and stability.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://madewithlove.com/blog/the-query-that-was-correct-but-broke-everything-else/&quot;&gt;Continue reading on &lt;strong&gt;madewithlove.com&lt;/strong&gt;&lt;/a&gt;&lt;p&gt;&lt;a href=&quot;https://www.yellowduck.be/tags/reading-list&quot;&gt;#reading-list&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/database&quot;&gt;#database&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/best-practice&quot;&gt;#best-practice&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/sql&quot;&gt;#sql&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/testing&quot;&gt;#testing&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-08-14T13:00:00Z</published>
    <id>https://www.yellowduck.be/posts/the-query-that-was-correct-but-broke-everything-else</id>
    <title>🔗 The query that was correct but broke everything else</title>
    <updated>2026-08-14T13:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link rel="alternate" href="https://www.yellowduck.be/posts/req-is-all-you-need"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;Why complicate things with libraries that wrap AI providers? The article argues that many libraries mask the simplicity of working with unique APIs, creating unnecessary layers of complexity. Instead, it claims an HTTP client like &lt;code&gt;Req&lt;/code&gt; in Elixir suffices for interfacing with various AI APIs, exemplified through simple code solutions for the Anthropic API.&lt;/p&gt;
&lt;p&gt;It details the ease of creating a lightweight wrapper that maintains a 1:1 mapping with the provider&apos;s API while facilitating features like streaming and request cancellation. By keeping the approach straightforward and focused on specific needs, developers can avoid the pitfalls of unnecessary abstraction, allowing for flexibility and a cleaner codebase. The discussion includes practical examples and emphasizes that for most projects, using specific API documentation directly is more efficient than relying on complex third-party libraries.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://benreinhart.com/blog/req-is-all-you-need/&quot;&gt;Continue reading on &lt;strong&gt;benreinhart.com&lt;/strong&gt;&lt;/a&gt;&lt;p&gt;&lt;a href=&quot;https://www.yellowduck.be/tags/reading-list&quot;&gt;#reading-list&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/http&quot;&gt;#http&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/ai&quot;&gt;#ai&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/elixir&quot;&gt;#elixir&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-08-14T08:00:00Z</published>
    <id>https://www.yellowduck.be/posts/req-is-all-you-need</id>
    <title>🔗 Req is all you need</title>
    <updated>2026-08-14T08:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link rel="alternate" href="https://www.yellowduck.be/posts/using-go-for-mobile-apps"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;Why choose Go Mobile? After a year of development with Go Mobile for Digital Carrot, the author shares key insights from the experience. Go was favored due to its seamless compilation across platforms and a strong library of system features, enabling a customizable app. In this architecture, Go handles all business logic while Flutter is used for the UI. Communication between Flutter and Go is primarily through Protobuf messages, ensuring efficient data handling without the complexities of JSON.&lt;/p&gt;
&lt;p&gt;Both the advantages and challenges of this approach are discussed. On the positive side, there&apos;s seamless integration with the Go backend, making testing straightforward, and a clear separation between UI and business logic. However, performance issues may arise due to message serialization and the app size can be larger than expected. Despite a few communication hurdles between the Go application and Flutter, Go remains a robust choice for mobile applications.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://www.davidsobsessions.com/p/one-year-of-gomobile/&quot;&gt;Continue reading on &lt;strong&gt;www.davidsobsessions.com&lt;/strong&gt;&lt;/a&gt;&lt;p&gt;&lt;a href=&quot;https://www.yellowduck.be/tags/reading-list&quot;&gt;#reading-list&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/golang&quot;&gt;#golang&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/development&quot;&gt;#development&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/android&quot;&gt;#android&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-08-13T17:00:00Z</published>
    <id>https://www.yellowduck.be/posts/using-go-for-mobile-apps</id>
    <title>🔗 Using Go for mobile apps</title>
    <updated>2026-08-13T17:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link rel="alternate" href="https://www.yellowduck.be/posts/job-queues-are-deceptively-tricky"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;Job queues might seem straightforward, but they reveal layers of complexity. The author examines their design, focusing on real-life scenarios such as batch job scheduling and the intricacies of job queue management in systems with high throughput needs. Key insights include the tension between minimizing latency and managing resources effectively. For instance, the article discusses the optimization of background jobs involving git repo packing, weighing the trade-offs between wholesale and incremental repacking. It also dives into job queue semantics, exploring options like &quot;Prefer New&quot; and &quot;Wait&quot; when job overlaps occur, ultimately highlighting the need for careful consideration in designing reliable job scheduling systems. This reflection is grounded in practical experiences and offers valuable lessons for developers and system architects alike.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://typesanitizer.com/blog/job-queues.html&quot;&gt;Continue reading on &lt;strong&gt;typesanitizer.com&lt;/strong&gt;&lt;/a&gt;&lt;p&gt;&lt;a href=&quot;https://www.yellowduck.be/tags/reading-list&quot;&gt;#reading-list&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/development&quot;&gt;#development&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/pattern&quot;&gt;#pattern&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/best-practice&quot;&gt;#best-practice&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/devops&quot;&gt;#devops&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-08-13T13:00:00Z</published>
    <id>https://www.yellowduck.be/posts/job-queues-are-deceptively-tricky</id>
    <title>🔗 Job queues are deceptively tricky</title>
    <updated>2026-08-13T13:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link rel="alternate" href="https://www.yellowduck.be/posts/improving-prettier-performance-with-the-new-cli"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;This article reveals the significant performance enhancements made in the new Prettier CLI, now available in version 3.6.0. After noticing slow performance in larger projects, the Prettier team undertook a collaboration, particularly driven by community feedback. The new CLI boasts a complete rewrite focused on modernisation and efficiency. Key improvements include built-in parallelism, enhanced caching mechanisms, and quicker configuration file resolution. Performance tests showed that the new CLI completed tasks dramatically faster—reducing check times from 29 seconds to just 1.6 seconds. With these updates, Prettier aims to ensure a smoother experience for developers across the board. This is a compelling example of community-driven innovation in open-source tools. Contributors are encouraged to join the discussion and development efforts on Discord.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://e18e.dev/blog/prettier-speed-up&quot;&gt;Continue reading on &lt;strong&gt;e18e.dev&lt;/strong&gt;&lt;/a&gt;&lt;p&gt;&lt;a href=&quot;https://www.yellowduck.be/tags/reading-list&quot;&gt;#reading-list&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/development&quot;&gt;#development&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/frontend&quot;&gt;#frontend&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/tools&quot;&gt;#tools&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/best-practice&quot;&gt;#best-practice&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-08-13T08:00:00Z</published>
    <id>https://www.yellowduck.be/posts/improving-prettier-performance-with-the-new-cli</id>
    <title>🔗 Improving prettier performance with the new prettier cli</title>
    <updated>2026-08-13T08:00:00Z</updated>
  </entry>
</feed>