Recent Posts

  • AOC 2022 – Day 5: Supply Stacks

    You can read the full description for day 5 here. In summary for part 1, we have been provided a number of stacks, each stack may contain a number of […]

  • WebRTC – Go beyond the APIs Part 1: Signaling and Connecting

    We were in the middle of the pandemic. Many of us have to get accustomed to the new norm, stay at home to work and study, etc.…We are separated and […]

  • Avoiding NullPointerException in Java

    NullPointerException is one of the most hideous exceptions in Java. It can silently stop the execution of one thread, or it can, fatally terminate the execution of the whole program. […]

  • Introduction to Trie Data Structure

    Trie is a data structure that is not so popular but is particularly useful when you have to work a lot with strings. It also has different names like a […]

  • 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 […]

Every support is much appreciated ❤️

Buy Me a Coffee