Building a simple firewall on Linux system to only allow requests to a list of whitelisted domains using dnsmasq and iptables.
Category: Subject Areas

Solving the Knapsack Problem with the Jenetics Library
According to its official documents, Jenetics is a library that is used for programming evolutionary algorithms written in Java. Jenetics is implemented using the Java Stream interface, so it works smoothly with the rest of the Java Stream API. Evolutionary algorithms have their roots in biology, as they use mechanisms inspired by biological evolution, such…

Time Management: Doing Less lets you Achieve More
“There is surely nothing quite so useless as doing with great efficiency what should not be done at all.” – Peter F. Drucker [1] Effectiveness and Efficiency Do you know the difference between effectiveness and efficiency? Effectiveness is the relationship between a goal achieved and a goal set, whereas efficiency is the ratio of the achieved…

WordPress without the security hassles – using GitLab CI/CD to automate transforming WordPress into a static website
Recently we launched our new company website (craft-coders.de). It’s a simple website that showcases us and our work and describes the kind of services that we provide to customers. It requires no dynamic features except for the contact form. We decided to build our website with WordPress, but to automatically generate a static copy of…

Regolith Quickstart: Creating a Custom-Theme
This post is intended for beginners of i3 or more specifically Regolith. Since i3 is just a window-manager and not a fully fletched desktop environment you might have encountered some issues using a pure version of i3. Regolith is a modern desktop environment that saves you time by reducing the clutter and ceremony that stand…

Sophisticated Google container structure tests
Last week we did an innovation week at our company, crowding up together and trying to figure out what can be done to improve our systems. Our group chose to setup a private docker registry and to automate the creation of docker images for our test-system. After some research we came up with Google’s framework…

Startup: To join or not to join?
Hey everybody. A few days ago a friend of mine asked me for advice about joining or not joining a startup. After I answered him, I got excited to share my condensed thoughts with you in this blog post. He asked me since I was very enthusiastic about founding my own startup. Back in the…

Clean Code: The hard facts and figures
A couple of weeks ago I began to read Uncle Bob’s old developer bible: Clean Code. I was excited about the presented concepts and put a lot of thought into applying them into code. One day I was lying on the couch of our office, reading Chapter 2: Meaningful Names. Meanwhile, I overheard our team…

The Stuttgart Hackathon Diary
Day one on the Stuttgart Hackathon. Our team arrived in three parts: – The hardcore ones who even took some vacation to get there in time. – The cool ones who arrived later – and there is Leon… In this blog post, I am going to give you an impression of the hackathon. Day 1…

5 Steps for Working with an Overachiever in Agile Teams
There is this one developer in your team. She knows the code best. Everyone knows her and everyone asks for her opinion, even if not team or code-related. She is in the same agile team as you, also for quite some time now and she saved the day more than once. In team discussions, she…