👋 Hi!

I’m a software engineer specializing in server applications and system-level software development, but sometimes I venture into the front end world too. Quite often I find myself taking a deep dive into a topic that tickles my brain.

When I’m not coding I like spending time outdoors, such as cycling, climbing. We are writing this blog together with my partner Sanja.

You can find most of my work on GitHub.

Functional Object Oriented Programming


Does the title strike you as strange? Do you think functional and object oriented programming are two fundamentally contradicting paradigms? I don’t think so.

Working with Certificates in Java


Let’s face it, the Java crypto API is a mess. It is extremely hard to use, and very confusing. Let’s try and make sense of this sorry excuse for an API.

A few words on null


If you’ve ever seen a NullPointerException in a log, you know how frustrating it can be. You basically have no idea what happened and why. The stack trace is completely useless and you’re left debugging an application that you didn’t necessarily write. What is this and why does it happen? How do you avoid it?

Interplanetary Filesystem


Quite by accident, I’ve stumbled upon a rather interesting technology called IPFS. It promises to replace HTTP as a transport protocol for websites and scale to interplanetary levels. Even though the claims sound just tiny bit far fetched, the technology behind it got me quite excited.

The loose, the strict and the static typing


There seems to be a great deal of confusion in the programming world what loose, weak, strict, static and duck typing actually mean. Let’s go through it and clear a few things up!

Clean Code: Dependencies


Managing dependencies is hard, especially if we are using third party libraries and projects. Let’s talk about splitting our code into layers!

Datastructures 101: Basics


Why would you learn data structures? You won’t need it unless you are a programmer, database engineer or university student… wait, you are? Never mind, keep on reading.

Clean Code: Responsibilities


I heard you want to be a better coder. You want to use reusable pieces, and you want to have an easier time maintaining older code. You may also want to work better in a team and ensure there are less bugs.

Getting started in Object-Oriented Programming


So, you’ve been programming for a while, and you are still stumped with what object-oriented programming actually is? Then this may be the guide for you. We’ll take a departure from traditional explanations and look at a new way of explaining OOP.