Latest Posts

Entwicklungspraxis 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. But that impression was wrong, which I noticed when I switched to server side tracking.


Entwicklungspraxis 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.

Let’s first have a look in a successful test to understand how we do our authentication:


Entwicklungspraxis May 2, 2019

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.


Entwicklungspraxis April 29, 2019

Distinguish Between Optional and Mandatory Parameters in the Builder Pattern

After reading through Designing Bulletproof Code by Otavio Santana I stumbled upon its example of using a builder pattern. While this was not the focus of the article itself I also realized that I saw the issue in the past a lot and I ran in it as well. The widely spread understanding of the builder pattern (as described in Effective Java by Joshua Bloch) does not differentiate between optional and mandatory parameters and that makes their usage not easier but harder.


Entwicklungspraxis April 27, 2019

Code-Held Goes Open Source

Today I have an awesome Message. Since I also post about technologies I use on this page I decided to put the whole page open source on gitlab . Feel free to discover how I developed this blog and which technologies I use.

I had the project in a private repository before but after many considerations I decided to not transform it directly into public space, because I used to have my nginx config in there as well and at some point unmasked ssh keys (I exchanged them of course but you never know…). So I put the latest state of the page into a new repository and took care that the SSH key that is used for publishing the website is properly masked in the pipeline.


Top