<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>flooo.pro</title><link>https://flooo.pro/en/</link><description>Recent content on flooo.pro</description><generator>Hugo</generator><language>en</language><lastBuildDate>Sun, 19 Jul 2026 10:00:00 +0200</lastBuildDate><atom:link href="https://flooo.pro/en/index.xml" rel="self" type="application/rss+xml"/><item><title>Hello world: why this blog exists</title><link>https://flooo.pro/en/2026/hello-world/</link><pubDate>Sun, 19 Jul 2026 10:00:00 +0200</pubDate><guid>https://flooo.pro/en/2026/hello-world/</guid><description>&lt;h2 id="what-this-is-about"&gt;What this is about&lt;/h2&gt;
&lt;p&gt;There is less distance between Kubernetes clusters and raised garden beds than you might
think: both need observation, patience, and a willingness to treat failure as telemetry.&lt;/p&gt;
&lt;h2 id="how-the-site-is-built"&gt;How the site is built&lt;/h2&gt;
&lt;p&gt;Static with Hugo, a custom theme (&amp;ldquo;Werkbank&amp;rdquo;), no trackers. Contrast per WCAG AA,
colours chosen off the red/green confusion axis, all sizes in &lt;code&gt;rem&lt;/code&gt;.&lt;/p&gt;</description></item><item><title>About</title><link>https://flooo.pro/en/about/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://flooo.pro/en/about/</guid><description>&lt;p&gt;Servus — I&amp;rsquo;m Flo.&lt;/p&gt;
&lt;p&gt;I live with my family, a few chickens and a chronically oversized garden in
southern Lower Austria. By day I build IT infrastructure — Linux, Kubernetes,
cloud, and everything involving certificates. By night, depending on the season:
raised beds, radio sensors, vinyl records, or this blog.&lt;/p&gt;
&lt;p&gt;I came to IT via a detour, and it still shapes who I am. I trained as a retail
clerk at a discount grocer — old school: hundreds of PLU codes memorised because
the till had no search function. Change counted up by hand because the display
didn&amp;rsquo;t show it — in hindsight my first algorithm: add instead of subtract,
because it&amp;rsquo;s faster and less error-prone. And I learned FIFO at the yoghurt
shelf, years before I knew computer science had an acronym for it. Plus the
quintessential discounter training: work efficiently with a lean crew and
ruthlessly drop what doesn&amp;rsquo;t matter.&lt;/p&gt;</description></item><item><title>CI</title><link>https://flooo.pro/en/ci/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://flooo.pro/en/ci/</guid><description/></item><item><title>Legal notice</title><link>https://flooo.pro/en/impressum/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://flooo.pro/en/impressum/</guid><description>&lt;p&gt;Information pursuant to § 5 ECG and § 25 MedienG (Austrian law).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Media owner and responsible for the content:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Florian Probst&lt;br&gt;
Hauptstraße 59, Neusiedl&lt;br&gt;
2763 Waidmannsfeld&lt;br&gt;
Austria&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Contact:&lt;/strong&gt; &lt;a href="mailto:kontakt@flooo.pro"&gt;kontakt@flooo.pro&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Editorial orientation:&lt;/strong&gt; Private, non-commercial blog about tech, garden
and related topics — notes from the workbench and homelab.&lt;/p&gt;</description></item><item><title>Privacy</title><link>https://flooo.pro/en/datenschutz/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://flooo.pro/en/datenschutz/</guid><description>&lt;p&gt;&lt;strong&gt;Last updated: July 2026&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The short version first: this website is a static blog. It sets no cookies,
uses no trackers and no analytics services, embeds nothing from third-party
servers, and never asks you to enter personal data. The only optional
exception is push notifications — and those exist only if you explicitly
enable them. What is processed technically when you visit is listed below,
in full and without fine print.&lt;/p&gt;</description></item><item><title>Subscribe</title><link>https://flooo.pro/en/subscribe/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://flooo.pro/en/subscribe/</guid><description>&lt;p&gt;Two ways, no mailing list:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;RSS&lt;/strong&gt; is the classic and most robust option — feed URL: &lt;a href="https://flooo.pro/en/index.xml"&gt;/en/index.xml&lt;/a&gt;.
Works with any feed reader, no account, nothing stored on my end.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Push notifications&lt;/strong&gt; right in your browser when new posts appear. The only
thing stored is your browser&amp;rsquo;s technical push address, on my own server — no
account, no tracking, and you can switch it off here at any time. Delivery is
encrypted and routed through your browser&amp;rsquo;s push service; details are in the
&lt;a href="https://flooo.pro/en/datenschutz/"&gt;privacy notice&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Werkbank Syntax</title><link>https://flooo.pro/en/werkbank-syntax/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://flooo.pro/en/werkbank-syntax/</guid><description>&lt;p&gt;The color scheme behind the code blocks on this site — documented here for
the taking. It follows three rules:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;No red-green axis.&lt;/strong&gt; The palette works with blue (keywords), amber
(strings), teal (numbers and types) and violet (functions) — colors that
stay distinguishable with red-green color vision deficiency.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Every token color reaches WCAG AA&lt;/strong&gt; (at least 4.5:1) on both
backgrounds. Surprisingly few popular schemes manage that — comments are
usually the first casualty.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Meaning never rides on color alone.&lt;/strong&gt; Keywords additionally carry font
weight, comments are italic, diffs keep their +/− prefixes; inserted is
blue, removed is amber — not green and red.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="palette"&gt;Palette&lt;/h2&gt;
&lt;div class="syntax-palette"&gt;
 &lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Role&lt;/th&gt;
 &lt;th&gt;Light&lt;/th&gt;
 &lt;th&gt;Dark&lt;/th&gt;
 &lt;th&gt;Contrast (light / dark)&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 
 &lt;tr&gt;
 &lt;td&gt;Text &amp;amp; operators&lt;/td&gt;
 &lt;td&gt;&lt;span class="swatch" style="background:#1C2127"&gt;&lt;/span&gt; &lt;code&gt;#1C2127&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;span class="swatch swatch-on-dark" style="background:#E8E6E1"&gt;&lt;/span&gt; &lt;code&gt;#E8E6E1&lt;/code&gt;&lt;/td&gt;
 &lt;td class="ratio"&gt;14.2 / 12.7&lt;/td&gt;
 &lt;/tr&gt;
 
 &lt;tr&gt;
 &lt;td&gt;Keywords &amp;amp; builtins&lt;/td&gt;
 &lt;td&gt;&lt;span class="swatch" style="background:#17549C"&gt;&lt;/span&gt; &lt;code&gt;#17549C&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;span class="swatch swatch-on-dark" style="background:#7FB2EC"&gt;&lt;/span&gt; &lt;code&gt;#7FB2EC&lt;/code&gt;&lt;/td&gt;
 &lt;td class="ratio"&gt;6.6 / 7.1&lt;/td&gt;
 &lt;/tr&gt;
 
 &lt;tr&gt;
 &lt;td&gt;Strings&lt;/td&gt;
 &lt;td&gt;&lt;span class="swatch" style="background:#8F4E00"&gt;&lt;/span&gt; &lt;code&gt;#8F4E00&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;span class="swatch swatch-on-dark" style="background:#F0A64A"&gt;&lt;/span&gt; &lt;code&gt;#F0A64A&lt;/code&gt;&lt;/td&gt;
 &lt;td class="ratio"&gt;5.7 / 7.7&lt;/td&gt;
 &lt;/tr&gt;
 
 &lt;tr&gt;
 &lt;td&gt;Numbers, types &amp;amp; constants&lt;/td&gt;
 &lt;td&gt;&lt;span class="swatch" style="background:#0E5D66"&gt;&lt;/span&gt; &lt;code&gt;#0E5D66&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;span class="swatch swatch-on-dark" style="background:#63CFC9"&gt;&lt;/span&gt; &lt;code&gt;#63CFC9&lt;/code&gt;&lt;/td&gt;
 &lt;td class="ratio"&gt;6.6 / 8.5&lt;/td&gt;
 &lt;/tr&gt;
 
 &lt;tr&gt;
 &lt;td&gt;Functions, tags &amp;amp; attributes&lt;/td&gt;
 &lt;td&gt;&lt;span class="swatch" style="background:#5B3E9E"&gt;&lt;/span&gt; &lt;code&gt;#5B3E9E&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;span class="swatch swatch-on-dark" style="background:#C7A6F2"&gt;&lt;/span&gt; &lt;code&gt;#C7A6F2&lt;/code&gt;&lt;/td&gt;
 &lt;td class="ratio"&gt;7.0 / 7.7&lt;/td&gt;
 &lt;/tr&gt;
 
 &lt;tr&gt;
 &lt;td&gt;Comments (italic)&lt;/td&gt;
 &lt;td&gt;&lt;span class="swatch" style="background:#586069"&gt;&lt;/span&gt; &lt;code&gt;#586069&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;span class="swatch swatch-on-dark" style="background:#9AA4AE"&gt;&lt;/span&gt; &lt;code&gt;#9AA4AE&lt;/code&gt;&lt;/td&gt;
 &lt;td class="ratio"&gt;5.6 / 6.3&lt;/td&gt;
 &lt;/tr&gt;
 
 &lt;tr&gt;
 &lt;td&gt;Diff inserted (background)&lt;/td&gt;
 &lt;td&gt;&lt;span class="swatch" style="background:#DCE8F6"&gt;&lt;/span&gt; &lt;code&gt;#DCE8F6&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;span class="swatch swatch-on-dark" style="background:#1E3A5C"&gt;&lt;/span&gt; &lt;code&gt;#1E3A5C&lt;/code&gt;&lt;/td&gt;
 &lt;td class="ratio"&gt;13.1 / 9.3&lt;/td&gt;
 &lt;/tr&gt;
 
 &lt;tr&gt;
 &lt;td&gt;Diff removed (background)&lt;/td&gt;
 &lt;td&gt;&lt;span class="swatch" style="background:#F3E4D3"&gt;&lt;/span&gt; &lt;code&gt;#F3E4D3&lt;/code&gt;&lt;/td&gt;
 &lt;td&gt;&lt;span class="swatch swatch-on-dark" style="background:#4A3517"&gt;&lt;/span&gt; &lt;code&gt;#4A3517&lt;/code&gt;&lt;/td&gt;
 &lt;td class="ratio"&gt;13.0 / 9.3&lt;/td&gt;
 &lt;/tr&gt;
 
 &lt;/tbody&gt;
 &lt;/table&gt;
&lt;/div&gt;

&lt;p&gt;Measured against the code backgrounds &lt;code&gt;#F1F0EB&lt;/code&gt; (light) and &lt;code&gt;#1D232B&lt;/code&gt; (dark).&lt;/p&gt;</description></item></channel></rss>