I hear the misconception that a server can only accept 65K connections or a server consumes a port for each accepted connection all the time. Here is a taste of some of them:| Joseph Mate
For the last couple of months I’ve been working on a Java code navigator that fits into your browser. This won’t replace your IDE. Code discussions are handled better by github or gitlab. However, if you want to share links to your code with others that let them navigate all the way down to the JDK, then give this a try.| Joseph Mate
The sirens were place a couple years ago when I received a bug report claiming that I caused 100% CPU util on a VM when it should have been idle. I was suspicious at first because I try my best to avoid patterns such as while(true) and for(;;).| Joseph Mate
Today I learned that Javascript does not need a StringBuilder for accumulating a large number of concatinations. As a Java programmer, that came as a shock to me. This article summarizes my exploration of this fact.| Joseph Mate
What I Learned: Locking a readlock, then locking the write lock on the same lock creates a deadlock. Deadlocks created using locks instead of monitors does not appear in thread dumps (like those created by kill -3 (linux) or Ctrl+Break (windows)). Keep digging and you’ll uncover a nasty incorrect assumption you’ve been making. -XX:+PrintConcurrentLocks detects some deadlocks -XX:+PrintConcurrentLocks does not print reentrant locks on stack traces -XX:+PrintConcurrentLocks does not detect ...| Joseph Mate
My $15 Logitech M100 mouse has served me well for at least two years. It’s been so long that I can’t remember when I got it. It’s suffered so much abuse you can no longer make out the Logitech logo on the bottom. This is the second time it started double clicking. The first time I was able to fix it by opening it up and blowing compressed air at it. If you’re experiencing double click, you might want to try blowing compressed air on it. However, this time it didn’t work. After some ...| Joseph Mate
Instead of throwing away something, you should try to fix it, because the root cause might be simple to fix. I recently attended AWS Summit 2019 and VMWare kindly gave away these cool Mini Cinema Lightboxes! They are great decorations for a wedding or dinner party.| Joseph Mate
Suppose you wanted to unit test java.util.Map. How would you verify each implementation? Take a quick look at the Map javadoc, and you’ll find 20 implementing classes. Each Map implementation has common unit tests for requirements that you want to avoid copying. In this post I illustrate two techniques you can use for testing common requirements over implementations by testing my simplified version of java.util.Map.| Joseph Mate
The book I’m going through, Programming Interviews Exposed, presents the Dining Philosophers Problem and their solution to the problem. Firstly, their explanation for their solution is weak because they do not describe the underlying principle they applied to prevent deadlocks. Secondly, their implementation of their solution still results in starvation....| Joseph Mate
A while back my machine was so messed up that I could barely ssh onto it. 3,200% CPU utilization - all 32 cores on the host were fully utilized! Compare that to my last bug where it only used 1 core, 100% Fortunately, it was using Java 17 runtime which...| Joseph Mate