Gain a deeper understanding of Java and the JVM
This new edition of my first book is intended for intermediate Java developers who want to level up their skills by gaining a deeper understanding of the Java programming language and the JVM.
We focus on the most key topics, such as concurrency, functional programming, and modern test and deployment that are most relevant to the Java dev who is looking to advance quickly. To properly explain these subjects we introduce some advanced techniques (such as classloading, reflection and using JVM bytecode) and an introductory treatment of the JVM's internals.
We also discuss two non-Java JVM languages (Kotlin and Clojure) to provide alternate viewpoints on our major topics. Learning a bit of these languages will make you a better programmer, whether you're writing Java or another language.
Java performance for software engineers
This book presents a very different view of Java performance analysis.
Rather than presenting a cookbook of tips and tricks, we’ve tried to introduce the subject in all of its complexity, without shying away from the contradictions and trade-offs that are at the heart of performance analysis.
There are also videos available that act as a companion to the book.
An introduction to Java for programmers
This book is an introduction to the Java programming language. It is aimed at people who already know how to program in at least one other language. The current edition is the 7th, and the book covers Java 11, the most popular long-term support release of Java.
I am currently working on an 8th Edition, covering Java 17, which should be published in Spring 2023.
New Relic's OpenTelemetry and Open Source Commitment The New Stack
Behind the scenes: How do lambda expressions really work in Java? Oracle
Java 15 Released InfoQ
Unsafe At Any Speed Oracle
Java at 25 InfoQ
Java 15 So Far InfoQ
The State of Java - Trends and Data New Relic
Java 14 Released InfoQ
Java Flight Recorder and JFR Event Streaming in Java 14 Oracle
Records Come to Java Oracle
Sealed types Oracle
Grading My 2019 predictions New Relic
Loop Unrolling in HotSpot Oracle
Java 11 Released InfoQ
Oracle Announces New Support Pricing Structure for Java InfoQ
Lock Elision in Hotspot Oracle
Oracle Releases GraalVM 1.0 - a Polyglot Virtual Machine and Platform InfoQ
Hazelcast Releases Jet 0.6 for Stream and Fast Batch Processing InfoQ
Oracle to End Free Support for Past Java Versions Much Sooner InfoQ