Posts by Jacob van Lingen

Having fun with the Java Service Provider Interface

Posted on by  
Jacob van Lingen

Sometimes it happens. You stumble upon something that feels brand new to you — only to find out it’s been around for years. When I joined Moderne and started working with its OpenRewrite framework, this exact thing happened. I discovered the Java Service Provider Interface (SPI), a native mechanism in Java that enables plugin-like extensibility in applications.

Continue reading →

Why you should use Lombok

Posted on by  
Jacob van Lingen

It’s the year 2023. JDriven colleagues have gathered to discuss the new trends and deprecations of our work to put on the latest TechRadar. Once everybody is seated, everyone contributes their latest opinions. Very soon discussions run high. Lombok is dropped at the table of discussion as well. After some debate, it is decided. Lombok is put on HOLD!

Continue reading →

Kotlin Discovered: Variance (again)

Posted on by  
Jacob van Lingen

You never touched Groovy, nor did you jump on the Scala train. Clojure never attracted you; and you heard about Ceylon long after the language had already died. You are one of those old-fashioned Java folks! But now, after all those years, you want to join the cool Kotlin kids. So, where to start? Let’s discover the language together by decompiling it to Java code. Today: The things we tend to forget!

Continue reading →

Dear Diary: Generics at runtime?

Posted on by  
Jacob van Lingen

Dear Diary,

"Hobbits really are amazing creatures. You can learn all that there is to know about their ways in a month, and yet after a hundred years they can still surprise you"[1]. The astonishment Gandalf experiences, that you know something very well but somehow overlooked it, is not unfamiliar to me. Well, let me tell you a story…​

Continue reading →

Kotlin Discovered: Inline functions caveats

Posted on by  
Jacob van Lingen

You never touched Groovy, nor did you jump on the Scala train. Clojure never attracted you; and you heard about Ceylon long after the language had already died. You are one of those old-fashioned Java folks! But now, after all those years, you want to join the cool Kotlin kids. So, where to start? Let’s discover the language together by decompiling it to Java code. Today: Inline functions caveats!

Continue reading →

Kotlin Discovered: Inline functions

Posted on by  
Jacob van Lingen

You never touched Groovy, nor did you jump on the Scala train. Clojure never attracted you; and you heard about Ceylon long after the language had already died. You are one of those old-fashioned Java folks! But now, after all those years, you want to join the cool Kotlin kids. So, where to start? Let’s discover the language together by decompiling it to Java code. Today: Inline functions!

Continue reading →

Kotlin Discovered: Pattern Matching

Posted on by  
Jacob van Lingen

You never touched Groovy, nor did you jump on the Scala train. Clojure never attracted you; and you heard about Ceylon long after the language had already died. You are one of those old-fashioned Java folks! But now, after all those years, you want to join the cool Kotlin kids. So, where to start? Let’s discover the language together by decompiling it to Java code. Today: Pattern matching!

Continue reading →

Kotlin Discovered: Variance

Posted on by  
Jacob van Lingen

You never touched Groovy, nor did you jump on the Scala train. Clojure never attracted you; and you heard about Ceylon long after the language had already died. You are one of those old-fashioned Java folks! But now, after all those years, you want to join the cool Kotlin kids. So, where to start? Let’s discover the language together by decompiling it to Java code. Today: Covariance, contravariance and invariance!

Continue reading →

shadow-left