<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"><channel><description>Nicolas Fränkel&#39;s blog&#xA;&#xA;🌉 bridged from 🌐 https://blog.frankel.ch/: https://fed.brid.gy/web/blog.frankel.ch</description><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy</link><title>@blog.frankel.ch.web.brid.gy - A Java geek [Unofficial]</title><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3mudfp4xrj5b2</link><description>&#xA;https://blog.frankel.ch/ai-assisted-genealogy/</description><pubDate>30 Aug 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3mudfp4xrj5b2</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3mtrsghcqenf2</link><description>&#xA;https://blog.frankel.ch/security-baked-into-jvm/4/</description><pubDate>23 Aug 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3mtrsghcqenf2</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3mta75yzniho2</link><description>&#xA;https://blog.frankel.ch/gradle-metadata-renovate-integration/</description><pubDate>16 Aug 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3mta75yzniho2</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3msolvhe5oag2</link><description>&#xA;https://blog.frankel.ch/security-baked-into-jvm/3/</description><pubDate>09 Aug 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3msolvhe5oag2</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3ms4ymx3uddb2</link><description>&#xA;https://blog.frankel.ch/github-agentic-workflow-renovate/</description><pubDate>02 Aug 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3ms4ymx3uddb2</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3mrlfefqu3fz2</link><description>&#xA;https://blog.frankel.ch/rfc-9880-iot-validation-compiler/</description><pubDate>26 Jul 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3mrlfefqu3fz2</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3mqzs3uyvoot2</link><description>&#xA;https://blog.frankel.ch/security-baked-into-jvm/2/</description><pubDate>19 Jul 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3mqzs3uyvoot2</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3mqi6taakmtn2</link><description>&#xA;https://blog.frankel.ch/serviceloader-provider-factory/</description><pubDate>12 Jul 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3mqi6taakmtn2</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3mpwlkm5qbew2</link><description>&#xA;https://blog.frankel.ch/home-assistant/9/</description><pubDate>05 Jul 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3mpwlkm5qbew2</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3mpeybyrggul2</link><description>&#xA;https://blog.frankel.ch/security-baked-into-jvm/1/</description><pubDate>28 Jun 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3mpeybyrggul2</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3motez2cdygc2</link><description>&#xA;https://blog.frankel.ch/programming-languages-targets-platforms/</description><pubDate>21 Jun 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3motez2cdygc2</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3mobrqjx4c752</link><description>&#xA;https://blog.frankel.ch/bigdecimal-vs-double/</description><pubDate>14 Jun 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3mobrqjx4c752</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3mnq6hxa5eoi2</link><description>&#xA;https://blog.frankel.ch/seasons-time-lapse/3/</description><pubDate>07 Jun 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3mnq6hxa5eoi2</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3mn6l7ag3ws62</link><description>&#xA;https://blog.frankel.ch/ai-gateways/</description><pubDate>31 May 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3mn6l7ag3ws62</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3mmmxwljyja42</link><description>&#xA;https://blog.frankel.ch/seasons-time-lapse/2/</description><pubDate>24 May 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3mmmxwljyja42</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3mm3eoau7xwr2</link><description>&#xA;https://blog.frankel.ch/seasons-time-lapse/1/</description><pubDate>17 May 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3mm3eoau7xwr2</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3mljrfgylsyl2</link><description>&#xA;https://blog.frankel.ch/tokensparsamkeit-coding-assistants/</description><pubDate>10 May 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3mljrfgylsyl2</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3mky64s7tyjj2</link><description>&#xA;https://blog.frankel.ch/design-team-agents/</description><pubDate>03 May 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3mky64s7tyjj2</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3mkgkuej57tb2</link><description>&#xA;https://blog.frankel.ch/mastodon-cloudflare-bot-protection/</description><pubDate>26 Apr 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3mkgkuej57tb2</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3mjuxez7lm3i2</link><description>&#xA;https://blog.frankel.ch/illegal-state-unrepresentable/</description><pubDate>19 Apr 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3mjuxez7lm3i2</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3mjde4emtqgf2</link><description>&#xA;https://blog.frankel.ch/agentic-github-workflows/</description><pubDate>12 Apr 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3mjde4emtqgf2</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3mia5ldlky2r2</link><description>&#xA;https://blog.frankel.ch/tip-opentelemetry-projects/</description><pubDate>29 Mar 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3mia5ldlky2r2</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3mhokchn3gqd2</link><description>&#xA;https://blog.frankel.ch/software-architect-elevator/</description><pubDate>22 Mar 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3mhokchn3gqd2</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3mh4wzvu3lyp2</link><description>&#xA;https://blog.frankel.ch/writing-agent-skill/</description><pubDate>15 Mar 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3mh4wzvu3lyp2</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3mgldrflv26i2</link><description>&#xA;https://blog.frankel.ch/pi-hole-tailscale/</description><pubDate>08 Mar 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3mgldrflv26i2</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3mfzqilpzll72</link><description>&#xA;https://blog.frankel.ch/ready-to-use-virtual-clusters/</description><pubDate>01 Mar 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3mfzqilpzll72</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3mfi57eqitxl2</link><description>&#xA;https://blog.frankel.ch/jvm-timing-options/</description><pubDate>22 Feb 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3mfi57eqitxl2</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3mewjwp5y4p42</link><description>&#xA;https://blog.frankel.ch/migrating-jekyll-hugo/</description><pubDate>15 Feb 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3mewjwp5y4p42</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3meewnw7ryod2</link><description>&#xA;https://blog.frankel.ch/rediscovering-java-serviceloader/</description><pubDate>08 Feb 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3meewnw7ryod2</guid></item><item><link>https://bsky.app/profile/blog.frankel.ch.web.brid.gy/post/3mdtdf6y6frb2</link><description>&#xA;https://blog.frankel.ch/feedback-checked-exceptions-lambdas/</description><pubDate>01 Feb 2026 00:00 +0000</pubDate><guid isPermaLink="false">at://did:plc:zxuisucsqyugb2obbzu7ccix/app.bsky.feed.post/3mdtdf6y6frb2</guid></item></channel></rss>