Everyone worries about performance but few of us have the time to truly understand it. Fortunately, our modern JVMs and CPUs are capable of some amazing performance tricks, but those same tricks only make reasoning about performance that much harder. In this talk, we’ll take a look at some surprising and often unintuitive performance problems […]

Read more

Motivation Nearly every program includes some sort of logic that combines testing if an expression has a certain type or structure, and then conditionally extracting components of its state for further processing. For example, all Java programmers are familiar with the instanceof-and-cast idiom: if (obj instanceof Integer) { int intValue = ((Integer) obj).intValue(); // use […]

Read more

After writing “Java Performance Tuning” and founding JavaPerformanceTuning.com, Jack Shirazi wrote a newsletter every month, for the last 15 years. In that period he’s listed at least 10,000 Java performance tips and hundreds of Java performance tools. In his session at Devoxx Uk 2017, Jack brings what he’s learned and, in under an hour, talks […]

Read more

The feature we always hear about whenever Java 9 is in the news is Jigsaw, modularity for Java. But modularity just doesn’t scratch the same developer itch that Java 8’s lambdas and streams did, and as developers we’re left with a vague sensation that version 9 might just not be that interesting. In fact, Java […]

Read more

“The thing is, non blocking communication in classic, imperative code can quickly turn into a unmaintainable swamp of threads and callbacks.” Frank Lyaruu is talking about non-blocking goodness that doesn’t trash your code at Voxxed Days Athens. We asked him when you’d need non-blocking code.   What are the situations where you need non-blocking code? […]

Read more

Bring your favorite questions about Java SE and the Java Development Kit — past, present, or future — to this open Q&A session. Mark Reinhold Mark Reinhold is Chief Architect of the Java Platform Group at Oracle. His past contributions to the platform include character-stream readers and writers, reference objects, shutdown hooks, the NIO high-performance […]

Read more

How does Fork/Join work, and where does ManagedBlocker come in? We interviewed concurrency expert Heinz Kabutz at Voxxed Days CERN. Turbo Charge CPU Utilization in Fork/Join Using the ManagedBlocker Fork/Join is a framework for parallelizing calculations using recursive decomposition, also called divide and conquer. These algorithms occasionally end up duplicating work, especially at the beginning […]

Read more

The developer community conference is starting today in the US. Started by the Belgium Java User Group, Devoxx has come a long way, and now it is at the heart of Silicon Valley: San Jose. On January 23rd, we spoke to Program Chair Stephan Janssen about talks to look out for and the rockstar speakers to expect. […]

Read more

Vaadin Framework 8 renewed essentially the whole data binding API and added dozens of enhancements. Here is a list of the most important changes that will give you a boost in your next Vaadin Framework projects. New modern Java APIs The main feature in Vaadin 8 is core API modernization. We now fully take advantage […]

Read more

Java 8 was comparatively easy to upgrade to, but for Java 9, “there is work ahead of us.” How can we prepare for the impending Java 9 GA release? What is changing, and how can we adapt? We interviewed Nicolai Parlog about Java 9 at Voxxed Days Zurich 2017. For the full talk, see below: […]

Read more