<?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 href="https://www.yellowduck.be" rel="alternate"/>
  <link href="https://www.yellowduck.be/posts/feed" rel="self"/>
  <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-10-06T17:00:00Z</updated>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link href="https://www.yellowduck.be/posts/running-tasks-in-production-with-elixir-releases-rpc-eval-and-remote" rel="alternate"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;How do you run tasks in a Phoenix app once it&apos;s in production? This article highlights the limitations of Mix in a production environment and introduces alternative commands like &lt;code&gt;rpc&lt;/code&gt;, &lt;code&gt;eval&lt;/code&gt;, and &lt;code&gt;remote&lt;/code&gt; provided by Elixir releases. It details building a recurring task in a deployed app and running it through Potions, emphasizing the need to manage tasks effectively, especially for items like discounting stale inventory. The article walks through the creation of a Mix task to automate price adjustments, then transitions into deploying and managing tasks in a live environment. In doing so, it explains the server structure once deployed and illustrates how to run the necessary commands remotely or via the release management script. With practical examples, this guide is essential for developers looking to enhance their production deployment with Elixir.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://potions.io/blog/running-tasks-in-elixir-releases&quot;&gt;Continue reading on &lt;strong&gt;potions.io&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/elixir&quot;&gt;#elixir&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/phoenix&quot;&gt;#phoenix&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-10-06T17:00:00Z</published>
    <id>https://www.yellowduck.be/posts/running-tasks-in-production-with-elixir-releases-rpc-eval-and-remote</id>
    <title>🔗 Running tasks in production with Elixir releases: RPC, eval, and remote</title>
    <updated>2026-10-06T17:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link href="https://www.yellowduck.be/posts/engineers-grieve-a-job-that-no-longer-exists" rel="alternate"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;Something is happening in engineering teams that doesn’t show up in sprint velocity or deployment frequency; it shows up in resignation letters. The best engineers are burning out not just because of workload, but due to a deeper identity crisis as they are transitioning from builders to overseers. AI-coding assistants are fundamentally transforming their roles, leaving them feeling like they are losing touch with their passion for actual coding. A study from Oregon State University highlights how AI adoption intensifies job demands, increasing burnout among engineers who once thrived on problem-solving. This article provides insights into these challenges and emphasizes the need for leaders to engage their teams in discussions about these evolving roles.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://leaddev.com/career-development/engineers-grieve-a-job-that-no-longer-exists&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-10-06T13:00:00Z</published>
    <id>https://www.yellowduck.be/posts/engineers-grieve-a-job-that-no-longer-exists</id>
    <title>🔗 Engineers grieve a job that no longer exists</title>
    <updated>2026-10-06T13:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link href="https://www.yellowduck.be/posts/speeding-up-elixir-test-suites" rel="alternate"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;Last week, a developer optimized their Elixir/Phoenix test suite, reducing runtime from 313 seconds to 64 seconds. Key improvements included making tests async, which dramatically increased concurrency. Previously, 134 of 940 test files were running asynchronously, harming performance. By flipping to ~830 async files, the process spent less time aggregating results and more time executing tests in parallel.&lt;/p&gt;
&lt;p&gt;They also eliminated redundant work by moving pre-seeded database rows to the committed test database, which avoided unnecessary setup during each test and reduced test time significantly. Other optimizations included stubbing external API calls to prevent slowdowns, managing process-global state for safer async execution, and ensuring proper pool size configurations for concurrent database access. The article emphasizes measuring performance before and after changes and treating flaky tests as serious bugs that need fixing.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://zarar.dev/speeding-up-elixir-test-suites/&quot;&gt;Continue reading on &lt;strong&gt;zarar.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/database&quot;&gt;#database&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/elixir&quot;&gt;#elixir&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/phoenix&quot;&gt;#phoenix&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-10-06T08:00:00Z</published>
    <id>https://www.yellowduck.be/posts/speeding-up-elixir-test-suites</id>
    <title>🔗 Speeding up Elixir test suites</title>
    <updated>2026-10-06T08:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link href="https://www.yellowduck.be/posts/use-postgres-as-a-simple-task-queue-for-django" rel="alternate"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;Using Postgres as a task queue for Django offers simplicity and reliability. In a compelling case, a startup named Nomio adopted Postgres over traditional options like Celery and Redis due to its straightforward implementation and decreased likelihood of task loss. The article outlines how to set up Postgres as a task queue through Django in four easy steps: setting up Django, connecting Postgres, running the worker, and managing tasks. It highlights the critical features like easy monitoring through the Django admin and the built-in reliability of Postgres. Despite being slower than Redis, many find it adequate for their needs. For those wondering about alternatives, SQLite can also be used instead of Postgres. This user-friendly guide provides practical code examples to help developers implement their own task queues quickly.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://tomdekan.com/articles/postgres-queue&quot;&gt;Continue reading on &lt;strong&gt;tomdekan.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/django&quot;&gt;#django&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/postgresql&quot;&gt;#postgresql&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-10-05T17:00:00Z</published>
    <id>https://www.yellowduck.be/posts/use-postgres-as-a-simple-task-queue-for-django</id>
    <title>🔗 Use Postgres as a simple task queue for Django 🐘</title>
    <updated>2026-10-05T17:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link href="https://www.yellowduck.be/posts/create-a-django-and-react-app-with-auto-generated-django-types" rel="alternate"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;Building a type-safe application is crucial, and this article presents an effective solution. By integrating Django with React using type-safety, changes in Django models automatically propagate to TypeScript components, eliminating runtime errors due to discrepancies between frontend and backend. The setup includes Django 5, Django Ninja for the backend, and React with TypeScript for the frontend. The article details the entire process from setting up your project environment to creating models, generating schemas, building type-safe API views, and implementing a React frontend. You&apos;ll learn to create a fully functional application with seamless type safety, enhanced code quality checks, and even testing configurations. This approach ensures robust development with compile-time guarantees, making refactoring easier as model changes are consistently tracked across both back and front ends.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://tomdekan.com/articles/typed-django-react&quot;&gt;Continue reading on &lt;strong&gt;tomdekan.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/typescript&quot;&gt;#typescript&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/django&quot;&gt;#django&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-10-05T13:00:00Z</published>
    <id>https://www.yellowduck.be/posts/create-a-django-and-react-app-with-auto-generated-django-types</id>
    <title>🔗 Create a Django and React app with auto-generated Django types</title>
    <updated>2026-10-05T13:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link href="https://www.yellowduck.be/posts/postgres-as-queue" rel="alternate"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;Using Postgres as a queue can simplify architecture and reduce complexity. The article shares insights from a team that effectively implemented this strategy to minimize infrastructure issues and avoid the overhead of elaborate message brokers. By polling and processing tasks directly in Postgres, the team demonstrated that added database load is often minimal, with task handling times only slightly increasing. They provided a clear example from the energy sector, illustrating how single-row updates can efficiently manage task states. This approach negates many common pain points found in multi-container setups and accidental complexity in SNS/PubSub architectures. The implementation also allows for easy adjustments, such as retries and batch processing, making it a flexible option for many developers. Overall, the article presents a persuasive argument for reconsidering traditional queuing methods in favor of leveraging Postgres directly.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://leontrolski.github.io/postgres-as-queue.html&quot;&gt;Continue reading on &lt;strong&gt;leontrolski.github.io&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/postgresql&quot;&gt;#postgresql&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-10-05T08:00:00Z</published>
    <id>https://www.yellowduck.be/posts/postgres-as-queue</id>
    <title>🔗 Postgres as queue</title>
    <updated>2026-10-05T08:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link href="https://www.yellowduck.be/posts/the-simplest-way-to-add-tailwind-css-to-django" rel="alternate"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;What does it mean to add Tailwind CSS to a Django project? This article by Tom Dekan provides a straightforward guide on integrating Tailwind CSS into Django templates using the Tailwind CSS Standalone CLI. It emphasizes the importance of writing Tailwind code, which is then converted into standard CSS for production environments.&lt;/p&gt;
&lt;p&gt;Dekan covers essentials, from installing Django to creating templates and setting up a Tailwind CSS watcher. He advises against using a CDN for live projects, citing its limitations. The guide walks readers through configuring the setup, coding necessary views, and managing styles efficiently. This resource is valuable for developers looking to modernize their Django applications with Tailwind CSS, leveraging its utility-first approach for a responsive design.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://tomdekan.com/articles/tailwind-with-django&quot;&gt;Continue reading on &lt;strong&gt;tomdekan.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/css&quot;&gt;#css&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/django&quot;&gt;#django&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-10-04T17:00:00Z</published>
    <id>https://www.yellowduck.be/posts/the-simplest-way-to-add-tailwind-css-to-django</id>
    <title>🔗 The simplest way to add Tailwind CSS to Django 💨</title>
    <updated>2026-10-04T17:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link href="https://www.yellowduck.be/posts/how-to-secure-a-linux-server-an-evolving-how-to-guide-for-securing-a-linux-server" rel="alternate"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;An evolving must-read guide for anyone looking to secure their Linux server. With over 31,000 stars on GitHub, this resource covers essential hardening techniques, from &lt;code&gt;linux-kernel-sysctl-hardening&lt;/code&gt; to configuring &lt;code&gt;nginx&lt;/code&gt;. The guide is open-source and continually updated, making it suitable for both novices and seasoned sysadmins. Each section is concise and actionable, ensuring readers can implement security measures swiftly. It’s an essential toolkit for securing a Linux environment effectively.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://github.com/imthenachoman/How-To-Secure-A-Linux-Server&quot;&gt;Continue reading on &lt;strong&gt;github.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/linux&quot;&gt;#linux&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/sysadmin&quot;&gt;#sysadmin&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-10-04T13:00:00Z</published>
    <id>https://www.yellowduck.be/posts/how-to-secure-a-linux-server-an-evolving-how-to-guide-for-securing-a-linux-server</id>
    <title>🔗 How to secure a Linux server: An evolving how-to guide for securing a Linux server</title>
    <updated>2026-10-04T13:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link href="https://www.yellowduck.be/posts/cluster-singleton-pattern" rel="alternate"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;The challenge of safely running a single instance of a process in a distributed Elixir cluster can lead to frustrating failures. In her latest article, Johanna Larsson shares insights into the cluster singleton pattern and how to manage globally unique processes using &lt;code&gt;GenServer&lt;/code&gt; and the &lt;code&gt;:global&lt;/code&gt; name. She recounts experiences from her startup days, involving Kubernetes rolling deployments, where nodes inadvertently caused each other to shut down due to a misconfigured Swoosh email adapter. As a solution, she introduces a &lt;code&gt;SingletonManager&lt;/code&gt; pattern that prevents cascading failures by managing process restarts without global linking. This article is a must-read for Elixir developers navigating cluster complexities.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://jola.dev/posts/cluster-singleton-pattern&quot;&gt;Continue reading on &lt;strong&gt;jola.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/pattern&quot;&gt;#pattern&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/elixir&quot;&gt;#elixir&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/kubernetes&quot;&gt;#kubernetes&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-10-04T08:00:00Z</published>
    <id>https://www.yellowduck.be/posts/cluster-singleton-pattern</id>
    <title>🔗 Cluster singleton pattern</title>
    <updated>2026-10-04T08:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link href="https://www.yellowduck.be/posts/the-dangers-of-the-single-global-process" rel="alternate"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;The Single Global Process (SGP) pattern, although seemingly elegant, introduces serious issues in distributed systems. Highlighted by the author, such as in the context of building Elixir applications, using SGP can lead to data integrity problems when scaling beyond a single node. The reliance on a long-running process to manage state can result in duplicate counters and inconsistent data, especially during network partitions or &quot;netsplits.&quot; The article delves into the shortcomings of SGP, offering insights on its pitfalls and discussing potential partial solutions like Compare and Swap (CAS) operations. For anyone involved in Elixir or Erlang systems, understanding these challenges is crucial to designing reliable applications that can scale effectively. The emphasis is on the necessity of recognizing the fragile nature of SGP in favor of more robust distributed solutions.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://keathley.io/blog/sgp.html&quot;&gt;Continue reading on &lt;strong&gt;keathley.io&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/elixir&quot;&gt;#elixir&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-10-03T17:00:00Z</published>
    <id>https://www.yellowduck.be/posts/the-dangers-of-the-single-global-process</id>
    <title>🔗 The dangers of the Single Global Process</title>
    <updated>2026-10-03T17:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link href="https://www.yellowduck.be/posts/bug-blindness" rel="alternate"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;Why do some programmers notice bugs that others completely overlook? This article dives into the phenomenon of bug blindness, where individuals fail to recognize issues in software that may be glaring to others. The author reflects on personal experiences, suggesting that familiar users become desensitized to failures, particularly in widely disliked software like Blackboard or even popular search engines. By pointing out flaws to others, they&apos;ve found that it can alleviate this blindness, allowing more people to see and address issues. This notion extends beyond just software, touching on how people’s biases influence their perception of quality and effectiveness. In an age where LLMs can mimic typical user interactions, recognizing these blind spots could very well lead to better products and experiences for everyone.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://danluu.com/bug-blind/&quot;&gt;Continue reading on &lt;strong&gt;danluu.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-10-03T13:00:00Z</published>
    <id>https://www.yellowduck.be/posts/bug-blindness</id>
    <title>🔗 Bug blindness</title>
    <updated>2026-10-03T13:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link href="https://www.yellowduck.be/posts/building-distributed-systems-in-elixir-part-7-worker-pool" rel="alternate"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;How can a system efficiently handle many jobs without overwhelming its resources? This article introduces a custom &lt;code&gt;Worker Pool&lt;/code&gt; built in Elixir, tackling the challenges of unbounded concurrency within distributed systems. It starts with the problems faced when a system has to manage a large number of jobs, emphasizing the need for a bounded concurrency approach to avoid resource exhaustion and CPU thrashing.&lt;/p&gt;
&lt;p&gt;The worker pool manages a limited number of active workers, assigning jobs from a buffered queue as workers become available. By employing raw process primitives, the article breaks down the architecture, including the parent/client process, coordinator process, and worker processes. It provides complete implementations and execution traces, illustrating how this approach allows for effective task distribution while maintaining system stability.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://dev.to/pckrishnadas88/building-distributed-systems-in-elixir-part-7-worker-pool-f23&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/pattern&quot;&gt;#pattern&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-10-03T08:00:00Z</published>
    <id>https://www.yellowduck.be/posts/building-distributed-systems-in-elixir-part-7-worker-pool</id>
    <title>🔗 Building distributed systems in Elixir: Part 7 — worker pool</title>
    <updated>2026-10-03T08:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link href="https://www.yellowduck.be/posts/is-agentic-ai-just-automation" rel="alternate"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;Why are most agents merely flowcharts in disguise? In this insightful piece, Prashant Mudgal critiques the common misconception that agentic AI offers capabilities beyond advanced automation. He delineates a clear distinction: automation handles known unknowns, while agentic AI tackles unknown unknowns. Mudgal presents real-world scenarios, such as aviation maintenance and due diligence, to illustrate how true agentic AI can uncover unprecedented insights, unlike traditional automated systems. He warns organizations that their overly structured processes often suffocate the potential for genuine decision-making. Instead of beginning with predefined use cases, he suggests starting from exceptions observed in workflows. This article is not just theoretical; it is a call to look beyond flowcharts and embrace the chaos where real intelligence can thrive.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://towardsdatascience.com/is-agentic-ai-just-automation/&quot;&gt;Continue reading on &lt;strong&gt;towardsdatascience.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-10-02T17:00:00Z</published>
    <id>https://www.yellowduck.be/posts/is-agentic-ai-just-automation</id>
    <title>🔗 Is agentic AI just automation?</title>
    <updated>2026-10-02T17:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link href="https://www.yellowduck.be/posts/websockets-vs-sse-should-be-about-ordering-and-correctness" rel="alternate"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;When considering WebSockets and Server-Sent Events (SSE), event ordering and correctness are critical for user experience. For instance, a scenario might arise where user actions like adding or removing tags can lead to chaotic and misleading outcomes if events arrive out of order. The author emphasizes that while many advocate for SSE due to perceived simplicity, the real battle lies in ensuring correct event delivery, which can be better handled by WebSockets. WebSockets allow for bidirectional communication, preventing issues that plague SSE and Fetch interactions, where multiple streams could race against each other. The article concludes by asserting that regardless of the technology choice, the essential question remains: how to ensure events are processed in the correct order to avoid confusing users?&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://dashbit.co/blog/websockets-vs-sse&quot;&gt;Continue reading on &lt;strong&gt;dashbit.co&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;a href=&quot;https://www.yellowduck.be/tags/http&quot;&gt;#http&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-10-02T13:00:00Z</published>
    <id>https://www.yellowduck.be/posts/websockets-vs-sse-should-be-about-ordering-and-correctness</id>
    <title>🔗 WebSockets vs. SSE should be about ordering and correctness</title>
    <updated>2026-10-02T13:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link href="https://www.yellowduck.be/posts/balancing-flex-items-with-flex-wrap-balance" rel="alternate"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;When flexbox items wrap but result in an orphan item, designers often resort to media queries to fix layout issues. However, this can lead to a fragile design that breaks easily with content changes. With the introduction of &lt;code&gt;flex-wrap: balance&lt;/code&gt; in Chrome 150, layouts can appear much more organized. This article provides various solutions to keep flex items balanced, especially in scenarios where they might break into orphan items. Solutions range from using container queries to applying &lt;code&gt;flex-line-count&lt;/code&gt;, showcasing the versatility of modern CSS. Each technique addresses responsive design issues without relying solely on problematic media queries. The ease of using &lt;code&gt;flex-wrap: balance&lt;/code&gt; can dramatically improve the aesthetics and functionality of web layouts, making it an exciting addition to a web designer&apos;s toolkit.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://ishadeed.com/article/flex-wrap-balance/&quot;&gt;Continue reading on &lt;strong&gt;ishadeed.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/css&quot;&gt;#css&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-10-02T08:00:00Z</published>
    <id>https://www.yellowduck.be/posts/balancing-flex-items-with-flex-wrap-balance</id>
    <title>🔗 Balancing flex items with flex-wrap: balance</title>
    <updated>2026-10-02T08:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link href="https://www.yellowduck.be/posts/my-html-boilerplate-in-2026" rel="alternate"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;What does an updated HTML boilerplate look like in 2026? Manuel Matuzović shares his revised foundation for HTML documents, detailing every crucial element along with its purpose. He emphasizes the importance of a correct &lt;code&gt;&lt;!DOCTYPE html&gt;&lt;/code&gt; declaration, character encoding with &lt;code&gt;&lt;meta charset=&quot;UTF-8&quot;&gt;&lt;/code&gt;, and the significance of the &lt;code&gt;lang&lt;/code&gt; attribute in ensuring accessibility. With JavaScript support growing, he also discusses using a &lt;code&gt;no-js&lt;/code&gt; class to handle non-JS environments. The article covers essential features like viewport settings for responsive design and the growing necessity of &lt;code&gt;manifest&lt;/code&gt; files for Progressive Web Applications (PWAs). With an eye on performance and SEO, Matuzović provides a detailed look at the modern expectations of an HTML structure, ensuring it remains efficient and user-friendly. For anyone looking to modernize their HTML approach, this article is a valuable resource for best practices and considerations in 2026.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://www.matuzo.at/blog/2026/html-boilerplate&quot;&gt;Continue reading on &lt;strong&gt;www.matuzo.at&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;a href=&quot;https://www.yellowduck.be/tags/html&quot;&gt;#html&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-10-01T17:00:00Z</published>
    <id>https://www.yellowduck.be/posts/my-html-boilerplate-in-2026</id>
    <title>🔗 My HTML boilerplate in 2026</title>
    <updated>2026-10-01T17:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link href="https://www.yellowduck.be/posts/build-htop-for-the-web-with-go-datastar" rel="alternate"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;How does a backend-driven UI sound? Alex Pliutau showcases how to create an interactive web application using Go and Datastar, focusing on applications where state management occurs entirely on the backend. With Datastar’s hypermedia-first approach, developers can build applications like a monitoring dashboard for host metrics without the need for a complex frontend framework. By leveraging Server-Sent Events (SSE) for updates, it provides a streamlined way to push HTML patches directly from the server to the client. This enables real-time updates with minimal client-side logic. Pliutau dives into practical code examples, including the use of the &lt;code&gt;gopsutil&lt;/code&gt; library for resource metrics, demonstrating how to efficiently implement this framework. It&apos;s a compelling alternative to traditional frontend frameworks for specific use cases.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://packagemain.tech/p/golang-datastar&quot;&gt;Continue reading on &lt;strong&gt;packagemain.tech&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/frontend&quot;&gt;#frontend&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/http&quot;&gt;#http&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-10-01T13:00:00Z</published>
    <id>https://www.yellowduck.be/posts/build-htop-for-the-web-with-go-datastar</id>
    <title>🔗 Build htop for the web with Go + Datastar</title>
    <updated>2026-10-01T13:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link href="https://www.yellowduck.be/posts/anthropics-claude-now-has-a-browser-of-its-own" rel="alternate"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;Anthropic has unveiled that its AI assistant, Claude, now includes a built-in browser feature. This addition aims to enhance the assistant&apos;s capabilities by allowing it to access real-time information from the web. As AI integrates deeper into daily tasks, having a browsing capability could bridge the gap between static responses and dynamic data retrieval. The model can now provide more accurate, up-to-date answers, making it a more powerful tool for users. The development reflects a growing trend in AI where tools are being equipped with functionalities that extend beyond traditional limits. Will this feature redefine how users interact with AI? Only time will tell.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://thenewstack.io/claude-built-in-browser-cowork/&quot;&gt;Continue reading on &lt;strong&gt;thenewstack.io&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/ai&quot;&gt;#ai&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-10-01T08:00:00Z</published>
    <id>https://www.yellowduck.be/posts/anthropics-claude-now-has-a-browser-of-its-own</id>
    <title>🔗 Anthropic&apos;s Claude now has a browser of its own</title>
    <updated>2026-10-01T08:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link href="https://www.yellowduck.be/posts/speeding-up-a-phoenix-liveview-web-app-with-a-cdn" rel="alternate"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;Using a CDN can significantly enhance the performance of Phoenix LiveView web applications, especially those with dynamic content and user sessions. The article outlines an effective way to leverage &lt;code&gt;bunny.net&lt;/code&gt; as a CDN, detailing a low-effort configuration that can lead to high rewards. It emphasizes caching strategies through &lt;code&gt;Plug.Static&lt;/code&gt; and shows how to configure static asset serving from a CDN domain. By adjusting the &lt;code&gt;static_url&lt;/code&gt; in your application&apos;s config and ensuring that asset links use the &lt;code&gt;url&lt;/code&gt; helper, all your static files can efficiently be served from a designated CDN subdomain. Additionally, the article touches on the importance of optimizing outgoing traffic and page load speeds, making it a valuable resource for developers looking to improve their Phoenix LiveView applications with minimal overhead.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://jola.dev/posts/speeding-up-phoenix-liveview-cdn&quot;&gt;Continue reading on &lt;strong&gt;jola.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/frontend&quot;&gt;#frontend&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/phoenix&quot;&gt;#phoenix&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-09-30T17:00:00Z</published>
    <id>https://www.yellowduck.be/posts/speeding-up-a-phoenix-liveview-web-app-with-a-cdn</id>
    <title>🔗 Speeding up a Phoenix LiveView web app with a CDN</title>
    <updated>2026-09-30T17:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link href="https://www.yellowduck.be/posts/ducklabs-to-join-aws-projects-to-remain-open-source" rel="alternate"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;DuckLabs has announced its upcoming partnership with Amazon Web Services (AWS), set to take effect in early September. This union is aimed at leveraging AWS’s resources and reach, while ensuring that the open-source initiatives underpinning DuckDB, DuckLake, and Quack remain available under the MIT license. The DuckDB Foundation will continue to oversee these projects, preserving the spirit of community contribution.&lt;/p&gt;
&lt;p&gt;With over one million downloads daily, DuckDB has proven to be a crucial tool for developers worldwide. The move to join AWS is seen as a necessary step to scale the technology further, enabling DuckLabs to focus on technical advancements without compromising on the open-source ethos that fueled its success. This collaboration promises even greater opportunities for both the technology and its global community of users, contributors, and advocates as they enter this new chapter together.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://ducklabs.com/news/2026/08/26/ducklabs-to-join-aws&quot;&gt;Continue reading on &lt;strong&gt;ducklabs.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/devops&quot;&gt;#devops&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-09-30T13:00:00Z</published>
    <id>https://www.yellowduck.be/posts/ducklabs-to-join-aws-projects-to-remain-open-source</id>
    <title>🔗 DuckLabs to join AWS, projects to remain open source</title>
    <updated>2026-09-30T13:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link href="https://www.yellowduck.be/posts/the-dutch-community-where-people-live-on-strips-of-land-in-a-lake" rel="alternate"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;In the Dutch town of Loosdrecht, residents inhabit homes perched on slim islands within a lake. This distinctive living arrangement originated from peat mining that created narrow strips of land meant for drying peat. Though it remained a quirky geographical feature for years, the 20th century saw developers transform these strips into boat-access-only properties. Now, a community enjoys a unique lifestyle that blurs the lines between land and water, epitomizing innovation in how we think about living spaces.&lt;/p&gt;
&lt;p&gt;Curious about this fascinating community? Check out the full article to learn more!&lt;/p&gt;
&lt;p&gt;scheendijk&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://www.core77.com/posts/144869&quot;&gt;Continue reading on &lt;strong&gt;www.core77.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;/p&gt;</content>
    <published>2026-09-30T08:00:00Z</published>
    <id>https://www.yellowduck.be/posts/the-dutch-community-where-people-live-on-strips-of-land-in-a-lake</id>
    <title>🔗 The Dutch community where people live on strips of land in a lake</title>
    <updated>2026-09-30T08:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link href="https://www.yellowduck.be/posts/your-executable-is-a-sqlite-database" rel="alternate"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;Can a SQLite database replace the traditional ELF executable format? In a thought-provoking exploration, Farid Zakaria delves into the potential of employing SQLite as a genuine executable, dubbed SELF (Structured Executable &amp; Linkable Format). By leveraging SQLite&apos;s self-describing features, Zakaria argues that an executable format can not only be more efficient but also easier to work with. He demonstrates that key functionalities of ELF can be reimplemented through a relational structure, allowing tools and queries to operate seamlessly without cumbersome overhead. Zakaria&apos;s experiments show that this innovation could streamline program execution while simplifying the complexities typically encountered with ELF files, including dynamic linking and symbol resolution. This article is a detailed journey into a radical idea that blurs the lines between databases and executables, highlighting a forward-thinking approach to software architecture.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://fzakaria.com/2026/08/23/your-executable-is-a-sqlite-database&quot;&gt;Continue reading on &lt;strong&gt;fzakaria.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/sqlite&quot;&gt;#sqlite&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-09-29T17:00:00Z</published>
    <id>https://www.yellowduck.be/posts/your-executable-is-a-sqlite-database</id>
    <title>🔗 Your executable is a SQLite database</title>
    <updated>2026-09-29T17:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link href="https://www.yellowduck.be/posts/feature-flags-without-a-saas-how-onrotation-gates-features" rel="alternate"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;OnRotation is streamlining feature deployment without traditional SaaS solutions. By leveraging &lt;code&gt;Elixir&lt;/code&gt; and &lt;code&gt;Phoenix&lt;/code&gt;, the team implemented a customized feature flag system using a simple table and a function, rather than integrating a more complex library like &lt;code&gt;FunWithFlags&lt;/code&gt;. With a small user base and known testers, the solution simplifies control by allowing specific features to be turned on or off for individuals without requiring a full redeployment of the app. Each flag consists of a unique name, description, and a list of allowed emails, making it both straightforward and manageable. The author emphasizes that this approach fits naturally into the context and architecture of the app, showcasing how a small team can effectively meet their needs without overcomplicating the system.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://nickstalter.com/onrotation-feature-flags&quot;&gt;Continue reading on &lt;strong&gt;nickstalter.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/elixir&quot;&gt;#elixir&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/phoenix&quot;&gt;#phoenix&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-09-29T13:00:00Z</published>
    <id>https://www.yellowduck.be/posts/feature-flags-without-a-saas-how-onrotation-gates-features</id>
    <title>🔗 Feature flags without a SaaS: How OnRotation gates features</title>
    <updated>2026-09-29T13:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link href="https://www.yellowduck.be/posts/do-we-still-need-build-tools" rel="alternate"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;How necessary are build tools for frontend development in 2026? The article raises crucial questions about their relevance, particularly for CSS and JavaScript. It examines the effectiveness of tools like Autoprefixer, esbuild, and Lightning CSS for managing vendor prefixes and syntax lowering. While some CSS features have become standardized, tools still provide value in combining files and minifying code. The discussion extends to JavaScript, where module bundlers like Webpack and esbuild are highlighted for their performance advantages, despite potential downsides in caching. With HTTP/2 and HTTP/3 changing the landscape, the necessity of bundlers is increasingly debatable. Ultimately, the article argues that build tools still play an essential role, although there are viable no-build alternatives for smaller projects or specific cases.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://olliewilliams.xyz/blog/no-build/&quot;&gt;Continue reading on &lt;strong&gt;olliewilliams.xyz&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;a href=&quot;https://www.yellowduck.be/tags/css&quot;&gt;#css&lt;/a&gt; &lt;a href=&quot;https://www.yellowduck.be/tags/tools&quot;&gt;#tools&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-09-29T08:00:00Z</published>
    <id>https://www.yellowduck.be/posts/do-we-still-need-build-tools</id>
    <title>🔗 Do we still need build tools?</title>
    <updated>2026-09-29T08:00:00Z</updated>
  </entry>
  <entry>
    <author>
      <name>Pieter Claerhout</name>
      <email>pieter@yellowduck.be</email>
    </author>
    <link href="https://www.yellowduck.be/posts/postgresql-for-everything" rel="alternate"/>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;Contrary to popular belief, the answer to everything is not 42—it’s PostgreSQL. This article by Dr. Raphael A. Bauer outlines the power and versatility of PostgreSQL, showcasing its use throughout his two-decade career starting in 2003. He highlights its strengths such as being rock-solid, easy to install and scale, and simplifying IT setups by effectively replacing multiple systems. PostgreSQL&apos;s features allow it to function not only as a traditional database but also as a full-text search engine, document storage, and much more. Dr. Bauer discusses various plugins like TimescaleDB and pgvector that extend PostgreSQL’s capabilities, making it suitable for high volume web analytics, AI workflows, and even non-persistent caching. By examining these advantages, he advocates for considering PostgreSQL before looking for other technologies to address new requirements or challenges.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;&lt;a href=&quot;https://www.raphaelbauer.com/posts/postgresql-everything/#postgresql-replaces-solr-and-elastic-full-text-search&quot;&gt;Continue reading on &lt;strong&gt;www.raphaelbauer.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/postgresql&quot;&gt;#postgresql&lt;/a&gt;&lt;/p&gt;</content>
    <published>2026-09-28T17:00:00Z</published>
    <id>https://www.yellowduck.be/posts/postgresql-for-everything</id>
    <title>🔗 PostgreSQL for everything</title>
    <updated>2026-09-28T17:00:00Z</updated>
  </entry>
</feed>