Random stuff about software development
Using an application framework that is non-blocking by its nature is a nice thing, but when you do a lot of database operations in a blocking way, you can't really take an advantage of it. This article is about setting up a quite comprehensive tooling around Micronaut and PostgreSQL in a non-blocking fashion.
Using real resources (i.e. databases) instead of mocks in your tests can be beneficial in several ways. With Testcontainers you can have ephemeral and lightweight instances that are provisioned and destroyed automatically, and you can integrate them with your favourite test framework as well. In this article I'll show you how can you make them work with Micronaut and Kotest.
In Kubernetes, scaling applications vertically, that are primarily designed to scale horizontally (i.e. microservices) could be a challenging task. That's especially true for setting the right resource limits for your pod that is running a JVM application.
There are a lot of articles about how important the product/project vision is, when you are working in an Agile way, but almost none of them mentions architecture vision, however I think that it is at least as important as the former ones, and I will show, why you should think that too.
Evernote is not able to find and replace text in your notes when you are using its MacOS app, however there is an easy fix to tackle this issue.
GitLab has built-in support for two types of CI/CD badges (pipeline status and test coverage), however it's far from clear how you can make the latter work with JaCoCo and Gradle.
A year and a half ago Kotlin was just a buzzword for me, and every time it came up in a conversation, everybody was just like "Oh yeah, I've heard of it, it's for Android, yeah?". Well, I thought so too, until I dove a bit deeper into it.