Inside Java
David Delabassee
0
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.
Epizode
-
"JSON API, Valhalla Progress, LTS ❤️ PQC" [IJN] 15.08.2026 10minJEP 540 proposes to incubate a simple JSON API and is currently proposed to target JDK 28. The pull request for Project Valhalla's JEPs 401 and 539 were merged and value types are available as a preview feature in the latest JDK 28 early-access builds. Oracle plans to backport post-quantum cryptography to Oracle JDKs with LTS (25, 21, 17, 11, and 8) and move Java to monthly security updated (currently quarterly). JDK 28 EA builds: https://jdk.java.net/28/ Dan's mail re values: https://mail.openjdk.org/archives/list/core-libs-dev@openjdk.org/thread/Y72NRXM7KYBX43OKYBQMVKOZDWKG4MHS/ Angelos' mail re primitive patterns: https://mail.openjdk.org/archives/list/amber-spec-experts@openjdk.org/thread/WSXW4QMJ3EBIHIULEB25HUAMR5JB767H/ JEP 540: https://openjdk.org/jeps/540 JEP 496: https://openjdk.org/jeps/496 JEP 497: https://openjdk.org/jeps/497 JEP 572: https://openjdk.org/jeps/572 Blog post in PQC in LTS: https://blogs.oracle.com/java/post-quantum-cryptography-in-long-term-support-jdk-releases Accelerated Vulnerability Detection and Response: https://blogs.oracle.com/security/accelerating-vulnerability-detection-and-response-at-oracle More frequent Oracle JDK releases: https://blogs.oracle.com/java/transitioning-java-to-more-frequent-security-updates More Frequent OpenJDK releases: https://mail.openjdk.org/archives/list/jdk-updates-dev@openjdk.org/thread/SVHDNJDY62MX6YBEA4FSMW4U72H77F6S/ JDK 27 RC pushed back: https://mail.openjdk.org/archives/list/jdk-dev@openjdk.org/thread/EYKJPUAZ4BX4DXD7H4C5ETWJFNQZBFO5/ OpenJDK Mail Search: https://openjdk.barlasgarden.com/ -
"Embracing Virtual Threads with Helidon" [I/O] 06.08.2026 14minHelidon 4.4 was released in April 2026 and stands out from other web frameworks by embracing new Java features as early as possible, particularly virtual threads and ahead-of-time computation. It is also aiming to become an OpenJDK project in the coming months. In this "Input/Output" episode of the Inside Java Podcast, recorded during JavaOne 2026, Nicolai Parlog talks to Joe Di Pol, Lead Principal Platform Software Engineer at Oracle where he works on Helidon. "Input/Output" is our new show, where we talk to people outside of OpenJDK to bring you their perspectives and insights into what's happening in the Java ecosystem. -
"JIT Compiler From the Ground Up" [AtA] 30.07.2026 45minWhile Java programs are deployed as bytecode, performance-relevant code will be compiled, at run time, to machine code whose performance rivals that of any other platform. In the HotSpot JVM, this is the job of the just-in-time compilers C1 and C2 and between speculation and traps, inlining and constant folding, escape analysis and scalar replacement (and many more), they apply a number of heuristics, analyses, and transformations to achieve that. This requires expertise, careful research, thorough testing, and regular reevaluations of old assumptions. In this "Ask the Architects" episode of the Inside Java Podcast, recorded during JavaOne 2026, Nicolai Parlog talks to Roberto Lozano, compiler engineer at the Java Platform Group at Oracle. In our show "Ask the Architects", we talk to experts in OpenJDK about their work on the Java language, API, and runtime. -
"AI Solutions with Spring AI 2.0 and Java" [I/O] 23.07.2026 19minSpring AI 2.0 released in June 2026 and is one of several projects ensuring Java's continued strength in enterprise AI development. Here are some tips on deterministic agents, MCP servers and skills, prompt engineering, and where Java's richness for AI solutions stems from. In this "Input/Output" episode of the Inside Java Podcast, recorded during JavaOne 2026, Lize Raes talks to Dan Vega, Spring Developer Advocate at Broadcom, Java Champion, speaker, and author. "Input/Output" is our new show, where we talk to people outside of OpenJDK to bring you their perspectives and insights into what's happening in the Java ecosystem. -
"JDK 27 + Valhalla, Now! + Hackathon" [IJN] 19.07.2026 10minJDK 27 entered Ramp-Down-Phase 1 in early June, so we can go over its features. Valhalla's first JDK Enhancement Proposal (401) will likely be part of JDK 28. Show off your Java ideas in the "Modern Java in the Wild" hackathon. There are two interesting articles for those who want to dive deeper into AOT with agents or into using GPU tensor cores from Java. Links: JDK 27 JEP list: https://openjdk.org/projects/jdk/27/ Valhalla mail: https://mail.openjdk.org/archives/list/jdk-dev@openjdk.org/threadAIA3O3LHFZ6T7TIPH7KZT4WS4B6U72U5/ JEP 401 PR: https://github.com/openjdk/jdk/pull/31120 "Java in the Wild" hackathon: https://www.hackster.io/contests/modern-java-in-the-wild AOT vs agents: https://bugs.openjdk.org/browse/JDK-8387190 AOT and JVMTI agents: https://bugs.openjdk.org/browse/JDK-8387194 "Exploiting GPU Tensor Cores": https://openjdk.org/projects/babylon/articles/hat-tensors/hat-tensors -
"Scripting JS and Python with Project Detroit" with Mikael Vidstedt [AtA] 09.07.2026 16minOpenJDK recently resurrected Project Detroit, an effort to ease Java's interoperability with Python and JavaScript. Interestingly, while both integrations will work through the _java.scripting_ API, there are still differences between them. On top of that, the JavaScript integration needs to explain how it related to the removal of Nashorn in JDK 16. In this "Ask the Architect" episode of the Inside Java Podcast, recorded during JavaOne 2026, Nicolai Parlog talks to Mikael Vidsted, lead of the Java Virtual Machine team at Oracle, about Project Detroit. Project Detroit: https://openjdk.org/projects/detroit/ -
"How JEPs Drive Java's Evolution" with Alex Buckley [AtA] 25.06.2026 56minJDK Enhancement Proposals are OpenJDK's vehicle for documenting and communicating substantial changes of the Java language, its APIs, and the runtime but also the JDK project itself, for example when it comes to development processes. Their well-defined structure and the immense care that goes into writing them make them eminently readable and understanding them well is essential to understanding Java's development. In this "Ask the Architect" episode of the Inside Java Podcast, recorded during JavaOne 2026, Nicolai Parlog talks to Alex Buckley, the Guardian of the JEP process. -
"Java *is* Memory Efficient" with Ron Pressler [AtA] 28.05.2026 35minJava's use of memory, often chided for being excessive, is actually a strength as it trades more memory use for fewer CPU cycles. Java can only make this tradeoff due to its moving garbage collectors, something more memory efficient platforms often cannot. But what's the point in leaving available memory on the table if using it makes your program run faster? Efficient use of that resource wouldn't be to leave it untapped but to use it to speed up the program. In this "Ask the Architect" episode of the Inside Java Podcast, recorded during JavaOne 2026, Nicolai Parlog talks to Ron Pressler, Java Architect at Oracle. -
"Java Gets Post-Quantum TLS" [IJN] 18.05.2026 4minWith JDK 27 introducing hybrid key exchange schemes that combine ML-KEM with traditional ECDHE algorithms, Java applications can gain TLS-layer protection against the harvest-now, decrypt-later threat without rewriting business logic. In this episode of the Inside Java Newscast, Ana explains post-quantum hybrid key exchange for TLS 1.3 and demonstrates how a Java application can take advantage of it. See https://inside.java/podcast -
"Make Java Safer with Flexible Constructor Bodies" [IJN] 05.05.2026 7minFlexible constructor bodies were added to Java 25 with JEP 513. In this episode of the Inside Java Newscast Billy Korando will review the issues with how constructors used to work before Java 25, either forcing developers to write convoluted code, or in some cases undermining the safety and integrity of child classes. Billy will then cover how flexible constructor bodies address these issues and how Java developers can use them to write safer code and better designed applications. Make sure to check https://inside.java/podcast -
"Ask the Architects at JavaOne'26" [AtA] 23.04.2026 58minIn JavaOne 2026's closing session, audience members had the opportunity to ask the Java architects questions. They asked about the state of structured concurrency and Project Babylon, how Java is being developed and the role AI plays in that process, the architects' pet projects, and whether they would ever consider breaking backward compatibility, etc. Make sure to check https://inside.java/podcast -
"You Must Avoid Final Field Mutation" [IJN] 16.04.2026 9minWith JDK 26 / JEP 500 starting to prevent final field mutation through reflection, it is important that Java projects stop employing that practice. For more, check https://inside.java/podcast -
"How JDK 26 Improves G1's Throughput" [AtA] 09.04.2026 17minG1 is Java's default garbage collector in most environments, and its throughput has been considerably improved in JDK 26 by streamlining its write barriers. This conversation explores the background of that change and dives deep into regions, write barriers, concurrent marking, card tables, and how all that impacts throughput before eventually getting to the improvements made in Java 26, which lay further groundwork to G1 becoming the one and only default collector across _all_ environments. In this "Ask the Architect" episode of the Inside Java Podcast, recorded during JavaOne 2026, Nicolai Parlog talks to Stefan Johansson, Hotspot Garbage Collection engineer at Oracle. For more, check https://inside.java/podcast -
"Analyzing Crashed JVMs" [IJN] 04.04.2026 4minThe Java tool jcmd ("j command") sends diagnostic commands to the JVM, which will react by supplying the desired information: from finalizer queues to heap and thread dumps, from GC insights to virtual thread scheduler statistics. At the moment, this requires a running JVM, but once candidate JEP 528 is adopted, a lot of that information can be seamlessly extracted from a crashed JVM's core dump, allowing easy post-mortem analysis. -
"Java Carrier Classes & Discussing Syntax" [AtA] 26.03.2026 46minCarrier classes are Project Amber's current idea to extend some of records' benefits to regular classes. Probably the most important among them is deconstruction, which would allow classes to participate in pattern matching and reconstruction. In recent weeks, there have been two mails to the Amber mailing list that describe that idea, and in this episode we discuss them both as well as the evolution between them. We also hear why syntax discussions often provide negative value and get a sneak peak at what will likely be the next Project Amber language feature. Just ahead of the JavaOne speakers dinner, Nicolai Parlog sits down with Brian Goetz, Java Language Architect in Oracle's Java Platform Group, for this "Ask the Architect" episode of the Inside Java Podcast. -
"Unboxing Java 26 for Developers" [IJN] 12.03.2026 11minJava 26 is getting all packaged up to be shipped worldwide! As with every release of the JDK there are a number of new features, improvements, changes in behavior, and more developers should be aware of before upgrading. In this episode of the Inside Java Newscast we will review all the noteworthy changes coming in Java 26 that will impact developers. -
"Towards Better Checked Exceptions" [IJN] 09.03.2026 13minJava's checked exceptions are both an integral part of the language and one of its most contested features. Whether their introduction was a mistake and whether they should all be turned unchecked are frequently discussed topics but since the former is not overly relevant and the latter unlikely, this conversation isn't moving Java forward. Instead, let's talk about specific issues with checked exceptions and what could be done about them - from (entirely speculative) language changes to (marginally realistic) JDK/library evolution to stylistic changes. -
"LazyConstants in JDK 26" [IJN] 06.03.2026 10minLazily initializing fields in Java is error-prone and undermines constant-folding. JDK 26 comes with JEP 526, which previews LazyConstant, a type that lazily initializes a value through a given Supplier. It executes that supplier at most once successfully and then assigns the value to a field annotated with @Stable, which allows constant folding. This API is also a poster child for how OpenJDK develops and evolves features. -
"HTTP/3 in Java" [ATA] 26.02.2026 42minHTTP/3 is the next version of the internet's most important application layer protocol. But, somewhat surprisingly, it uses UDP (via the new QUIC protocol) instead of TCP/IP, which has implications for the number of initial round trips, HTTP version selection, and time to first byte, but also adoption and evolution. Java 26 supports HTTP/3 out of the box. Nicolai Parlog talks to Daniel Fuchs and Daniel Jelinski, both Consulting Members of Technical Staff at Oracle and OpenJDK committers, about Java's HTTP client. They start by briefly retracing its introduction in Java 11 and its support for HTTP/2 before diving deeper into HTTP/3 to learn about the motivation, technical underpinnings like the QUIC protocol, and challenges for its adoption before discussing its integration into Java 26 Note: Sorry for the minor audio issues, thank you for your understanding. -
"Carrier Classes" [IJN] 23.02.2026 10minThis episode presents Project Amber lead Brian Goetz's recent email "Data Oriented Programming, Beyond Records", wherein he describes plans to improve Java's data handling capabilities by introducing carrier classes, a generalization of records. Like them, carrier classes describe their state through a component list that defines the type's external API: accessors, a constructor, and matching deconstructor - this allows carrier classes to participate in pattern matching and reconstruction. Unlike records, the implementation of this API remains the developer's task although component fields offer a shortcut for the common case where the API does map to a field. Carrier classes don't have to be final (and can hence participate in inheritance) and neither do their fields (so they can be mutable data carriers). The email also mentions carrier interfaces, allowing records to be abstract as well as a relaxation of deconstruction patterns that make them more amenable to evolution of the matched type. This episode also briefly touches on Gavin Bierman's mail to the Project Amber mailing list that announces pattern assignments and constant patterns.
Popularan u
Ovaj podcast pojavljuje se i na podcast ljestvicama ovih zemalja.