<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Alan Bonnici</title>
    <description>The latest articles on DEV Community by Alan Bonnici (@chribonn).</description>
    <link>https://dev.to/chribonn</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2784519%2Fac701164-137d-4c1f-85db-60de96007fbf.png</url>
      <title>DEV Community: Alan Bonnici</title>
      <link>https://dev.to/chribonn</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/chribonn"/>
    <language>en</language>
    <item>
      <title>"Complexity Ceiling" in Power Apps</title>
      <dc:creator>Alan Bonnici</dc:creator>
      <pubDate>Wed, 20 May 2026 08:25:55 +0000</pubDate>
      <link>https://dev.to/chribonn/complexity-ceiling-in-power-apps-21fg</link>
      <guid>https://dev.to/chribonn/complexity-ceiling-in-power-apps-21fg</guid>
      <description>&lt;p&gt;Power Apps is a powerhouse for rapid prototyping within the Microsoft ecosystem, but for complex development, the "seams" are becoming visible. This new analysis explores the "Complexity Ceiling" and the friction points faced by architects and developers.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Core Issues Identified:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Mental Model Mismatch&lt;/strong&gt;: Chaining nested &lt;code&gt;With&lt;/code&gt; blocks to simulate sequential logic.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tooling Gaps&lt;/strong&gt;: The need for real breakpoints and execution narratives over simple trace functions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Governance Hurdles&lt;/strong&gt;: The "abrupt cliff" of enterprise compliance for makers.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Microsoft has the opportunity to bridge the gap between business analysts and professional engineers by introducing controlled imperative constructs and better code organization.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.alanbonnici.com/2026/05/the-complexity-ceiling-where-microsoft.html" rel="noopener noreferrer"&gt;https://www.alanbonnici.com/2026/05/the-complexity-ceiling-where-microsoft.html&lt;/a&gt;&lt;/p&gt;

</description>
      <category>powerapps</category>
      <category>powerplatform</category>
      <category>lowcode</category>
      <category>microsoft</category>
    </item>
    <item>
      <title>Does your Linux server actually know when the power is failing?</title>
      <dc:creator>Alan Bonnici</dc:creator>
      <pubDate>Thu, 19 Mar 2026 11:39:08 +0000</pubDate>
      <link>https://dev.to/chribonn/does-your-linux-server-actually-know-when-the-power-is-failing-48ag</link>
      <guid>https://dev.to/chribonn/does-your-linux-server-actually-know-when-the-power-is-failing-48ag</guid>
      <description>&lt;p&gt;NUT (Network UPS Tools) is the go-to open-source solution for UPS monitoring on Linux — but it takes some know-how to set up properly, especially with hardware that isn't auto-detected out of the box.&lt;/p&gt;

&lt;p&gt;This detailed guide covers everything from finding the right driver, dealing with stubborn read-only settings, configuring automatic shutdowns, and setting up email alerts so you know when things go wrong. There's even a section on how to safely test your shutdown logic before a real power cut hits.&lt;/p&gt;

&lt;p&gt;Great resource for anyone running a homelab or Linux-based home server. 👇&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.alanbonnici.com/2026/03/setting-up-nut-ups-software-on-linux.html" rel="noopener noreferrer"&gt;https://www.alanbonnici.com/2026/03/setting-up-nut-ups-software-on-linux.html&lt;/a&gt;&lt;/p&gt;

</description>
      <category>nut</category>
      <category>linux</category>
      <category>ups</category>
      <category>homelab</category>
    </item>
    <item>
      <title>How to configure Postfix to relay mail through Gmail (simple step-by-step guide)</title>
      <dc:creator>Alan Bonnici</dc:creator>
      <pubDate>Tue, 17 Mar 2026 10:31:07 +0000</pubDate>
      <link>https://dev.to/chribonn/how-to-configure-postfix-to-relay-mail-through-gmail-simple-step-by-step-guide-2hmp</link>
      <guid>https://dev.to/chribonn/how-to-configure-postfix-to-relay-mail-through-gmail-simple-step-by-step-guide-2hmp</guid>
      <description>&lt;p&gt;If you run Linux servers that need to send alerts, backup reports, or monitoring notifications, configuring SMTP can be a pain.&lt;/p&gt;

&lt;p&gt;I wrote a short guide explaining how to install and configure &lt;strong&gt;Postfix with Gmail as an SMTP relay&lt;/strong&gt;, including:&lt;/p&gt;

&lt;p&gt;• Installing required packages&lt;br&gt;&lt;br&gt;
• Configuring TLS&lt;br&gt;&lt;br&gt;
• Setting up Gmail app passwords&lt;br&gt;&lt;br&gt;
• Securing credentials&lt;br&gt;&lt;br&gt;
• Testing email delivery&lt;/p&gt;

&lt;p&gt;Good for small servers, homelabs, monitoring tools, and UPS notifications.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.alanbonnici.com/2026/03/install-and-configure-postfix-using.html" rel="noopener noreferrer"&gt;https://www.alanbonnici.com/2026/03/install-and-configure-postfix-using.html&lt;/a&gt;&lt;/p&gt;

</description>
      <category>linux</category>
      <category>postfix</category>
      <category>smtp</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Building a Production RAG Server with Ollama, Open WebUI and Chroma DB</title>
      <dc:creator>Alan Bonnici</dc:creator>
      <pubDate>Wed, 11 Feb 2026 08:48:39 +0000</pubDate>
      <link>https://dev.to/chribonn/building-a-production-rag-server-with-ollama-open-webui-and-chroma-db-3h3o</link>
      <guid>https://dev.to/chribonn/building-a-production-rag-server-with-ollama-open-webui-and-chroma-db-3h3o</guid>
      <description>&lt;p&gt;I've created a comprehensive guide on building a headless LLM server with RAG capabilities. The tutorial walks through the complete implementation including document ingestion, vector storage, and query optimization.&lt;/p&gt;

&lt;p&gt;The setup is production-ready and can be completed in about 30 minutes. &lt;/p&gt;

&lt;p&gt;There are optional code sections for those who would like to interact with the model programmatically.&lt;/p&gt;

</description>
      <category>llm</category>
      <category>rag</category>
      <category>ai</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>MS PowerApps Wordle Engine HowTo</title>
      <dc:creator>Alan Bonnici</dc:creator>
      <pubDate>Wed, 29 Jan 2025 14:05:24 +0000</pubDate>
      <link>https://dev.to/chribonn/ms-powerapps-wordle-engine-howto-452n</link>
      <guid>https://dev.to/chribonn/ms-powerapps-wordle-engine-howto-452n</guid>
      <description>&lt;p&gt;In this HowTo, I dive into creating a Microsoft Power Apps Canvas Wordle app that checks a guessed word against an answer!&lt;/p&gt;

&lt;p&gt;🔍 Features include:&lt;br&gt;&lt;br&gt;
✅ Duplicate detection&lt;br&gt;&lt;br&gt;
✅ Suggestions for improvement&lt;br&gt;&lt;br&gt;
✅ Tips for enhancing Power Apps to bridge the gap between no-code/low-code and procedural approaches!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://youtu.be/-cz_lun6fo0?si=COXVB5vb2rXboyka" rel="noopener noreferrer"&gt;https://youtu.be/-cz_lun6fo0?si=COXVB5vb2rXboyka&lt;/a&gt;&lt;/p&gt;

</description>
      <category>powerapps</category>
      <category>howto</category>
      <category>lowcode</category>
      <category>nocode</category>
    </item>
  </channel>
</rss>
