ACID Transactions

Programming is about managing data that point to the state of a system. Databases are the right place to store data. So they helped us to build applications pretty easily...

Improving Null Safety in Java

In this article, we will present a couple of ways to prevent writing needless null checking by using Optional API and lambda expressions. Let’s consider this hierarchy of classes: class...

Git Branching for PR

In the past, I struggled with the code review, and the merge of large pull requests as an author and also as a reviewer. In this article, we will see...

Update your fork directly on GitHub

How to update a forked repo and get the last updates from the original project? Short answer On your local CLI of the forked project, link the repo to the...

Microservice Build Pipelines

The main idea behind a microservices-based application is that systems are simpler to build and maintain when broken down into smaller pieces. Continuous integration (CI), delivery (CD), and deployment (also...

Say Hello to var in Java 10

Java 10 had been published last March, 20th 2018 and it came with new features like local-variable type inference (JEP 286). This version carries the var keyword to declare local...

Control Parallelism In Java Streams

Previously, I had a task to write a transformation pipeline of gigantic data sets. I will not speak about complexity due to the difference in the environments, and the size...

Docker 104 - Docker Builder Containers

While most people consider Docker as an environment to run apps, in reality, Docker can be used in the process build as well (i.e. tooling via Docker). Yeah! it is...

How to test date created with LocalDate.now()?

Once, I needed to test time-sensitive methods because there was a logic around the current date in my code. In these methods, I am using LocalDate Java classes. Real situation...

Java Updates Guide

This page aims to tell and keep a log about updates in Java. Java is adopting a new cadence-based release cycle of the new releases and versions, and if you...