Live Streaming Setup

This article reviews my hardware and software setup for live-streaming and summarizes the tricks I use to increase the engagement of my audience during my online webinars and conference talks. Hardware Yeti Nano microphone – …

Exploratory Refactoring

This article describes a technique that I believe is missing from our practice, especially from teams working on complex (legacy) systems. The Problem I can’t refactor this code because I don’t know what happens in …

The Clean Switch Rules

From all the syntax constructs of modern programming languages, the switch construct is the most prone to degenerate into an unmaintainable mess unless we take aggressive actions. This article introduces the rules to follow to …

Exceptions and Streams

Java 8 gave us Optional, a mighty weapon against the most frequent Exception in Java: NullPointerException, that I talked about in this blog post. However, Java 8 also brought new headaches regarding exceptions, as the …

Avoiding NullPointerException

The terrible NullPointerException (NPE in short) is the most frequent Java exception occurring in production, acording to a 2016 study. In this article we’ll explore the main techniques to fight it: the self-validating model and …