Posts

Recently, my Raspberry Pi was complaining that the disk was full. Which was strange because I just recently removed a bunch of files from there, yet df -h was reporting 99% usage. But wait, du -h --summarize was only reporting a couple gigs used instead of the whole 14Gb… What gives?

CONTINUE READING

In this post, we’ll look at a reactive solution for the Run Length Encoding problem, which is summarized (on Wikipedia) as:

A form of lossless data compression in which runs of data (that is, sequences in which the same data value occurs in many consecutive data elements) are stored as a single data value and count, rather than as the original run.

The challenge here is to perform it in a Reactive way using Reactor operators. Let’s jump in!

update 2018-03-13: Found a few shortcomings of the first implementation and added two new sections that present alternatives.

CONTINUE READING

In this post, we’ll look at how to combine the MDC feature of current logging framework with Reactor's own Context, in order to make contextualized logging possible within a reactive application.

CONTINUE READING

With Java 9 out the door, you might wonder what the future holds for Java. I do too, so I had a quick look at current JEPs and Projects candidates to see what is looming ahead (you’ll get this joke in a second 😁).

In this article I will glance at the ones that stood out to me. Keep in mind most of these are not finalized, some are even just exploratory…

Without further ceremony, let’s dive in!

CONTINUE READING

File reading, line by line in Java… It’s never been a breeze, and until Java 8 the only high level option you had was to read the lines into a List<String> 😓

Then Java 8 came along, with its Stream interface, and a Files.lines(Path) method that returns a Stream<String>. Turns out, this stream will lazily read the lines from the file, without ever having to hold the whole content of the file in memory 😍

Let’s see how we can use that with Reactor!

CONTINUE READING

If you sometimes work on both personal and professional projects that are hosted on GitHub, chances are that you’d like to separate identities. Maybe you have several accounts, maybe it’s just a matter of making the commits use different emails.

In this post, we’ll see how to manage such separate identities, at the SSH level and the Git level.

CONTINUE READING

As you might know, I sometimes speak about Programming at conferences… One handy tool for speakers is to have a remote, which allows you to advance your slides without having to constantly hug your computer, looming over that space bar and staying at the edge of the stage 😅

CONTINUE READING

I’ve finally decided to start writing a Blog 😄

CONTINUE READING