Testing the Untestable: A Simple Way to Handle Static Methods in Legacy Java Post date October 24, 2025 Post author By Nicolas Frankel Post categories In code-testing, coding, dependency-injection, java, programming, testable-design, testing, writing-testable-code
Testing the untestable Post date October 23, 2025 Post author By Nicolas Frankel Post categories In coding, java, programming, testing
Understanding Dependency Injection in Object-Oriented Programming Post date October 16, 2025 Post author By Nicolas Frankel Post categories In dependency-injection, dependency-injection-in-oop, dependency-management, kotlin-context-parameters, object-oriented, object-oriented-design, object-oriented-programming, parameter-passing
On dependencies in objects Post date October 16, 2025 Post author By Nicolas Frankel Post categories In coding, oop
Privacy for Subdomains: Here’s What You Should Be Focusing On Post date October 2, 2025 Post author By Nicolas Frankel Post categories In dns, internet-privacy, letsencrypt, privacy, subdomain-privacy, synology, synology-nas, TLS
The Day I Learned My NAS Was Traceable Through TLS Logs Post date September 25, 2025 Post author By Nicolas Frankel Post categories In cloudflare, dns, hackernoon-top-story, letsencrypt, networking, privacy, TLS, tls-certificate
Transitive Dependency Version Resolution in Rust and Java: Comparing the Two Post date September 21, 2025 Post author By Nicolas Frankel Post categories In cargo, dependency-management, dependency-resolution, java, maven, rust, rust-vs-java, transitive-dependency
Object Creation: The Issues I Faced and the Patterns That Helped Me Post date September 4, 2025 Post author By Nicolas Frankel Post categories In builder-design-pattern, design patterns, factory-design-pattern, hackernoon-top-story, java, maintainable-code, object-oriented-programming, oop-design-patterns
Thoughts on object creation Post date September 4, 2025 Post author By Nicolas Frankel Post categories In coding, designpatterns, gof, oop
Thoughts on object creation Post date September 4, 2025 Post author By Nicolas Frankel Post categories In coding, designpatterns, gof, oop
A Practical Guide to Building Smarter GitHub Workflows Post date August 30, 2025 Post author By Nicolas Frankel Post categories In github, github workflow, github-actions, github-actions-workflow, github-workflow-automation, hackernoon-top-story, smarter-github-workflows, tips-and-tricks
My Experience With KCDC 2025: Is It Worth Going to? Post date August 23, 2025 Post author By Nicolas Frankel Post categories In apache-maven-builds, devops-days-kansas-city, hackernoon-top-story, homelab, kansas-city, kcdc-2025, loom, tech-conferences
My Experience With KCDC 2025: Is It Worth Going to? Post date August 23, 2025 Post author By Nicolas Frankel Post categories In apache-maven-builds, devops-days-kansas-city, hackernoon-top-story, homelab, kansas-city, kcdc-2025, loom, tech-conferences
A Guide to OpenTelemetry Tracing for the JVM Post date August 8, 2025 Post author By Nicolas Frankel Post categories In coroutines, distributed-tracing, Kotlin, opentelemetry, opentelemetry-traces, opentelemetry-tracing, quarkus, spring-boot
OpenTelemetry Tracing on the JVM Post date August 7, 2025 Post author By Nicolas Frankel Post categories In jvm, Kotlin, observability, opentelemetry
Comparing Pattern-Matching Across Different Languages: Java, Scala, and More Post date July 25, 2025 Post author By Nicolas Frankel Post categories In hackernoon-top-story, java, java-pattern-matching, Kotlin, pattern-matching, python, rust, scala
Home Assistant: How to Replace the Explicit Grouping of Devices by Areas Post date July 17, 2025 Post author By Nicolas Frankel Post categories In Automation, configuration, home-assistant, home-assistant-configuration, home-assistant-entities, home-assistant-guide, home-automation, smart-home-devices
Loosely coupled configuration for Home Assistant Post date July 17, 2025 Post author By Nicolas Frankel Post categories In configuration, homeassistant, homeautomation, Tooling
I Tested an OpenRewrite Recipe: The Mistakes I Made and How to Fix Them Post date June 26, 2025 Post author By Nicolas Frankel Post categories In Kotlin, low-leverl-apis, openrewrite, openrewrite-low-level-apis, openrewrite-recipe, openrewrite-testing-classes, rewrite-test, testing
Testing an OpenRewrite recipe Post date June 26, 2025 Post author By Nicolas Frankel Post categories In coding, Kotlin, openrewrite, testing
My First Steps With Crossplane: Crossplane 101 Post date May 8, 2025 Post author By Nicolas Frankel Post categories In crossplane, devops, gcp, gke, Google Cloud Platform, google-kubernetes-engine, infrastructure-as-code, kubernetes
Revisiting LangChain4J 6 Months Later Post date May 1, 2025 Post author By Nicolas Frankel Post categories In ai, hackernoon-top-story, langchain4j, llm, mcp, model-context-protocol, ollama, project-reactor-integration
Waiting: The Subtle Art That You Should Master Post date April 25, 2025 Post author By Nicolas Frankel Post categories In hackernoon-top-story, kubernetes, system-architecture, system-design, wait4x, wait4x-guide, waiting, what-is-wait4x
Rust’s Build.rs Might Be the Most Underrated Feature in Cargo Post date April 17, 2025 Post author By Nicolas Frankel Post categories In build-flags-in-rust, configuration-management, high-cardinality-values, programming-tips, rust, rustlang, TIL
A Kubernetes Special: Even More OpenTelemetry to Chew On Post date April 11, 2025 Post author By Nicolas Frankel Post categories In helm, helm-chart, kubernetes, opentelemetry, opentelemetry-operators, opentelemetry-traces, opentelemtry-collector, quarkus
Mutation Testing: How Does it Work in Rust? Post date April 5, 2025 Post author By Nicolas Frankel Post categories In mutation, mutation-testing, open source, open source software, rust, rust-testing, rustlang, what-is-mutation-testing
WebAssembly on Kubernetes: What You Need to Know Post date March 8, 2025 Post author By Nicolas Frankel Post categories In adapting-to-webassembly, containerd, kubernetes, wasm, wasmedge, WebAssembly, webassembly-guide, webassembly-tutorial
This DevOps Fix Cuts Kubernetes Test Times from 7 Minutes to 1 Post date February 27, 2025 Post author By Nicolas Frankel Post categories In cicd, cluster-isolation, github workflow, kubernetes, kubernetes-cluster, test-automation, testing, vcluster
Pull request testing on Kubernetes: vCluster for isolation and costs control Post date February 27, 2025 Post author By Nicolas Frankel Post categories In devops, kubernetes, testing
GitHub Actions Meets Kubernetes: How to Test PRs on GKE Without Losing Your Mind Post date February 20, 2025 Post author By Nicolas Frankel Post categories In end-to-end-testing, github-actions, github-actions-workflow, Google Cloud Platform, google-ku, google-kubernetes-engine, kubernetes, testing
Pull Request Testing on Kubernetes: How to Test Locally and on GitHub Workflows Post date February 14, 2025 Post author By Nicolas Frankel Post categories In Continuous Integration, flyway, github-actions-workflow, github-workflow-automation, integration-testing, Kotlin, testcontainers, testing
Remote Development Made Simple With DevPod – A Free, Open-Source Tool Post date February 8, 2025 Post author By Nicolas Frankel Post categories In cloud, cloud-development-environment, devpod, hackernoon-top-story, ide, open-source-tools, remote-development-environment, what-is-devpod
Your First Programming Language Greatly Influences How You Think About Code Post date February 2, 2025 Post author By Nicolas Frankel Post categories In coding, hackernoon-top-story, inheritance, inheritance-in, object, object-oriented-programming, programming, programming-languages
Playwright: My First Steps With the Browser Automation Tool Post date January 26, 2025 Post author By Nicolas Frankel Post categories In browser-automation, hackernoon-top-story, playwright, playwright-guide, python, tracking-metrics, web-scraping, web-scraping-with-python
The Home Assistant Companion App: How to Integrate it to Your Device Post date January 18, 2025 Post author By Nicolas Frankel Post categories In home-assistant, home-assistant-app, home-automation, ios, ios-apps, Smart Home, smart-home-automation, smarthome
2024: A Retrospective Post date January 9, 2025 Post author By Nicolas Frankel Post categories In 2024, 2024-personal-journey, 2024-retrospective, 2024-summary, 2024-year-in-review, looking-back-at-2024, my-2024, retrospective
Adaptive Lighting – An Example of HACS Post date January 3, 2025 Post author By Nicolas Frankel Post categories In adaptive-lighting, hackernoon-top-story, hacs, home-assistant, philips-hue, Smart Home, smart-home-automation, what-is-adaptive-lightning
Why Choose Home Assistant? Post date November 30, 2024 Post author By Nicolas Frankel Post categories In assistance, assistant-devices, Automation, home-assistant, home-automation, Smart Home, smart-home-automation, what-is-home-assistant
DuckDB in Action: A Review Post date November 7, 2024 Post author By Nicolas Frankel Post categories In book, book-reviews, data-analytics, database, duckdb, duckdb-book, michael-simons, tech-book-review
Comparing Vue.js, Alpine.js, HTMX, and Vaadin: A Backend Developer’s Guide to AJAX and SSR Post date October 24, 2024 Post author By Nicolas Frankel Post categories In ajax, ajax-frameworks, alpine.js, alpinejs, ssr, Vaadin, vuejs, web-development-tools
What You Need to Know About Vaadin – The Battery-Included Server-Side AJAX Framework Post date October 17, 2024 Post author By Nicolas Frankel Post categories In ajax, ajax-framework, hackernoon-top-story, karibu, Kotlin, ssr, Vaadin, what-is-vaadin
Augmenting the Client With HTMX Post date October 10, 2024 Post author By Nicolas Frankel Post categories In ajax, coding, htmx, programming, server-side-rendering, ssr, webdev, webdevelopment
Augmenting the Client With Alpine.js Post date October 3, 2024 Post author By Nicolas Frankel Post categories In ajax, alpine.js, alpinejs, augmenting-the-client, augmenting-with-alpine.js, server-side-rendering, ssr, web-development
Augmenting the Client With Vue.js Post date September 26, 2024 Post author By Nicolas Frankel Post categories In ajax, augmenting-ssr-with-vue, first-steps-into-vue, hackernoon-top-story, ssr, ssr-app-with-vue, vue-for-beginners, vuejs
Augmenting the client with Vue.js Post date September 26, 2024 Post author By Nicolas Frankel Post categories In ajax, ssr, tutorial, vue
How to Server-Side Render With Spring Boot Post date September 22, 2024 Post author By Nicolas Frankel Post categories In hackernoon-top-story, Kotlin, server-side-rendering, spring-boot, spring-boot-guide, ssr, thymeleaf, webjars
An Abbreviated History of AJAX and SSR Post date September 12, 2024 Post author By Nicolas Frankel Post categories In ajax, architecture, client-server-architecture, coding, dhtml, java, programming, ssr
A short history of AJAX and SSR Post date September 12, 2024 Post author By Nicolas Frankel Post categories In ajax, coding, programming, ssr
How to DRY Your Apache APISIX Config Post date September 5, 2024 Post author By Nicolas Frankel Post categories In apache-apisix, configuration-management, dont-repeat-yourself, dry-in-apache-apisix, dry-principle, dry-upstreams, hackernoon-top-story, what-is-the-dry-principle
OpenTelemetry: Unraveling @WithSpan in Kotlin Coroutines and the JVM Post date August 22, 2024 Post author By Nicolas Frankel Post categories In @withspan, analysis, coroutines, devops, Kotlin, observability, opentelemetry, reactive-programming
Default Values for Absent Keys: A Cross-Language Guide to Hash Map Querying Post date August 15, 2024 Post author By Nicolas Frankel Post categories In coding, dictionary, hash, hashmap, java, Kotlin, programming, programming-languages
OpenTelemetry Tracing in Spring Boot: Choosing Between Java Agent and Micrometer Tracing Post date August 11, 2024 Post author By Nicolas Frankel Post categories In devops, distributed-tracing, hackernoon-top-story, Kotlin, micrometer, observability, opentelemetry, spring-boot
OpenTelemetry Tracing on Spring Boot, Java Agent vs. Micrometer Tracing Post date August 8, 2024 Post author By Nicolas Frankel Post categories In Kotlin, opentelemetry, springboot, tracing
Implementing a Free Tier API: Route Matching with Apache APISIX Post date August 1, 2024 Post author By Nicolas Frankel Post categories In apache, apache-apisix, apis, consumer, consumer-group, how-to-make-a-free-tier, http-api, route-matching
Advanced Rate Limiting with Apache APISIX: Optimizing API Gateway Performance Post date July 25, 2024 Post author By Nicolas Frankel Post categories In apache-apisix, api-gateway, api-rate-limiting, consumer, consumer-groups, devops, devops-tools, rate-limiting
Differentiating rate limits in Apache APISIX Post date July 25, 2024 Post author By Nicolas Frankel Post categories In apacheapisix, api, ratelimiting
Improving No-Code APIs with PostgreSQL, PostgREST, and Apache APISIX Post date July 19, 2024 Post author By Nicolas Frankel Post categories In apache-apisix, apache-apisix-plugin, no-code-api, pgday, rewriting, url, url-rewrite, urls
Dynamic Image Watermarking Made Simple with imgproxy and Apache APISIX Post date July 11, 2024 Post author By Nicolas Frankel Post categories In apache-apisix, create-a-watermark-image, digital-watermarking, dynamic-image-watermarking, how-to-create-a-watermark, image-processing, imgproxy, imgproxy-tutorial
Master Dynamic Watermarking on the Java Virtual Machine Post date July 5, 2024 Post author By Nicolas Frankel Post categories In create-a-watermark-image, digital-watermarking, how-to-create-a-watermark, java-2d-api-tutorial, java2d, jvm, Kotlin, watermark
Mea Culpa, Renovate for Everything Post date June 27, 2024 Post author By Nicolas Frankel Post categories In ci, cicd, Continuous Integration, devops, devops-tools, Kotlin, kotlin-scripting, renovate