Nicolas Frankel182 articles
Table of Contents The talksHome Lab – Private Cloud on a budgetLoom is more than virtual threads: Structured Concurrency and Scoped Values15 Productivity tips to accelerate your Apache Maven buildsTake the Polar Plunge: A Fearless Introduction to Apache Iceberg®Epic App …

- Nicolas Frankel
-
GitHub workflows tips and tricks
Table of Contents What are GitHub workflows?GitHub ActionsChoosing the right ActionKnow your ActionsPin your dependency versionUse the job summaryUnderstand workflows’ lifecycleTest locallySummary I’ve quite a lengthy experience with GitHub workflows, but not up to the point where I can claim …
- Nicolas Frankel
-
Git default options
Table of Contents git pushgit rebase Git has become a fundamental part of our developers’ daily routine that it’s hard to remember our lives without it. And yet, most of us use a limited set of commands and options. Today, …
- Nicolas Frankel
-
OpenTelemetry configuration gotchas
Table of Contents The promise of OpenTelemetryGotchasPath or no path?Python loggingMicrometer TracingQuarkusSummary Last week, I described several approaches to OpenTelemetry on the JVM, their requirements, and their different results. This week, I want to highlight several gotchas found across stacks …
- Nicolas Frankel
-
OpenTelemetry Tracing on the JVM
Table of Contents CommonalitiesRunning the OpenTelemetry AgentMicrometer Tracing on Spring BootOpenTelemetry Spring Boot StarterQuarkusDiscussion You may know I’m a big fan of OpenTelemetry. I recently finished developing a master class for the YOW! conference at the end of the year. …
- Nicolas Frankel
-
Pattern-matching across different languages
Table of Contents Java’s pattern matchingCharacteristics of the new switch syntaxScala’s pattern matchingKotlin’s pattern matchingPython’s pattern matchingRust’s pattern matchingConclusion Pattern matching is a major feature in software development. While pattern matching applies in several locations, its current usage is limited …
- Nicolas Frankel
-
Testing an OpenRewrite Recipe
Table of Contents The naive approachThe nominal approachDon’t forget cyclesCriticismsConclusion For the last two weeks, I’ve kicked the tires of OpenRewrite. At first, I created a recipe to move Kotlin source files as per the official recommendations with a set …
- Nicolas Frankel
-
Book Review: Writing for Developers
Table of Contents FactsChaptersPros and consSummary Disclaimer: This post includes affiliate links; I may receive compensation if you purchase the book from the different links provided in this post. This review is about Writing for Developers by Piotr Sarna and …
- Nicolas Frankel
-
Authoring an OpenRewrite Recipe
Table of Contents My use caseRecipe basicsPutting it all togetherTesting the recipePotential future worksConclusion I’ve been eying OpenRewrite for some time, but I haven’t had time to play with it yet. In case you never heard about OpenRewrite, OpenRewrite takes …
- Nicolas Frankel
-
Cloudflare Tunnel for Home Assistant
Table of Contents The initial setupCloudflare Tunnel for Home AssistantRemoving Let’s Encrypt add-onConclusion I continue to take care of my Home Assistant. This week, I replaced my original setup with Cloudflare Tunnel. This is the 6th post in the My …
- Nicolas Frankel
-
Getting a single value from a device’s state in Home Assistant
I recently acquired Netatmo smart radiator valves to manage my rooms’ temperature remotely. I’m not skilled at manual tasks, but I could easily replace the old thermo-static valves. I then registered the smart ones in the Netatmo app. Finally, I …
- Nicolas Frankel