Explorez tous les épisodes du podcast Inside Java
| Titre | Date | Durée | |
|---|---|---|---|
| "The Panama Effect" with Jorn Vernee | 08 Jan 2024 | 00:23:01 | |
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 and the iterations that this API went through. Jorn also shares a few examples of Java libraries that already adopted the FFM API, the performance improvements they observed. He also explains how you can use this new API to integrate a native library within your own Java code. | |||
| "Sequenced Collections" with Stuart Marks | 25 Apr 2023 | 00:40:01 | |
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. He also shares his view on how Sequenced Collections can inspire future Java platform developments. | |||
| "The Simple Web Server" | 04 Mar 2022 | 00:26:41 | |
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. | |||
| "JEP 421 and Finalization Deprecation" | 12 Jan 2022 | 00:23:18 | |
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. | |||
| "Java 17 is Here!" Part 2 | 27 Sep 2021 | 00:48:49 | |
To celebrate 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! | |||
| "Java 17 is Here!" Part 1 | 14 Sep 2021 | 00:28:16 | |
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! | |||
| "Java's steady march towards strong encapsulation" with Alan Bateman | 29 Jun 2021 | 00:34:33 | |
With 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. | |||
| "Pattern Matching" with Gavin Bierman | 14 Jun 2021 | 00:41:23 | |
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`. | |||
| "Let's discuss JDK and Networking" with Michael McMahon and Daniel Fuchs | 12 Apr 2021 | 00:32:23 | |
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. | |||
| "Java 16 is Here!" with Mikael Vidstedt | 16 Mar 2021 | 00:33:30 | |
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 https://inside.java/podcast | |||
| "Records Serialization" with Julia Boes and Chris Hegarty | 08 Mar 2021 | 00:37:24 | |
Records are a standard and permanent Java language feature starting Java 16. This was a good occasion for David to discuss Records, and more specifically Records serialisa… Records serialization with Julia Boes and Chris Hegarty. Julia and Chris are both from the Dublin Java engineering team. They both work on Core Libraries, and as such, they 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. PS: Deserialization is largely discussed too! | |||
| "JDK Flight Recorder" with Markus Grönlund | 22 Feb 2021 | 00:35:05 | |
Chad discusses JDK Flight Recorder (JFR) with Markus Grönlund. 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 JEP 328: Flight Recorder Continuous Monitoring with JDK Flight Recorder
| |||
| "Preview Features: A Look Back and A Look Ahead" with Alex Buckley | 21 Mar 2023 | 00:33:22 | |
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 https://openjdk.org/jeps/12 A look ahead: https://openjdk.org/jeps/8300604
| |||
| "jpackage" with Kevin Rushforth | 11 Feb 2021 | 00:25:07 | |
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… | |||
| "How to contribute to OpenJDK" with Stuart Marks and Jesper Wilhelmsson | 30 Jan 2021 | 00:32:01 | |
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! | |||
| "Project Panama - The Foreign Linker API" with Maurizio Cimadamore and Jorn Vernee | 21 Dec 2020 | 00:24:59 | |
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. | |||
| "Project Panama - The Foreign Memory Access API" with Maurizio Cimadamore and Jorn Vernee | 11 Dec 2020 | 00:28:28 | |
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. Panama's Foreign Linker API will be discussed in a follow-up episode. | |||
| "Project Loom" with Ron Pressler | 24 Nov 2020 | 00:33:11 | |
Chad Arimura discusses Project Loom with Ron Pressler. Relevant links:
For all episodes and more, check out Inside Java and follow @java on Twitter. Episodes are now available on YouTube as well. | |||
| "The Vector API" with John Rose and Paul Sandoz | 17 Nov 2020 | 00:47:27 | |
In this episode, David Delabassee discusses the new Vector API with John Rose and Paul Sandoz. For more episodes, check out https://inside.java/podcast. Resources: | |||
| "Project Skara" with Joe Darcy and Erik Duveblad | 28 Oct 2020 | 00:32:51 | |
Chad Arimura discusses Project Skara with Joe Darcy and Erik Duveblad. Relevant Links:
For all episodes and more, check out Inside Java and follow @java on Twitter.
| |||
| "The Z Garbage Collector" with Per Liden | 14 Oct 2020 | 00:29:55 | |
In this episode, David Delabassee (Developer Relations) discusses with Per Liden (ZGC Lead) the Z Garbage Collector that is now production ready in JDK 15. | |||
| "Record Classes" with Gavin Bierman | 05 Oct 2020 | 00:35:39 | |
In this episode, David Delabassee (Developer Relations) discusses with Gavin Bierman (Consulting Member of Technical Staff) a new Java Language feature emerging from Project Amber, i.e. Records classes! For more episodes, check out Inside Java and follow @Java on Twitter. Contact us here. | |||
| "The State of Java" with Georges Saab | 14 Sep 2020 | 00:25:41 | |
Our guest today is Georges Saab (@gsaab), Vice President of Development of the Java Platform Group. We discuss the State of Java after 25 years, the latest innovations in OpenJDK, and why his name is spelled differently. Our host is Chad Arimura (@chadarimura), VP of Java Developer Relations. For future episodes and more, make sure to check out Inside Java and follow @java on Twitter.
| |||
| "Helidon Níma & Virtual Threads" | 12 Jan 2023 | 00:29:14 | |
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. | |||
| "Java 15 is Here!" with Mikael Vidstedt | 08 Sep 2020 | 00:33:47 | |
David Delabassee (@delabassee) discusses the latest Java release, Java 15, with Mikael Vidstedt (@MikaelVidstedt), Director of JVM Development. For future episodes and more, check out Inside Java and follow @java on Twitter.
Covered in This Episode
Garbage Collectors
Deprecation & Removal Security Other Features (JDK 14 & JDK 15)
OpenJDK Projects Discussed in this Episode
Additional Resources
| |||
| "Welcome to Inside Java!" with hosts Chad and David | 01 Sep 2020 | 00:17:58 | |
Welcome to the Inside Java podcast. In Episode #1 (we couldn't start at 0), the hosts Chad Arimura (VP Developer Relations) and David Delabassee (Developer Relations) introduce the Java Platform Group at Oracle, major innovation projects in OpenJDK, the Inside.java aggregation site, and this podcast. For future episodes and more, make sure to check out Inside Java and follow @java on Twitter. Mentioned links from episode
OpenJDK projects discussed in this episode Additional resources
| |||
| "Java Language - State of the Union" | 23 Dec 2022 | 00:33:50 | |
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 design of new Java Language features. | |||
| "JavaFX" | 18 Nov 2022 | 00:15:19 | |
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. | |||
| "Java 19 is Here!" | 20 Sep 2022 | 00:35:25 | |
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:
| |||
| "JavaOne is Back!" | 03 Aug 2022 | 00:29:34 | |
Chad interviews Sharat Chander about both the history of JavaOne, and what to expect with the return of it in October. Update blog series on Inside.java Register Now to get Early Pricing
| |||
| "Towards Generational ZGC" | 28 Jun 2022 | 00:14: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. | |||
| "Java 18 is Here!" | 22 Mar 2022 | 00:25:49 | |
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!
| |||
| "Doc, JavaDoc and Markdown" with Jonathan Gibbons | 21 Jan 2025 | 00:56:23 | |
Java leads by example regarding documentation: JavaDoc inspires trust in developers through its transparency on each Java API functionality, and the javadoc tool helps developers generate equally great documentation for their APIs and libraries. In this episode, Ana hosts Jonathan Gibbons, core contributor and maintainer of JDK tools, to discuss JavaDoc/javadoc developments, focusing on markdown in JavaDoc documentation comments. Given the importance of having code that is as easy to understand as it is functional, Jonathan dives into significant changes in Java's documentation component and associated tools, how JavaDoc is maintained, code documentation practices, and more. | |||
| "Inside Java Weekly: JDK 24 and More" with Chad | 20 Dec 2024 | 00:15:01 | |
In this shorter-format pod, Chad talks about JDK 24, preview features, and more.
Show Notes JEP 11: Incubator Modules JEP 12: Preview Features Using the Preview Features Available in the JDK JEP 483: Ahead-of-time Compilation JEP 485: Stream Gatherers JEP 491: Synchronize Virtual Threads without Pinning JEP 494: Module Import Declarations (Second Preview) JEP 495: Simple Source Files and Instance Main Methods (Fourth Preview) The Foreign Function and Memory API
| |||
| "Ahead of Time Computation" with Dan Heidinga | 16 May 2025 | 00:23:22 | |
OpenJDK's Project Leyden aims to improve the startup and warmup time of Java applications, for now by shifting computation from those phases to the applications' build time. Java 24 ships with ahead-of-time class loading and linking, which is the first step in that direction. In this episode, we learn about that as well as about Leyden's approach to reach its goals and some features that are available in its early access build plus some that aren't. Nicolai Parlog discusses with Dan Heidinga, who is JVM Runtime Architect at Oracle and, among other things, member of projects Leyden and Valhalla. | |||
| "Stream Gatherers" with Viktor Klang | 04 May 2025 | 00:32:57 | |
In this episode, Ana is joined by Viktor Klang, core JDK architect and author of the Stream Gatherers JDK Enhancement Proposal, to dive into one of the standout features of JDK 24: the Gatherers API. Viktor explains how Gatherers extend the Java Stream API with custom intermediate operations, why they were added to the platform, and how they can enhance your day-to-day Java development. He also shares practical tips for using the Gatherers API effectively, along with insights into the design process and how community feedback plays a crucial role in shaping future JDK features. | |||
| "Deprecations & Removals" with Stuart Marks | 28 Jul 2025 | 00:21:56 | |
Java is not just adding features, it's also removing old ones that became obsolete and are either a maintenance burden, performance drag, or hazardous to use. In this episode we touch on 32bit ports, applets, finalization, and the security manager. Nicolai Parlog talks to Stuart Marks, who works in the JDK Core Libraries group at Oracle. Right now, he's dressed in a lab coat and wears a stethoscope because he embodies his alter ego Dr. Deprecator. Nicolai Parlog talks to Stuart Marks, who works in the JDK Core Libraries group at Oracle. Right now, he's dressed in a lab coat and wears a stethoscope because he embodies his alter ego Dr. Deprecator. | |||
| "Integrity by Default" with Ron Pressler | 23 Jun 2025 | 00:21:08 | |
The Java runtime offers a host of guarantees like memory safety, type safety, encapsulation, and many more. What makes these aspirations actual guarantees is a property called "integrity". But there are a few mechanisms in Java that allow undermining integrity - some for good, some for less good reasons. Integrity by default states that all such operations need to be disabled by default. Today we discuss why that is so important, what the progress toward this goal has been, and what Java developers need to know to keep their applications going. Nicolai Parlog talks to Ron Pressler, who is Java Architect at Oracle and, among other things, lead of Project Loom. | |||
| "Efficient Initialization Using Stable Values" with Per Minborg | 09 Jun 2025 | 00:29:21 | |
The Stable Values API is a preview feature in Java 25 that allows developers to define immutable objects that are initialized at most once. It combines the flexibility of lazy initialization with the performance advantages of final fields. In this episode, Ana hosts Per Minborg, a member of the Java Core Library team at Oracle and co-author of JEP 502 on Stable Values. Per explains the concept behind Stable Values and how this approach addresses the drawbacks of eager initialization in Java. By deferring the creation of expensive resources until they are actually needed, Stable Values contribute to more efficient application startup. He also discusses the design process and specifics of the API, highlighting its benefits in multi-threaded environments—particularly its ability to ensure thread-safe, at-most-once initialization without the need for complex synchronization mechanisms. | |||
| "From Cowboy Mode to Careful Stewardship" with Mark Reinhold | 24 Oct 2025 | 00:40:43 | |
Java is a 30-year success story, made possible because its development consistently aligned with users' needs. In its early days, the platform required new features quickly, but over time, minimizing code breakage while carefully evolving the platform became essential. Critical junctures along that path included the introduction of modules and the current strive toward integrity by default. Nicolai Parlog talks to Mark Reinhold, Chief Architect of the Java Platform, who brings nearly three decades of experience shaping Java's evolution. | |||
| "Amber & Valhalla - Incremental Design and Feature Arcs" with Brian Goetz | 24 Sep 2025 | 00:21:08 | |
OpenJDK projects such as Amber and Valhalla are renowned for their careful and methodical approach to designing and introducing new features to the Java platform. In this episode, Nicolai Parlog is joined by Brian Goetz, Java Language Architect at Oracle and lead of both Project Amber and Project Valhalla. Brian shares insights and updates on these influential initiatives as they discuss Amber's upcoming feature arc, Valhalla's plans for null-restriction, and more. | |||