

Recent
Helpful Kotlin APIs for Java Developers
One of the major benefits of Kotlin as a JVM language is that you can use any and all Java libraries natively. However, sometimes, Kotlin has better (or at least more idiomatic) alternatives to the native Java libraries. Over the years, I’ve coached a lot of Java developers at various experience levels on how to effectively use Kotlin, and it’s a very common pattern for them to not know the standard Kotlin library and choose the “Java way” instead of the “Kotlin way”. This article will cover some of the more common cases where I see that happen.
Ketris: A Terminal-Based Tetris Clone in Kotlin
Paperless-ngx - Adulting in 2023
This year, I switched to hosting my own installation of Paperless-ngx, and it has leveled up my paperless adulting life in several ways.
TrueNas Scale: Resolving Docker Deployment Timeouts
Recently I’ve been using TrueNAS Scale BlueFin at home, and exploring self-hosting a variety utilities for my personal life. As part of that I’ve run into at least one case where, despite Google Fiber, I was unable to fetch docker images for deployment in time. Here’s an easy way to fix that.
Kotlin 1.8 - Easier Copying and Deleting of Files
I think most Java developers (and Kotlin JVM developers by proxy) have for a long time lamented the absence of a really simple “copy directory” or “delete directory” API. It seems, at the surface, such a simple thing. Of course there are edge-cases that exist that have prevented the existence of a “one-line” API in the JDK. Kotlin 1.8 ships with some new easy-to-use APIs for just this, with tools to handle the uglier edge-cases built right in. Let’s take a look!