Episodes
The Foreign Function and Memory API will be finalised in JDK 22. This API helps you integrate native code within your Java program.  Using this new API you can efficiently invoke code outside the JVM, safely access memory not managed by the JVM, call native libraries and process native data without the brittleness and danger of JNI. Jorn Vernee, core contributor and maintainer of the FFM API, is Ana’s guest during this episode. Jorn explains what is the Foreign Memory Access API, its goals...
Published 01/08/24
Published 01/08/24
Sequenced Collections, targeted for JDK 21, are a new collection type created to represent a sequence of elements with a defined encounter order. Ana recorded this episode with Stuart Marks, the owner of JEP 431 about Sequenced Collections. Stuart discusses the essence of Sequenced Collection interfaces, what needs those address and how they fit within the existing Collections framework. He explains the design of Sequenced Collections, architectural decisions and particularities of the API....
Published 04/25/23
Preview Features have been essential to the delivery of Java for the past 5 years, and Java 20 is no exception with second previews of both Virtual Threads and the Foreign Function & Memory API. Chad discussing the importance of Preview Features with Alex Buckley, as well as an Informational JEP that added some further clarification for Preview Features with large surface areas. Some show notes: JDK 20 is out today: https://openjdk.org/projects/jdk/20/ JEP 12: Preview Features...
Published 03/21/23
Helidon Níma is the first Java microservices framework built from the ground up on virtual threads. David recorded this episode with Tomas Langer, the Helidon architect. Tomas discusses virtual threads from a framework developer point of view. He explains Níma, its architecture and how virtual threads fit in. He also shares his views on virtual threads and some behind the scenes details and how it all started.
Published 01/12/23
In this episode, David discusses with Gavin Bierman, the latest evolution in the Java Language. In addition to being a regular guest on this podcast, Gavin spends most of his time on designing new Java language features. They are chatting about Project Amber's latest features related to Pattern Matching but also the String Template feature currently in draft. Through this discussion, you will also hear about some of the tools (ex. Preview Features) but also the challenges related to the...
Published 12/23/22
During JavaOne, David sat down with Kevin Rushforth (OpenJFX Project Co-Lead, Oracle) to discuss the JavaFX, OpenJFX and the new JavaFX builds that Oracle is now producing.
Published 11/18/22
In this two-part episode, Chad interviews Ron Pressler, architect and lead for Project Loom, on Virtual Threads and Structured Concurrency, followed by Brian Goetz, Chief Language Architect, on Record Patterns and the arc of features in Project Amber leading to data-oriented programming. Show notes: JDK 19 JEP 425 Virtual Threads JEP 429 Structured Concurrency Game of Life by Elliot Barlas Project Loom C5M  
Published 09/20/22
Chad interviews Sharat Chander about both the history of JavaOne, and what to expect with the return of it in October. Show notes: Update blog series on Inside.java Register Now to get Early Pricing  
Published 08/03/22
In this episode, David talks with Erik Österlund about the work he did on the Z Garbage Collector, and the plans to make ZGC a Generational GC. Amongst other things, Erik shares some details on the underlying techniques, and the expected benefits.
Published 06/28/22
In this special episode Chad talks with Naoto Sato on JEP 400, UTF-8 by Default, and Michel Trudeau on JEP 413, Code Snippets in Java API Documentation. To round things out, we also pulled in highlights from podcast episodes 21 and 22 to provide an overview of JEP 408, Simple Web Server, and JEP 421, Deprecate Finalization for Removal. Check out Java 18 today at Dev.java!  
Published 03/22/22
David remotely sat down with Julia Boes, Senior Member of Technical Staff in Dublin, to discuss the Simple Web Server (SWS). The SWS, introduced in JDK 18, is a minimal web server that serves static files. It comes with a command-line tool and an API. In this episode, Julia explains why another web server might be useful. She explains its goals, its features, who it is for but also what it is not!. She then goes over the command-line tool, its API, etc.
Published 03/04/22
In this episode, David remotely sat down with Brent Christian to discuss Finalization and the effort to gradually deprecate this now outdated, brittle, and complex mechanism from the platform. After covering some of the finalization weaknesses, Brent discusses the alternatives to properly deal with resources, i.e. try with resources and the Cleaner API. He then continues with JEP 421 which will be part of JDK 18 and some potential subsequent steps.
Published 01/12/22
To mark the Java 17 release, we have not one but two podcast episodes! In this second part, Chad discusses the evolution of the Java language with Brian Goetz, the Java Language Architect. Chad then concludes this special Java 17 episode with Stuart Marks, aka Dr. Deprecator, on the importance of deprecation!
Published 09/27/21
To celebrate the launch of Java 17 we have not one but two podcast episodes! In this first part, Chad discusses some exiting license changes with Donald Smith, i.e. the Free Java License. Chad then continues the discussion on Project Panama and the Vector API with Paul Sandoz. Make sure to also listen to the upcoming Part 2 where Chad discusses with Brian Goetz and Dr. Deprecator aka Stuart Marks! Check the complete show-notes ➱ https://inside.java/2021/09/14/podcast-019/
Published 09/14/21
JWith JEP 403, Java 17 will strongly encapsulate the JDK internals. This is the latest step in a process that began in Java 9 with the modularization of the JDK. In this episode, Alan Bateman joins Chad to discuss the importance of strong encapsulation, the history, how this will affect your applications today, and what to do in order to prepare for it. See complete show-notes ➱ https://inside.java/2021/06/29/podcast-018/
Published 06/29/21
In this episode, David discusses with Gavin Bierman a new set of Java language features coming from Project Amber, i.e. Pattern Matching. In addition to `sealed classes` and `pattern matching for instanceof`, they are covering in great detail a new (and great!) JDK 17 preview feature: `pattern matching for switch`. * Episode resources https://inside.java/06/13/podcast-017/ * More episodes https://inside.java/podcast/ * Contact us https://inside.java/about/
Published 06/14/21
In this episode, David (remotely) sat down with Michael McMahon and Daniel Fuchs both from the Java Dublin engineering team to discuss some of the recent JDK network-related updates: from the HTTP/2 Client API (Java 11) and its updates in Java 16 to the new Java 16 Unix Domain Socket Channel API. There's even a small HTTP/3 sneak peek.
Published 04/12/21
The release of Java 16 was a good reason to invite Mikael Vidstedt, Director of JVM Engineering, again into the show. In this episode, Chad and Mikael discuss some of the new JDK 16 features, the 6 months release cadence but also how some Valhalla initial bits are starting to gradually appear into the platform, and more! For the detailed show-notes, make sure to check-out the episode page at https://inside.java/2021/03/16/podcast-015 And for more episodes, please visit...
Published 03/16/21
Records are a standard and permanent Java language feature starting Java 16. This was a good occasion for David to discuss Records serialization with Julia Boes and Chris Hegarty who have been deeply involved in the recent serialization improvements. In this episode, you will see that the approach of serializing records drastically changes from the serialization of traditional classes. Make sure to check the detailed show-notes https://insinde.java/2021/03/08/podcast-014/
Published 03/08/21
Chad discusses JDK Flight Recorder (JFR) with Markus Gronlund. Learn all about JFR including how to get started, the problems it addresses, the many event types it outputs, the new streaming capabilities, and more! Links Mentioned JDK11 - Introduction to JDK Flight Recorder https://www.youtube.com/watch?v=7z_R2Aq-Fl8 JEP 328: Flight Recorder https://openjdk.java.net/jeps/328 Continuous Monitoring with JDK Flight Recorder https://www.youtube.com/watch?v=plYESjZ12hM
Published 02/22/21
David Delabassée recently sat down with Kevin Rushforth to discuss the Packaging Tool (JEP 392) more commonly known as jpackage, a new tool that will be made production-ready in JDK 16.
Published 02/11/21
David Delabassée recently sat down with Stuart Marks and Jesper Wilhelmsson to discuss various ways of contributing to OpenJDK. Spoiler alert: there are many!
Published 01/30/21
David Delabassee continues the Panama discussion (cf. Episode 9) with Maurizio Cimadamore and Jorn Vernee. This episode focuses on the Foreign Linker API and the jextract tool.
Published 12/21/20
In this episode, David Delabassee discusses Project Panama's Foreign Support with Maurizio Cimadamore and Jorn Vernee. The episode starts with an overview of Project Panama, its Foreign Support and then discusses in detail the Foreign Memory Access API.
Published 12/11/20