java How to publish artifacts on maven central Quick guide to learn how to deploy artifacts to maven central so they are available for everyone
java Java Micro benchmarks (or how to enjoy holidays) Brief tutorial for setting up a jmh project to measure performance of java code using micro benchmarks
object-design There are null reasons This post will try and maybe fail to convince you that using `null` in your code is an error. For those of you willing to listen, here are my reasons to stop using it.
craftsmanship Caring about coding The Broken Window Theory states that how much people care about something is an important factor in how much you care about the same thing. Can it be applied to our code?
java Java generics and inheritance (part 2) On the first part of this article I explained why java generics don't allow up-casting for generified types. In this part we will see why, arrays don't have that restriction, and the implications
java Java generics and inheritance (part 1) Types, Sets, variables and casting When you use a compile-time typed language, like Java, you expect that types in each variable will help you by restricting the possibilities for a value. Instead of
collections Collecting Collections - Day 32 Previously on "Collecting Collections" Method semantics After gathering a bunch of methods in a table and reading their source or documentation, I had a basic idea for every one of them.
collections Collecting Collections - Day 37 Previously on "Collecting Collections" Performance I was designing in my head, analyzing how to implement each method, visioning dependencies between methods and I stumbled upon size. Very simple to implement. Perhaps
collections Collecting Collections - Day 20 Some time ago I started digging collection APIs in a few languages trying to answer a philosophical question. How were the whole/part relationships represented on programming languages (through collections) and what were
java automatically change configuration based on current environment What if the application were aware of its different running environments so it could change its configuration automatically based on the current one? If we wanted to do that, we had to solve