Recent Posts

  • Instrumenting Applications with Prometheus

    Monitoring is an integral part of any non-trivial system, by the monitoring process, we then have an insight into the application performance and status, such as RPM, CPU usage, and […]

  • Covariance and Contravariance (Java)

    Many programming languages support subtyping, for example, MechanicalKeyboard can be a subtype of Keyboard, and according to the Liskov substitution principle, the MechanicalKeyboard instance should be substitutable everywhere the Keyboard […]

  • Some notes about TreeSet in Java

    The most frequent data structure that I use in Java is the List. But sometimes if I have to store distinct elements without caring about the ordering, then I would […]

  • Thread confinement in Java

    As a Java developer, perhaps all of us have written some kind of single-threaded program. In this program, we can reason about our code much easier when compared with multi-threaded […]

  • Creating callback functions in Java

    If you are familiar with some event-driven languages such as JavaScript, especially the ES6 version or later, you probably have done some work with callback functions all the time. By […]

  • Why do you need to override equals and hashCode methods in Java?

    If you have used some data structures such as a hash map or a hash set for storing your custom object, you probably have to write your own implementation of […]

  • Delegate pattern with Consumer interface in Java

    As a Java programmer, sometimes you run into a situation when you want to take a task of an object and give it to another object, meaning the original object […]

  • Frequently used git commands

    Have you just landed your dream job as a programmer? Congrats! We can have different backgrounds and work on different tech stacks. However, no matter which technologies you use, working […]

  • Building a Web Development PC

    It’s no secret that web developers have to meet certain computer specifications if they want to do their work efficiently. For example, the Digital Hacker’s guide suggests a RAM that’s at least […]

  • Understanding Method References in Java

    Before Java 8, to provide an implementation for an interface, we need either to create a concrete class that implements this interface or, more concisely we can, use an anonymous […]

Every support is much appreciated ❤️

Buy Me a Coffee