<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <atom:link href="https://christian-hollaender.de/feed/blog" rel="self" type="application/rss+xml" />
        <title><![CDATA[All published Blog posts]]></title>
        <link><![CDATA[https://christian-hollaender.de/feed/blog]]></link>
        <description><![CDATA[All blog posts that were published on this website.]]></description>
        <language>en-US</language>
        <pubDate>Wed, 22 Apr 2026 10:51:10 +0000</pubDate>

                    <item>
                <title><![CDATA[Automatic Package Releases using Semantic-Release]]></title>
                <link>https://christian-hollaender.de/posts/1-automatic-package-releases-using-semantic-release</link>
                <description><![CDATA[Writing the release notes and Changelog manually is a time-consuming and complicated task. And then you need to push your new release to your desired Package-registry like NPM or Packagist. Fortunately, there is a better way to do this. Join me in discovering an alternative.]]></description>
                <author><![CDATA[Christian Holländer <christian@werdetnachbarn.de>]]></author>
                <guid>https://christian-hollaender.de/posts/1</guid>
                <pubDate>Tue, 30 May 2023 07:19:17 +0000</pubDate>
                            </item>
                    <item>
                <title><![CDATA[How to create a shared Prettier configuration]]></title>
                <link>https://christian-hollaender.de/posts/2-how-to-create-a-shared-prettier-configuration</link>
                <description><![CDATA[Keeping configs for styling and linting tools consistent across multiple projects can be challenging. Many tools support shared configs, which are created once and used everywhere. This article will discover how to create a shared configuration for prettier.]]></description>
                <author><![CDATA[Christian Holländer <christian@werdetnachbarn.de>]]></author>
                <guid>https://christian-hollaender.de/posts/2</guid>
                <pubDate>Mon, 29 May 2023 20:01:08 +0000</pubDate>
                            </item>
                    <item>
                <title><![CDATA[eBPF vs Sidecar Monitoring: What We Learned Building Both]]></title>
                <link>https://christian-hollaender.de/posts/3-ebpf-vs-sidecar-monitoring-what-we-learned-building-both</link>
                <description><![CDATA[We tried to replace sidecar monitoring with eBPF in Kubernetes. Spoiler: it didn't go as planned. Here's what we learned about hype vs reality in cloud-native monitoring, and when cutting-edge tech isn't always the answer.]]></description>
                <author><![CDATA[Christian Holländer <christian@werdetnachbarn.de>]]></author>
                <guid>https://christian-hollaender.de/posts/3</guid>
                <pubDate>Sun, 13 Jul 2025 09:23:01 +0000</pubDate>
                            </item>
                    <item>
                <title><![CDATA[The State of Serverless: Choosing the Right Storage Solution]]></title>
                <link>https://christian-hollaender.de/posts/4-the-state-of-serverless-choosing-the-right-storage-solution</link>
                <description><![CDATA[Serverless computing promises to free us from infrastructure management, but there's a catch: your functions are stateless. Every time a function executes, it starts with a clean slate. No memory of previous requests, no local files, no persistent connections. This is both a blessing and a curse.]]></description>
                <author><![CDATA[Christian Holländer <christian@werdetnachbarn.de>]]></author>
                <guid>https://christian-hollaender.de/posts/4</guid>
                <pubDate>Sun, 13 Jul 2025 09:55:34 +0000</pubDate>
                            </item>
                    <item>
                <title><![CDATA[MongoDB vs MySQL: A Real-World Performance Showdown Using Disneyland Data]]></title>
                <link>https://christian-hollaender.de/posts/5-mongodb-vs-mysql-a-real-world-performance-showdown-using-disneyland-data</link>
                <description><![CDATA[MongoDB vs MySQL head-to-head: We benchmarked both databases with real Disneyland data. MongoDB won writes by 67% and some queries by 98%, but MySQL had surprises too!]]></description>
                <author><![CDATA[Christian Holländer <christian@werdetnachbarn.de>]]></author>
                <guid>https://christian-hollaender.de/posts/5</guid>
                <pubDate>Sun, 13 Jul 2025 09:55:39 +0000</pubDate>
                            </item>
                    <item>
                <title><![CDATA[Working with IPTC Metadata in PHP: A Complete Guide]]></title>
                <link>https://christian-hollaender.de/posts/6-working-with-iptc-metadata-in-php-a-complete-guide</link>
                <description><![CDATA[PHP's IPTC functions let you read/write image metadata. Use iptcparse() to extract data like captions, keywords & copyright from JPEGs via getimagesize(). Use iptcembed() to add metadata. Great for photo galleries & CMS systems.]]></description>
                <author><![CDATA[Christian Holländer <christian@werdetnachbarn.de>]]></author>
                <guid>https://christian-hollaender.de/posts/6</guid>
                <pubDate>Thu, 30 Oct 2025 19:04:52 +0000</pubDate>
                            </item>
                    <item>
                <title><![CDATA[Starting My Master&#039;s Thesis Journey: Building a Smarter Way to Change Your Address]]></title>
                <link>https://christian-hollaender.de/posts/7-starting-my-masters-thesis-journey-building-a-smarter-way-to-change-your-address</link>
                <description><![CDATA[Moving sucks. Updating your address at 20+ places sucks more. I'm building a solution for my master's thesis - one address change to rule them all. Join me as I figure out if this can actually work.]]></description>
                <author><![CDATA[Christian Holländer <christian@werdetnachbarn.de>]]></author>
                <guid>https://christian-hollaender.de/posts/7</guid>
                <pubDate>Fri, 31 Oct 2025 07:44:16 +0000</pubDate>
                            </item>
                    <item>
                <title><![CDATA[Choosing the Right Versioning Scheme: It&#039;s About Who Consumes Your Software]]></title>
                <link>https://christian-hollaender.de/posts/8-choosing-the-right-versioning-scheme-its-about-who-consumes-your-software</link>
                <description><![CDATA[Version numbers communicate to their consumer. Use SemVer when code depends on your interface externally. Use CalVer for human-facing software. The question isn't app type — it's: human or code consumer?]]></description>
                <author><![CDATA[Christian Holländer <christian@werdetnachbarn.de>]]></author>
                <guid>https://christian-hollaender.de/posts/8</guid>
                <pubDate>Wed, 22 Apr 2026 10:51:10 +0000</pubDate>
                            </item>
            </channel>
</rss>
