<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Posts on Mohamad Dbouk</title>
    <link>https://mdbouk.com/posts/</link>
    <description>Recent content in Posts on Mohamad Dbouk</description>
    <language>en-us</language>
    <lastBuildDate>Mon, 11 May 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://mdbouk.com/posts/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Correlate Everything in .NET</title>
      <link>https://mdbouk.com/correlate-everything-in-dotnet/</link>
      <pubDate>Mon, 11 May 2026 00:00:00 +0000</pubDate>
      <guid>https://mdbouk.com/correlate-everything-in-dotnet/</guid>
      <description>Add correlation IDs to ASP.NET Core with Correlate, propagate them across HttpClient and Azure Service Bus, and never lose a request again. Tested companion repo included.</description>
    </item>
    <item>
      <title>Run Local LLMs in .NET with Ollama and Docker</title>
      <link>https://mdbouk.com/run-local-ai-models-in-.net-like-a-boss/</link>
      <pubDate>Wed, 06 Aug 2025 00:00:00 +0000</pubDate>
      <guid>https://mdbouk.com/run-local-ai-models-in-.net-like-a-boss/</guid>
      <description>How to run local LLMs in your .NET app with Ollama and Docker. Setup, calling models from C#, prompts, and working code samples.</description>
    </item>
    <item>
      <title>I Built My Own MediatR! Here How You Can Too</title>
      <link>https://mdbouk.com/i-built-my-own-mediatr-here-how-you-can-too/</link>
      <pubDate>Mon, 02 Jun 2025 00:00:00 +0000</pubDate>
      <guid>https://mdbouk.com/i-built-my-own-mediatr-here-how-you-can-too/</guid>
      <description>Build your own MediatR replacement in .NET. The Mediator pattern, CQRS, and source generators that wire it all up at compile time.</description>
    </item>
    <item>
      <title>HybridCache in .NET 9 is Awesome!</title>
      <link>https://mdbouk.com/hybridcache-in-.net-9-is-awesome/</link>
      <pubDate>Sat, 23 Nov 2024 00:00:00 +0000</pubDate>
      <guid>https://mdbouk.com/hybridcache-in-.net-9-is-awesome/</guid>
      <description>Dive into the innovative HybridCache in .NET 9, a game-changer for caching strategies. Learn how it bridges in-memory and distributed caching for optimal performance and scalability.</description>
    </item>
    <item>
      <title>C# IFormattable: How to Add Custom Format Strings</title>
      <link>https://mdbouk.com/adding-custom-formatting-to-your-classes-with-iformattable/</link>
      <pubDate>Mon, 18 Nov 2024 00:00:00 +0000</pubDate>
      <guid>https://mdbouk.com/adding-custom-formatting-to-your-classes-with-iformattable/</guid>
      <description>Implement IFormattable in C# to give your classes custom format strings, just like DateTime. Walkthrough with code, step by step.</description>
    </item>
    <item>
      <title>Azure-Sync: Sync your Azure App Settings to local</title>
      <link>https://mdbouk.com/azure-sync-sync-your-azure-app-settings-to-local/</link>
      <pubDate>Sat, 25 May 2024 00:00:00 +0000</pubDate>
      <guid>https://mdbouk.com/azure-sync-sync-your-azure-app-settings-to-local/</guid>
      <description>Simplify your .NET development workflow with Azure-Sync. This tool syncs Azure App Service environment variables, including KeyVault secrets, to local .NET secrets for seamless debugging.</description>
    </item>
    <item>
      <title>Implement Builders easily with Source Generator in .NET</title>
      <link>https://mdbouk.com/implement-builders-easily-with-source-generator-in-.net/</link>
      <pubDate>Wed, 28 Feb 2024 00:00:00 +0000</pubDate>
      <guid>https://mdbouk.com/implement-builders-easily-with-source-generator-in-.net/</guid>
      <description>Streamline your .NET development by implementing the Builder pattern with Source Generators. Learn how to automate builder class creation for complex objects with fluent APIs.</description>
    </item>
    <item>
      <title>Secure On-Premise .NET Application with Azure Key Vault</title>
      <link>https://mdbouk.com/secure-on-premise-.net-application-with-azure-key-vault/</link>
      <pubDate>Fri, 09 Feb 2024 00:00:00 +0000</pubDate>
      <guid>https://mdbouk.com/secure-on-premise-.net-application-with-azure-key-vault/</guid>
      <description>How to secure on-premise .NET applications with Azure Key Vault. Service principal, client secret, and configuration walk-through with code.</description>
    </item>
    <item>
      <title>Running Integration Tests with Docker in .NET using TestContainers</title>
      <link>https://mdbouk.com/running-integration-tests-with-docker-in-.net-using-testcontainers/</link>
      <pubDate>Thu, 30 Nov 2023 00:00:00 +0000</pubDate>
      <guid>https://mdbouk.com/running-integration-tests-with-docker-in-.net-using-testcontainers/</guid>
      <description>Learn how to run integration tests in .NET using Docker and TestContainers. This guide covers setting up a TestContainer for SQL Edge, creating a DbContext, and performing tests against a real database instance.</description>
    </item>
    <item>
      <title>CSharpRepl – Your Ultimate C# Playground in the Terminal</title>
      <link>https://mdbouk.com/csharprepl-your-ultimate-c%23-playground-in-the-terminal/</link>
      <pubDate>Sat, 07 Oct 2023 00:00:00 +0000</pubDate>
      <guid>https://mdbouk.com/csharprepl-your-ultimate-c%23-playground-in-the-terminal/</guid>
      <description>Discover CSharpRepl, a command-line tool that allows you to write and execute C# code directly in your terminal. It&amp;#39;s a powerful playground for C# developers, enabling quick experimentation and testing without the need for a full IDE.</description>
    </item>
    <item>
      <title>Bringing Blazor to Desktop and Mobile with MAUI</title>
      <link>https://mdbouk.com/bringing-blazor-to-desktop-and-mobile-with-maui/</link>
      <pubDate>Sun, 24 Sep 2023 00:00:00 +0000</pubDate>
      <guid>https://mdbouk.com/bringing-blazor-to-desktop-and-mobile-with-maui/</guid>
      <description>Learn how to host a Blazor WebAssembly application as a native desktop and mobile app using .NET MAUI. This guide covers the setup, shared components, and how to run your app on multiple platforms.</description>
    </item>
    <item>
      <title>Let&#39;s Build a Tic Tac Toe Game with Blazor WebAssembly!</title>
      <link>https://mdbouk.com/lets-build-a-tic-tac-toe-game-with-blazor-webassembly/</link>
      <pubDate>Tue, 29 Aug 2023 00:00:00 +0000</pubDate>
      <guid>https://mdbouk.com/lets-build-a-tic-tac-toe-game-with-blazor-webassembly/</guid>
      <description>Build a Tic-Tac-Toe game in Blazor WebAssembly. Game board component, AI opponent with winning-move detection, and win/tie checks. Full source on GitHub.</description>
    </item>
    <item>
      <title>Mapperly Tutorial: .NET Source Generator Object Mapping</title>
      <link>https://mdbouk.com/mapperly-the-coolest-object-mapping-tool-in-town/</link>
      <pubDate>Thu, 13 Jul 2023 00:00:00 +0000</pubDate>
      <guid>https://mdbouk.com/mapperly-the-coolest-object-mapping-tool-in-town/</guid>
      <description>Mapperly is a .NET source generator for object-to-object mapping. Compile-time code, faster than AutoMapper. AOT-safe with no runtime reflection.</description>
    </item>
    <item>
      <title>How to Resolve Unauthorized Access Issue with Private NuGet Repository</title>
      <link>https://mdbouk.com/how-to-resolve-unauthorized-access-issue-with-private-nuget-repository/</link>
      <pubDate>Mon, 12 Jun 2023 00:00:00 +0000</pubDate>
      <guid>https://mdbouk.com/how-to-resolve-unauthorized-access-issue-with-private-nuget-repository/</guid>
      <description>Fix 401 Unauthorized errors when restoring NuGet packages from Azure DevOps private feeds. PAT setup, NuGet.config, and the Artifacts Credential Provider.</description>
    </item>
    <item>
      <title>CodeWhisperer: Amazon Answer to GitHub Copilot</title>
      <link>https://mdbouk.com/codewhisperer-amazon-answer-to-github-copilot/</link>
      <pubDate>Sat, 15 Apr 2023 00:00:00 +0000</pubDate>
      <guid>https://mdbouk.com/codewhisperer-amazon-answer-to-github-copilot/</guid>
      <description>Amazon CodeWhisperer is AWS&amp;#39;s answer to GitHub Copilot. What it does well, where it falls short, and how it compares for everyday .NET work.</description>
    </item>
    <item>
      <title>How to create beautiful console applications with Spectre.Console</title>
      <link>https://mdbouk.com/how-to-create-beautiful-console-applications-with-spectre.console/</link>
      <pubDate>Sun, 19 Mar 2023 00:00:00 +0000</pubDate>
      <guid>https://mdbouk.com/how-to-create-beautiful-console-applications-with-spectre.console/</guid>
      <description>Spectre.Console makes .NET console apps look polished. Tables, colors, progress bars, prompts, live displays, and a markup language. Walkthrough with code.</description>
    </item>
    <item>
      <title>Say Hello to Reliable Minimal APIs with Integration Tests</title>
      <link>https://mdbouk.com/say-hello-to-reliable-minimal-apis-with-integration-tests/</link>
      <pubDate>Sun, 08 Jan 2023 00:00:00 +0000</pubDate>
      <guid>https://mdbouk.com/say-hello-to-reliable-minimal-apis-with-integration-tests/</guid>
      <description>Discover how to create reliable Minimal APIs in .NET 7 and write robust integration tests using XUnit and WebApplicationFactory. This guide covers essential testing strategies for API development.</description>
    </item>
    <item>
      <title>Deploy SonarQube to Azure App Service with Bicep (and SQL Server)</title>
      <link>https://mdbouk.com/from-frustrated-to-successful-my-experience-deploying-sonarqube-in-azure/</link>
      <pubDate>Thu, 22 Dec 2022 00:00:00 +0000</pubDate>
      <guid>https://mdbouk.com/from-frustrated-to-successful-my-experience-deploying-sonarqube-in-azure/</guid>
      <description>Deploy SonarQube on Azure App Service with Bicep. Fix the vm.max_map_count error, wire up SQL Server, and grab a ready-to-deploy template.</description>
    </item>
    <item>
      <title>The Power of Bicep: Deploying on Azure in a Snap</title>
      <link>https://mdbouk.com/the-power-of-bicep-deploying-on-azure-in-a-snap/</link>
      <pubDate>Fri, 16 Dec 2022 00:00:00 +0000</pubDate>
      <guid>https://mdbouk.com/the-power-of-bicep-deploying-on-azure-in-a-snap/</guid>
      <description>Discover how to deploy applications on Azure effortlessly using Bicep. This guide walks you through deploying a Docker image with just a few lines of code, showcasing the simplicity and efficiency of Bicep for infrastructure as code.</description>
    </item>
    <item>
      <title>You no longer need a Dockerfile</title>
      <link>https://mdbouk.com/you-no-longer-need-a-dockerfile/</link>
      <pubDate>Sun, 04 Dec 2022 00:00:00 +0000</pubDate>
      <guid>https://mdbouk.com/you-no-longer-need-a-dockerfile/</guid>
      <description>Starting with .NET 7, you can now publish your applications directly as container images without needing a Dockerfile. Learn how to leverage this new feature to simplify your containerization process.</description>
    </item>
    <item>
      <title>Update Azure SQL Server Firewall rules using Azure CLI</title>
      <link>https://mdbouk.com/update-azure-sql-server-firewall-rules-using-azure-cli/</link>
      <pubDate>Mon, 28 Nov 2022 00:00:00 +0000</pubDate>
      <guid>https://mdbouk.com/update-azure-sql-server-firewall-rules-using-azure-cli/</guid>
      <description>Add, update, and automate Azure SQL Server firewall rules with the Azure CLI. PowerShell script included for handling a changing public IP.</description>
    </item>
    <item>
      <title>How to Mock using NSubstitute</title>
      <link>https://mdbouk.com/how-to-mock-using-nsubstitute/</link>
      <pubDate>Fri, 04 Nov 2022 00:00:00 +0000</pubDate>
      <guid>https://mdbouk.com/how-to-mock-using-nsubstitute/</guid>
      <description>Learn how to effectively use NSubstitute for mocking in unit tests. This guide covers the basics of setting up NSubstitute, creating mock objects, and configuring return values for methods, helping you write clean and efficient unit tests in .NET.</description>
    </item>
    <item>
      <title>Build your own cli because you can</title>
      <link>https://mdbouk.com/build-your-own-cli-because-you-can/</link>
      <pubDate>Mon, 26 Sep 2022 00:00:00 +0000</pubDate>
      <guid>https://mdbouk.com/build-your-own-cli-because-you-can/</guid>
      <description>I have always been impressed by the Azure CLI and how it has played a significant role in my DevOps journey over the years. That got me wondering, how can I build my own CLI in a similar vein to Azure? Follow along in this blog post where I&amp;#39;ll be sharing my step-by-step process for creating a CLI using C# in .NET. Don&amp;#39;t miss out on this exciting adventure!</description>
    </item>
    <item>
      <title>Let’s benchmark .NET using BenchmarkDotNet!</title>
      <link>https://mdbouk.com/lets-benchmark-.net-using-benchmarkdotnet/</link>
      <pubDate>Thu, 15 Sep 2022 00:00:00 +0000</pubDate>
      <guid>https://mdbouk.com/lets-benchmark-.net-using-benchmarkdotnet/</guid>
      <description>In this blog, we will deep dive into BenchmarkDotNet package and see how it can help us improve our dotnet application.</description>
    </item>
  </channel>
</rss>
