Hello. I am a passionate Groovy and Java developer based in Tilburg, The Netherlands. My goal is to write software, like Pixar makes movies, BMW makes cars, Bang & Olufsen makes audio and TV systems and Apple makes computers and devices: clean, elegant, user-centered and high quality.

My name is Hubert A. Klein Ikkink. Not a very common name, right? To make things easier I just picked the first letters of my firstname and surname and came up with haki. So there you have it, now I am known as Mr. Haki or mrhaki for short. The following Groovy code shows this:

assert ['Hubert', 'Alexander', 'Klein', 'Ikkink'].inject('mr') { nickname, name ->
    nickname + name[0].toLowerCase()
} == 'mrhaki'

Or in Clojure code:

  (= "mrhaki"
     (reduce (fn [nickname name] (str nickname (clojure.string/lower-case (first name))))
             ["Hubert" "Alexander" "Klein" "Ikkink"])))

In 2009 I started writing blog posts about Groovy with the name Groovy Goodness. These posts contain small snippets of code explaining core and exotic features of the Groovy language. During the years I wrote about subjects like Grails, Micronaut, Gradle, Spock, Clojure and Asciidoctor.