Why not Windows

Every now and then people who want to hire me to train them ask me “why not Windows”. So, here is why. your system is not meant for programmers installing new software is a pain not all software works well (Docker) touching internals is tedious, obscured and generally made difficult system hides what it’s doing […]

java.util.logging does NOT respect logging level

For some reason you are using j.u.l instead of log4j or slf4j. And you want to se your logs of level LOWER than WARNING. You’ve done even logger.setLevel(Level.ALL); and yet nothing below WARNING is ever printed out. You’ve checked the logging method and they are the same. WTH?!! Well, set console handler log level, cause […]

Executable jar through jar update

Stopgap rather than real solution but here it goes: jar -ufe jarName.jar packageName/className Why it works? It updates the jar in place, stating that entry point will be class in given package. Update -> u. Entry point -> e. File to be operated on set to output file -> f. Lastly, package can be specified […]

Why architectural kata?

Architectural kata? Do you know code kata? You have a problem and try to code a solution. Well, here, you design it. Hence, you get to be an ARCHITECT. Why it’s interesting? Because it’s not always when you get to play a decision maker and without practice it’s hard to be great. Even with huge […]