Hubert Klein Ikkink's Avatar

Hubert Klein Ikkink

@mrhaki.com

Love to develop applications with gr8 technologies at JDriven. Interested in #java, #groovy, #clojure, #kotlin, #asciidoctor, #micronaut, #gradle. 
https://www.mrhaki.com πŸ‡³πŸ‡±πŸ‡ͺπŸ‡ΊπŸ³οΈβ€πŸŒˆ

236
Followers
756
Following
58
Posts
19.11.2024
Joined
Posts Following

Latest posts by Hubert Klein Ikkink @mrhaki.com

Post image

Your JPA entities don’t crash when equals() is wrong.

They lie.

They disappear from HashSet.
They duplicate in caches.
They fail across transactions.

I wrote a deep dive on production-safe equals() + hashCode() for #Quarkus & #Panache β€” with real tests and EqualsVerifier.

buff.ly/koCNR4h

#Java

06.03.2026 07:15 πŸ‘ 5 πŸ” 3 πŸ’¬ 0 πŸ“Œ 0

I hate the re-soloing of development. We were so close to learning social skills, creating community, encouraging creativity & purpose, & applying empathy. Easier to manage if each of us is so busy with our genieswarms that we don't have time to talk & reflect.

03.03.2026 13:59 πŸ‘ 115 πŸ” 39 πŸ’¬ 8 πŸ“Œ 4
Preview
Secure Your Spring Boot Apps Using Keycloak and OIDC This blog explores integrating Spring Security with Keycloak using OpenID Connect. It provides examples and unit tests to facilitate understanding authentication and authorization in Spring applica…

In this blog, you will take a closer look at Spring Security. More specifically Spring Security in combination with Keycloak using OpenID Connect. All supported by means of examples and unit tests. Enjoy!
#java #springboot

03.03.2026 17:08 πŸ‘ 1 πŸ” 2 πŸ’¬ 0 πŸ“Œ 0
Maarten discussing the OpenTemetry Maven Extension

Maarten discussing the OpenTemetry Maven Extension

Benjamin explaining the order in which Surefire runs your tests and the impact it may have on the overall performance of your build.

Benjamin explaining the order in which Surefire runs your tests and the impact it may have on the overall performance of your build.

Last night, @bmarwell.de and I had a nice dress rehearsal for our talk at @javaland.bsky.social next week.

Looking for practical guidance on how to improve the performance of your Maven build? Join us next week on Wednesday, 14:00 to learn more!

03.03.2026 10:46 πŸ‘ 4 πŸ” 3 πŸ’¬ 1 πŸ“Œ 0

OAuth 2.0 and OIDC Explained with UML
A blog by Ronald

The purpose of Open Authorization 2.0 (OAuth 2.0) is...

#dev #softwaredevelopment #Security #OpenIDConnect #UML #Authentication #OAuth2.0 #OIDC #Authorization #SSO #SingleSign-On

https://jdriven.com/blog/2026/03/OAuth-2.0-Explained-with-UML/

04.03.2026 07:07 πŸ‘ 1 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Preview
Nushell Niceties: Transform Values Into Semver Types A blog about Groovy, Java, Clojure, Asciidoctor, Gradle and other cool developer subjects.

Transform a string or record to a semantic version type in #Nushell: blog.mrhaki.com/2026/02/nush...

04.03.2026 06:24 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Arconia CLI
Supercharge Your Spring Boot Workflow

brew install arconia-io/tap/arconia-cli

# Run your Spring Boot application during development
arconia dev

# Build your application as a native executable
arconia build --native

# Run tests for your Java application
arconia test

# Build a container image using Cloud Native Buildpacks
arconia image build buildpacks --image-name ghcr.io/thomasvitale/myapp

# Migrate your application to Spring Boot 4.0
arconia update spring-boot --to-version 4.0

Arconia CLI Supercharge Your Spring Boot Workflow brew install arconia-io/tap/arconia-cli # Run your Spring Boot application during development arconia dev # Build your application as a native executable arconia build --native # Run tests for your Java application arconia test # Build a container image using Cloud Native Buildpacks arconia image build buildpacks --image-name ghcr.io/thomasvitale/myapp # Migrate your application to Spring Boot 4.0 arconia update spring-boot --to-version 4.0

The new version of the Arconia CLI is now out, ready to supercharge your Spring Boot workflow πŸš€ The CLI uses Java 25, Spring Boot 4, and is now powered by @picocli.bsky.social after migrating from Spring Shell. It's released as a native executable with @graalvm.org and released with @jreleaser.org.

03.03.2026 21:37 πŸ‘ 8 πŸ” 6 πŸ’¬ 2 πŸ“Œ 0
GitHub - jagodevreede/sdkman-ui: Graphical User Interface for SDKMAN. Graphical User Interface for SDKMAN. Contribute to jagodevreede/sdkman-ui development by creating an account on GitHub.

This is one of the reasons I've created a ui (that also launches via the command line) github.com/jagodevreede... #shamelessPlug

03.03.2026 15:01 πŸ‘ 1 πŸ” 1 πŸ’¬ 1 πŸ“Œ 0

Flyway the Right Way
A blog by Ronald

Sometimes when you upgrade your application the new version does not work correctly, and you need to downgrade. When...

#dev #softwaredevelopment #SoftwareDevelopment #DatabaseManagement #Flyway #Rollback

https://jdriven.com/blog/2026/03/Flyway-the-Right-Way/

03.03.2026 07:07 πŸ‘ 0 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0

Nushell Niceties: Checking If Value Is In List Or String Or Key In Record
A blog by @mrhaki.com

Nushell has the in operator to check if a value is an...

#dev #softwaredevelopment #Nushell

https://jdriven.com/blog/2026/03/Nushell-Niceties-Checking-If-Value-Is-In-List-Or-String-Or-Key-In-Record/

03.03.2026 07:07 πŸ‘ 0 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Preview
Tales from the jar side: A Nano Banana Skill, UI Testing made simple, Anthropic vs Pentagon, Anthropic vs China, DevNexus, and the usual Social Media silliness I made a paper airplane, but it wouldn't fly. It's just stationary. (rimshot)

Tales from the jar side: A Nano Banana Skill, UI Testing made simple, Anthropic vs Pentagon, Anthropic vs China, DevNexus, and the usual Social Media silliness open.substack.com/pub/kenkouse...

01.03.2026 22:37 πŸ‘ 2 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Preview
JReleaser 1.23.0 has been released! JReleaser v1.23.0 has just been released! The full list of issues can be found at the v1.23.0 milestone. This is a small release with a handful of fixes and just a couple of new features. We’…

JReleaser 1.23.0 has beenΒ released! andresalmiray.com/jreleaser-1-...

02.03.2026 09:02 πŸ‘ 1 πŸ” 2 πŸ’¬ 0 πŸ“Œ 0
Post image

* taps the sign *

27.02.2026 04:43 πŸ‘ 11 πŸ” 5 πŸ’¬ 0 πŸ“Œ 0
Post image

#LibreOffice 26.2.1 is here – the first minor update to our newest stable branch: blog.documentfoundation.org/blog/2026/02... #foss #opensource #freesoftware

26.02.2026 12:34 πŸ‘ 46 πŸ” 16 πŸ’¬ 2 πŸ“Œ 1
Original post on social.tchncs.de

Just remembered something I had completely forgotten. We don’t need `-Dfile.encoding=UTF-8` in Java startup scripts anymore. This has been the case since JDK 18, where UTF-8 was set to be the default encoding. I'm on JDK 25 now, so time to cleanup a bit.

https://openjdk.org/jeps/400

#java #jvm […]

26.02.2026 13:33 πŸ‘ 3 πŸ” 2 πŸ’¬ 1 πŸ“Œ 0
Preview
Building Safer AI Agents with Structured Outputs | Snyk

Not everything needs to be a chatbot.
Parsing free-form LLM output after the fact is building on quicksand.

Use REAL structured output. Schema-enforced generation. No β€œplease respond in JSON” hacks.

Combine this Snyk Code + Snyk EVO in AI-driven workflows.

snyk.io/articles/bui...

25.02.2026 11:25 πŸ‘ 0 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Preview
Code Remix Weekly | Break your testing habits part 2 Part 2 of the Break Your Testing Habits series is all about leveling up your JUnit skills. βœ…We’ll cover how to upgrade smoothly, apply modern best practices,...

Tune into Code Remix Weekly today for part 2 of the "Break your testing habits" series. βœ…

We’ll cover how to upgrade Junit smoothly, apply modern best practices, and explore powerful newer features in JUnit 5.14 and 6.

πŸ”΄ Watch live at 21:00 CET / 3 PM ET

25.02.2026 17:04 πŸ‘ 1 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Preview
Apache NetBeans 29 Released with Java, PHP, and Git Enhancements Apache NetBeans 29 cross-platform IDE released with Java performance improvements, PHP fixes, and updated Git integration.

Apache NetBeans 29 Released with Java, PHP, and Git Enhancements

#apache #ide #java #netbeans #php

linuxiac.com/apache-net...

25.02.2026 23:49 πŸ‘ 3 πŸ” 3 πŸ’¬ 0 πŸ“Œ 0
Release 3.25.0 Β· openrewrite/rewrite-recipe-bom What's Changed Incorporates the latest versions of OpenRewrite (v8.74.1), the rewrite-gradle-plugin (v7.27.0), and the rewrite-maven-plugin (v6.30.0) to improve code parsing accuracy and recipe ex...

#OpenRewrite v8.74.1 is out! πŸš€

πŸ€” Prethink for Node.js
βœ… Various AssertJ & Hamcrest fixes
πŸ”§ Jackson 3 @JsonIgnore & IOException fixes
🟣 Kotlinx, Androidx, Jetpack Compose & Exposed recipes
πŸƒ MockMvc to AssertJ conversion
✈️ JBoss to Jetty migration
πŸ› Spring Security fixes

github.com/openrewrite/...

25.02.2026 21:55 πŸ‘ 5 πŸ” 3 πŸ’¬ 0 πŸ“Œ 0

Kotlin protip: indexed access operator overloading with multiple indices
A blog by Riccardo

Operator overloading is one of Kotlin’s most beloved features. It lets you give...

#dev #softwaredevelopment #kotlin

https://jdriven.com/blog/2026/02/Kotlin-protip-indexed-access-operator-overloading/

25.02.2026 07:07 πŸ‘ 1 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0
Preview
Code Remix Weekly | Break your testing habits part 2 Part 2 of the Break Your Testing Habits series is all about leveling up your JUnit skills. βœ…We’ll cover how to upgrade smoothly, apply modern best practices,...

The "Break your testing habits" series continues tomorrow on Code Remix Weekly. πŸ“š

In part 2, level up your Junit skills, including upgrading smoothly, applying modern best practices, and exploring powerful newer features in JUnit 5.14 & 6.

πŸ”΄ Watch live tomorrow ‡️

24.02.2026 11:30 πŸ‘ 3 πŸ” 2 πŸ’¬ 0 πŸ“Œ 0

Bonus: From Java to Kotlin – Part XII: Sealed Classes vs Enums / Polymorphism
A blog by Justus

Considering a move to Kotlin? Coming from a Java...

#dev #softwaredevelopment #java #kotlin #designpatterns

https://jdriven.com/blog/2026/02/Java-To-Kotlin-Series-12-sealed-classes-and-enums/

24.02.2026 08:07 πŸ‘ 1 πŸ” 2 πŸ’¬ 0 πŸ“Œ 0
Post image

Apache Grails 7.0.6 is now available for download: buff.ly/NOrtGXP

Grails is a powerful Groovy-based web application framework for the JVM, built on top of Spring Boot, and supported by a rich ecosystem of plugins that extend its functionality. #opensource

24.02.2026 02:45 πŸ‘ 3 πŸ” 2 πŸ’¬ 0 πŸ“Œ 0
Preview
Research is leadership, and code can help (but only in the right places) Code was never the blocker in delivering customer value β€” and the easier writing code becomes, the more it distracts from the work we must do to unblock productivity.

You often hear "software development is changing, and we must adapt" because of Claude Code.

But for my entire career, code has been the *easiest* part of making shit people care about, and we still haven't adapted.

The easier coding becomes, the less often we ask "do users actually NEED this?"

22.02.2026 20:54 πŸ‘ 271 πŸ” 55 πŸ’¬ 10 πŸ“Œ 8

these people’s brains are fully cooked

24.02.2026 02:17 πŸ‘ 195 πŸ” 25 πŸ’¬ 13 πŸ“Œ 1

From Java to Kotlin – Part XI: The Builder Pattern vs Type-safe Builders / DSL
A blog by Justus

Considering a move to Kotlin? Coming from a Java background? In this short...

#dev #softwaredevelopment #java #kotlin #designpatterns

https://jdriven.com/blog/2026/02/Java-To-Kotlin-Series-11-builders/

23.02.2026 08:07 πŸ‘ 4 πŸ” 3 πŸ’¬ 0 πŸ“Œ 0

Running COBOL in IntelliJ
A blog by Jacob

Within the JVM community, once in a while somebody jokes about getting old and therefore needing to start learning COBOL. Usually, someone responds...

#dev #softwaredevelopment #intellijidea #ide

https://jdriven.com/blog/2026/02/Running-COBOL-in-IntelliJ/

21.02.2026 16:07 πŸ‘ 1 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0

Digital Sovereignty, A Dutch company's dilemma in the age of US hyperscalers
A blog by Erik

If you run into a wall, don’t turn around and give up. Figure out how to climb it, go through it, or work...

#dev #softwaredevelopment #Teachradar

https://jdriven.com/blog/2026/02/Digital-Sovereignty/

22.02.2026 09:07 πŸ‘ 1 πŸ” 1 πŸ’¬ 0 πŸ“Œ 0

From Java to Kotlin – Part X: Virtual Threads and Coroutines
A blog by Justus

Considering a move to Kotlin? Coming from a Java background? In this short series of blog posts,...

#dev #softwaredevelopment #java #kotlin #concurrency

https://jdriven.com/blog/2026/02/Java-To-Kotlin-Series-10-Threads/

20.02.2026 08:07 πŸ‘ 1 πŸ” 3 πŸ’¬ 0 πŸ“Œ 0

I built a terminal UI for Spring Initializr using Java. If you spend most of your day in the terminal, this could seriously speed up your workflow.

https://youtu.be/J9C2MiQTIYs

19.02.2026 22:41 πŸ‘ 10 πŸ” 4 πŸ’¬ 1 πŸ“Œ 0