Ich mag keinen Bloat. Programme, die essentiell nichts tun und ein Gigabyte Speicher und eine halbe CPU belegen gehen mir nicht in den Sinn. Jedes belegte Byte und jeder ausgeführte Takt sind ein potentielles Versteck für Bugs. Je weniger ausgeführt wird, desto...
Software Engineering

A witness with FitNesse
What are our tests but a witness to the integrity of our code? Just like what takes place in a justice court when a witness swears to tell the truth, all the truth and nothing but the truth, so are we doing the same through our tests.

An introduction to asynchronous and reactive programming with Eclipse Vert.x
Building asynchronous and reactive applications with Eclipse Vertx Content Forewords 1. What is Eclipse Vert.x 2. Demonstrating the core concepts 3. Going reactive: integration with RxJava 4. Concurrent execution of authorization queries 5. Bridging the gap between...

Let’s build a Webshop out of Micro Frontends
The idea behind Micro Frontends is to think about a website or web app as a composition of features which are owned by independent teams. Each team has a distinct area of business or mission it cares about and specialises in. A team is cross functional and develops...

Should I use Kubernetes to abstract my infrastructure provider?
The current customer I'm working for gave us several requirements, including: Build a microservice platform on AWS Be able to move from AWS to Azure, bare metal or whatever within 30 days The decision has been made and now we are developing and maintaining a k8s...

Vavr – Objekt-funktionale Programmierung leichtgemacht
Funktionale Programmierung hat in den letzten Jahren eine Art zweite Blüte erlebt und ist nun auch im Mainstream angekommen. Das Open Source Projekt Vavr will die Lücken in Java 8 schließen.

A keen introduction to DynamoDB
The last couple of weeks two colleagues of mine and myself got the opportunity to build a Facebook Chatbot. Chatbots are the perfect fit for serverless architectures.

Parametrisierung für Test Suites in JUnit 4
JUnit gehört zum Standard-Werkzeugkasten in unseren Projekten. Seit JUnit 4 werden auch parameterisierte Tests unterstützt: Man definiert eine Parametermenge und für jedes Tupel wird die so parametrisierte Testklasse jeweils neu instanziiert und alle Testmethoden...
SenacorSlackDapp goes truffle & travis CI
What up! Since we recently had a Code&Play on Smart Contract development with Ethereum it was about time to move the tests for our lottery contract to the truffle development framework structure. And since we are hipster coders, we additionally configured Travis...

In praise of Vavr’s Option
Null is sometimes considered the billion dollar mistake. One could argue about this forever, but certainly, null has lead to a lot of awful code. Most functional programming languages offer a concept called Option or Maybe to deal with the presence or absence of a...