If you have ever programmed in Java, you probably have a few questions why things are the way they are. Why are there eight primitive types? Why do most emoji characters need two char values? Why can you delimit strings as \u0022Hello\u0022 instead of quotation marks? What about the comma operator? Why call it RuntimeException when all exceptions occur at runtime? Why can you use any object as a lock? Does anyone use labeled continue? Why is main static, even though Java is proudly object-oriented? Why do we use super and extends in generic types? Do we really need four (!) forms of switch? Cay Horstmann, author of Core Java (12 editions since 1996), will reveal answers and other tidbits about the design of Java.
The expectation is that the audience is familiar with basic Java. It's recommended to bring your devices with jshell installed.