Sign in

TL;DR — We were using JOOQ in the last year or so and think to move to JDBI. This post has some thoughts about it.

It’s amazing that in the Java ecosystem there are so many options for SQL DB access. The ecosystem is very rich from one side, but…

We’ve got the green light from the corporate to upgrade MBP (Mac Book Pro) to Big Sur. There is only one TINY prerequisite: 35.5GB of available storage.

I only had less than 10 GB free space.

Why? My MBP has 250 GB SSD. The Operating system file system is partially…

Imagine the following imaginary scenario:

One day you’ve been assigned to a new project.

It turn out you should modify an ancient system.

How ancient? The code is on a production machine you should ssh to, and it was written before source control was invented. How do I know that…

We recently encounter a severe (but rare) issue on one of our servers, that upon startup failed to handle any request. It took couple of month to nail it down. Inspecting the stacktrace suggested an issue with a lib called proj4j:

One of my colleagues found the following code…

I’m not going to try and convince you Checked Exceptions are bad. It’s controversial, and while some programmers think it should be used others thinks it should be avoided. Essentially, it’s a matter of personal taste and discipline to some extent.

In theory, Checked Exceptions are a novel idea, In…

Photo by Noah Buscher on Unsplash

The number of repositories is a long time dilemma for both startups and big companies alike. In Outbrain (>100 developers) we started off with a mono repository code-base on a Subversion server. …

Recently (since vertx 3.6.3) a new submodule to access database asynchronously was released. In this post, I will give an example of how to use it.

Photo by Joshua Sortino on Unsplash

In previous vertx versions, when you want to access relational databases such as MySQL or PostgreSQL there were a couple of alternatives.

First one…

Coming from (old) Java, curly braces usually meant a scoping construct: method scope or just a simple scope for variables.

In Kotlin, However, They have a more meaningful job as a lambda which is usually helpful. But sometimes it is misleading. Consider the following example:

fun sayHello() = { println("Hello!")…

Photo by Bud Helisson on Unsplash

In this post, I would like to explore coroutines, from the perspective of backend application use cases. Most of the posts about coroutines I saw were either not specific to platform or Android-related.

Why coroutines are hard to grasp?

I am working with coroutines for a year+ and still, sometimes I find myself puzzled. …

Photo by David Lezcano on Unsplash

We use object pool in jasync-sql to manage connections to the database. In this post, I will share how it is done in a performant, lock-free manner using Kotlin coroutines with an Actor.

An object pool has a very simple API to work with. …


Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store