Home of The JavaSpecialists' Newsletter

Heinz's Happy Hour

Join us every 2nd Thursday of the month (usually) at 17:00 UTC for "Heinz's Happy Hour", where we talk all things Java (iCal). You will learn:

  1. Tips and tricks of Java programming
  2. How to use IntelliJ IDEA to program faster and with more ease
  3. Clever design patterns to ease reuse
  4. Algorithms and data structures
  5. Consulting tips and practices

Topic for Aug 10th: Safely Shooting Yourself in the Foot with Java 9

Abstract: "So what work do you do?" I get asked frequently. "Um, I work with computers." "Oh nice, what exactly do you do?" "Well, I write programs in Java". And then the inevitable: "Actually, I have a question about that. My computer keeps on telling me that I must update Java ..."

Two decades ago, the world gasped in disbelief as the first applet was moving pixels on a web page. Up until then, only static content was seen on the World Wide Wait. We were hooked. "And it's 100% secure!"

Fast forward to today. Applets totally discredited and not used. Java on the server the choice that won't get you fired. Security Manager that is mostly set to allow anything. Exploits galore.

Java 9 attempts to finally keep the promise of "... it's 100% secure!" by removing access to Unsafe, deep reflection on system classes, etc. All those lovely toys that we use to peek and poke into native memory ... they're gone.

Well, not entirely. We can still do just about anything we were able to in Java 8. We can change the contents of Strings using deep reflection, Unsafe or even VarHandles. We are able to throw checked exceptions as unchecked. We can mark fields as @Contended. But we have to give ourselves special privileges for it to work. They'll be gone in Java 10. Promise. (We'll see)

As we prepare ourselves for Java 9, this talk will show you how to use some of the new features, such as VarHandles, jshell, Stream changes as well as talking about why you need to move over to G1 as soon as possible. We will also show how you can do all the old Java nasties that you are used to, such as deep reflection into java.lang and throwing asynchronous exceptions.

Participation is free. Session recordings will be available for purchase afterwards.

These sessions will be on an intermediate to advanced level of skill. Beginners are welcome to join, but will have to promise to work hard to keep up :-)

We will discuss each webinar in our Slack channel #heinzs-happy-hour, before, during and after the event. When you sign up, we will also automagically add you to our Slack team.

About the Author


Java Champion, author of the Javaspecialists Newsletter, conference speaking regular... About Heinz

Java Training

We deliver relevant courses, by top Java developers to produce more resourceful and efficient programmers within their organisations.

Java Consulting

Nobody ever wants to call a Java performance consultant, but with first-hand experience repairing and improving commercial Java applications - JavaSpecialists are a good place to start...

Threading Emergency?

If your system is down, we will review it for 15 minutes and give you our findings for just 1 € without any obligation.