Inside Java - podcast cover

Inside Java

Chad Arimura, David Delabasseeinsidejava.libsyn.com
Inside Java is a podcast for Java Developers brought to you directly from the people that make Java at Oracle. We'll discuss the language, the JVM, OpenJDK, platform security, innovation projects like Loom and Panama, and everything in between.
Last refreshed:
Follow this podcast in the Metacast mobile app to refresh it and see new episodes.
Download Metacast podcast app
Podcasts are better in Metacast mobile app
Don't just listen to podcasts. Learn from them with transcripts, summaries, and chapters for every episode. Skim, search, and bookmark insights. Learn more

Episodes

“Integrity by Default” with Ron Pressler

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 develop...

Jun 23, 202521 minSeason 2Ep. 5

“Efficient Initialization Using Stable Values” with Per Minborg

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 ...

Jun 09, 202529 minSeason 2Ep. 5

“Ahead of Time Computation” with Dan Heidinga

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, wh...

May 16, 202523 minSeason 2Ep. 4

“Stream Gatherers” with Viktor Klang

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 pro...

May 04, 202533 minSeason 2Ep. 3

“Doc, JavaDoc and Markdown” with Jonathan Gibbons

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 ...

Jan 21, 202556 minSeason 2Ep. 2

"Inside Java Weekly: JDK 24 and More" with Chad

In this shorter-format pod, Chad talks about JDK 24, preview features, and more. Show Notes JEP 11: Incubator Modules https://openjdk.org/jeps/11 JEP 12: Preview Features https://openjdk.org/jeps/12 Using the Preview Features Available in the JDK https://dev.java/learn/new-features/using-preview/ JEP 483: Ahead-of-time Compilation https://openjdk.org/jeps/483 JEP 485: Stream Gatherers https://openjdk.org/jeps/485 JEP 491: Synchronize Virtual Threads without Pinning https://openjdk.org/jeps/491 J...

Dec 20, 202415 minSeason 2Ep. 1

“The Panama Effect” with Jorn Vernee

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 th...

Jan 08, 202423 minSeason 1Ep. 32

“Sequenced Collections” with Stuart Marks

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 a...

Apr 25, 202340 minSeason 1Ep. 31

"Preview Features: A Look Back and A Look Ahead" with Alex Buckley

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://openjd...

Mar 21, 202333 minSeason 1Ep. 30

“Helidon Níma & Virtual Threads”

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.

Jan 12, 202329 minSeason 1Ep. 29

“Java Language - State of the Union”

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 o...

Dec 23, 202234 minSeason 1Ep. 28

“JavaFX”

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.

Nov 18, 202215 minSeason 1Ep. 27

"Java 19 is Here!"

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...

Sep 20, 202235 minSeason 1Ep. 26

"JavaOne is Back!"

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

Aug 03, 202230 minSeason 1Ep. 25

“Towards Generational ZGC”

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.

Jun 28, 202214 minSeason 1Ep. 24

“Java 18 is Here!”

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!

Mar 22, 202226 minSeason 1Ep. 23

“The Simple Web Server”

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.

Mar 04, 202227 minSeason 1Ep. 22

“JEP 421 and Finalization Deprecation”

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.

Jan 12, 202223 minSeason 1Ep. 21

“Java 17 is Here!” Part 2

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!

Sep 27, 202149 minSeason 1Ep. 20

“Java 17 is Here!” Part 1

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!

Sep 14, 202128 minSeason 1Ep. 19

“Java's steady march towards strong encapsulation” with Alan Bateman

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.

Jun 29, 202135 minSeason 1Ep. 18

“Pattern Matching” with Gavin Bierman

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`.

Jun 14, 202141 minSeason 1Ep. 17

“Let's discuss JDK and Networking” with Michael McMahon and Daniel Fuchs

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.

Apr 12, 202132 minSeason 1Ep. 16

“Java 16 is Here!” with Mikael Vidstedt

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/podcas...

Mar 16, 202134 minSeason 1Ep. 15

“Records Serialization” with Julia Boes and Chris Hegarty

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 cha...

Mar 08, 202137 minSeason 1Ep. 14

"JDK Flight Recorder" with Markus Grönlund

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 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...

Feb 22, 202135 minSeason 1Ep. 13

“jpackage” with Kevin Rushforth

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…

Feb 11, 202125 minSeason 1Ep. 12
Hosted on Libsyn
For the best experience, listen in Metacast app for iOS or Android