Latest Posts

Clean Code June 18, 2019

Never Design A Class That Knows How It's Used

When you design a class you should never design it in a way that the class itself knows how it is used from the outside. Breaking this principle will make it difficult for other developers providing other implementations. I recently stumbled upon an implementation of different entities where the implementation had to provide a unique id for itself. Why this is causing problems and how you better design such a situation I’ll explain in this post.

Jenkins Bitbucket Branch Source Plugin's Webhook Is Not Working

In my current project we use Bitbucket Server as our Git backend and Jenkins with a pipeline multibranch project to build our project. For better integration of both technologies we decided to use the Bitbucket Branch Source Plugin . This enables us to trigger automated builds and maintain dynamic jobs on our Jenkins. But installing the necessary webhooks turned out to not be a trivial task. The goals I want to achieve are the following:

Other May 17, 2019

That's How Wrong Google Analytics Can Be

This blog is not very old yet. I just started it a month ago and of course I wanted to know if somebody is even reading it. So after a few days I included Google Analytics to get an impression of the visitors of my page and if I even have an audience here. But barely any visit got tracked and since I didn’t even filter out my own ip I had the impression that I’m basically the only user of my page.

Spring May 9, 2019

Custom Authentication Filter with Spring Security

After answering a question on stackoverflow about how to configure Spring Security with your own authentication mechanism I’d like to go into more details in this post. I’ll implement a simple use case where the actual authentication is done by reading the username and password from the header of a request. The example method we implement in this post is NOT a secure way of implementing authentication. I just choose it for the sake of simplicity to demonstrate how to register your own authentication in Spring Security.

Jenkins Declarative Pipeline throws Method Code Too Large Exception

I use the declarative Jenkins pipeline in my current project, but after 2 years of development we hit a barrier I wasn’t aware of. Jenkins puts the whole declarative pipeline into a single method and at a certain size the JVM fails with java.lang.RuntimeException: Method code too large!. Digging deeper it turns out that no method is allowed to exceed 64k . So I needed to find a solution for this problem.