Ivan's articles
Java’s Synchronized Keyword in Three Minutes
The synchronized keyword is a common building block in concurrent Java applications. Learn how to use it to avoid race conditions.
The Dangers of Race Conditions in Five Minutes
A race condition occurs when multiple threads mutate shared state such that the outcome depends on how exactly the threads' operations interleave.
Beyond POJOs – Ten More Ways to Reduce Boilerplate with Lombok
How to use Lombok to reduce Java boilerplate in logging, null checks, variable definitions, concurrent code, exception handling, laziness, and more.
Java’s Thread Class in Five Minutes
Threads are Java's basic abstraction for running code in parallel. Learn how to use the Thread class to launch, finish, and wait for threads.
Declutter Your POJOs with Lombok
Lombok is a library that helps to reduce Java's verbosity. This tutorial presents how to use it to write clearer POJO classes.