2017 in retrospect

Well, we're finally here in 2018 - time to take a look at the past year. The year 2017 has been quite work-intensive, but also very rewarding in terms of my personal and professional life. This post will reflect on the professional aspects and summarize what I've been doing the whole year - and what my plans for 2018 are.

more ...

Using service loaders

Although we progressed through to a working, modularized solution for our string matchers during the last article, we still have an unwanted dependency that goes directly from module matchers.cli to matchers.impl. This prohibits us from using a clean and extensible way of injecting implementations of the Matcher interface. Working through this article, our goal is to end up with a very loose coupling between our Java modules by implementing a mechanism for that kind of dependency injection.

more ...

Modularizing an existing codebase

During the course of this article we will migrate an existing Java 8 application to a fully modularized Java 9 application that leverages the capabilities of the Java Platform Module System (JPMS). This article is the first installment of a series of articles that showcases a migration path towards a loosely coupled and modularized application architecture.

more ...

Hi there! I'm Markus!

I'm an independent freelance IT consultant, a well-known expert for Apache Kafka and Apache Solr, software architect (iSAQB certified) and trainer.

How can I support you?