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.
Software Engineering
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...
Unit testing with Java 9, Jigsaw and JUnit
Java 9 is on it's way and with it - maybe - Project Jigsaw. Project Jigsaw adds modularization to Java, which will change the way we write Java code. The recent public review ballot for JSR #376 (the Java Platform Module System, or JPMS for short) however produced a...
Versionierung und Routing in Microservice-Welten
Versionierung ist sowas wie das ungeliebte Kind der Softwareentwicklung. Jeder hat es, aber niemand macht sich wirklich Gedanken drum. Ist bisher ja auch immer gut gegangen, aber sobald wir den tollen neuen Abenteuerspielplatz "Microservices" entdecken sollten wir...
Production Readiness – und nicht bloß Feature Completeness
Fast jedes neue Software-System ist ein verteiltes System. Und Architekturkonzepte wie Micro Services verstärken diesen Trend. In hochgradig verteilten Systemen sind Fehler nicht die Ausnahme - sondern die Regel. Und die Fehler sind kaum vorhersagbar. Statt also immer...