Amber
2026
- Episode 52 “Carrier Classes & Discussing Syntax” [AtA] by Nicolai Parlog on March 26, 2026
- Data Oriented Programming, Beyond Records by Brian Goetz on February 27, 2026
- Episode 47 “Carrier Classes” [IJN] by Nicolai Parlog on February 23, 2026
- Episode 46 “Java's Plans for 2026” [IJN] by Nicolai Parlog on February 20, 2026
- Towards Better Checked Exceptions - Inside Java Newscast #107 by Nicolai Parlog on February 19, 2026
- Data-Oriented Programming for Java: Beyond Records by Brian Goetz on January 27, 2026
- Carrier Classes; Beyond Records - Inside Java Newscast #105 by Nicolai Parlog on January 22, 2026
- Java's Plans for 2026 - Inside Java Newscast #104 by Nicolai Parlog on January 8, 2026
2025
- Java's 2025 in Review - Inside Java Newscast #103 by Nicolai Parlog on December 18, 2025
- JEP targeted to JDK 26: 530: Primitive Types in Patterns, instanceof, and switch (4th Preview) by Angelos Bimpoudis on December 6, 2025
- Pattern Matching, Under the Microscope by Angelos Bimpoudis on October 13, 2025
- Episode 40 “Amber & Valhalla - Incremental Design and Feature Arcs” with Brian Goetz by Brian Goetz, Nicolai Parlog on September 28, 2025
- All New Java Language Features Since Java 21 #RoadTo25 by José Paumard on August 31, 2025
- A New Model for Java Object Initialization by Dan Smith on July 27, 2025
- JEP targeted to JDK 25: 507: Primitive Types in Patterns, instanceof, and switch (3rd Preview) by Angelos Bimpoudis on June 17, 2025
- Key Java Language Updates From 2020 to 2025 by Gavin Bierman on June 6, 2025
- Pattern Matching in Java: Better Code, Better APIs by Dan Smith on May 24, 2025
- JEP targeted to JDK 25: 513: Flexible Constructor Bodies by Gavin Bierman & Archie Cobbs (guest) on May 19, 2025
- JEP targeted to JDK 25: 512: Compact Source Files and Instance Main Methods by Ron Pressler, Jim Laskey, Gavin Bierman on May 6, 2025
- JEP targeted to JDK 25: 511: Module Import Declarations by Jim Laskey, Gavin Bierman on May 2, 2025
- Finalizing the Java On-ramp - Inside Java Newscast #90 by Billy Korando on April 24, 2025
- Where Is the Java Language Going? by Brian Goetz on April 20, 2025
- Java Language Evolution in 2025 - Inside Java Newscast #84 by Nicolai Parlog on January 30, 2025
2024
- JEP targeted to JDK 24: 495: Simple Source Files and Instance Main Methods (4th Preview) by Ron Pressler, Jim Laskey, Gavin Bierman on November 18, 2024
- JEP targeted to JDK 24: 494: Module Import Declarations (2nd Preview) by Jim Laskey, Gavin Bierman on November 18, 2024
- Pattern Matching in Java - Past, Present, Future by Angelos Bimpoudis on November 11, 2024
- JEP targeted to JDK 24: 488: Primitive Types in Patterns, instanceof, and switch (Second Preview) by Angelos Bimpoudis on November 7, 2024
- Java Language Futures - Fall 2024 Edition by Gavin Bierman on October 30, 2024
- Build a Cloud Compute Instance with Java Concepts by Ana-Maria Mihalceanu on July 16, 2024
- Java Language Futures - Spring 2024 Edition by Gavin Bierman on July 1, 2024
- Why Update Data-Oriented Programming to Version 1.1? by Nicolai Parlog on June 26, 2024
- What Happened to String Templates? Inside Java Newscast #71 by Nicolai Parlog on June 20, 2024
- When to use Data-Oriented Programming v1.1 by Nicolai Parlog on June 10, 2024
- Separate Operations From Data - Data-Oriented Programming v1.1 by Nicolai Parlog on June 5, 2024
- Make Illegal States Unrepresentable - Data-Oriented Programming v1.1 by Nicolai Parlog on June 3, 2024
- JEP targeted to JDK 23: 482: Flexible Constructor Bodies (Second Preview) by Gavin Bierman & Archie Cobbs (guest) on May 31, 2024
- Model Data, the Whole Data, and Nothing but the Data - Data-Oriented Programming v1.1 by Nicolai Parlog on May 29, 2024
- JEP targeted to JDK 23: 477: Implicitly Declared Classes and Instance Main Methods (Third Preview) by Ron Pressler, Jim Laskey, Gavin Bierman on May 28, 2024
- Model Data Immutably and Transparently - Data-Oriented Programming v1.1 by Nicolai Parlog on May 27, 2024
- Data-Oriented Programming in Java - Version 1.1 by Nicolai Parlog on May 23, 2024
- Module Imports in Java 23 - Inside Java Newscast #69 by Nicolai Parlog on May 16, 2024
- JEP targeted to JDK 23: 476: Module Import Declarations (Preview) by Gavin Bierman on May 6, 2024
- Java 21 and Beyond: A Roadmap of Innovations by Ana-Maria Mihalceanu on April 28, 2024
- Java Withers - Inside Java Newscast #67 by Nicolai Parlog on April 18, 2024
- Java 23: Restoring the Balance with Primitive Patterns - Inside Java Newscast #66 by Nicolai Parlog on April 4, 2024
- JDK 22 in Two Minutes! - Sip of Java by Billy Korando on March 21, 2024
- Java Language Update - Early 2024 Edition by Viktor Klang on February 18, 2024
- Data-Oriented Programming in Java 21 by Nicolai Parlog on February 12, 2024
- Java 22 Previews Statements Before super(...) and this(...) - Inside Java Newscast #62 by Nicolai Parlog on February 1, 2024
- JEP 455: Primitive Types in Patterns, instanceof, and switch (Preview) by Angelos Bimpoudis on January 24, 2024
- Java's Plans for 2024 - Inside Java Newscast #61 by Nicolai Parlog on January 18, 2024
- Stepping in 2024 with Powerful Java Language Features by Ana-Maria Mihalceanu on January 16, 2024
2023
- Uniform handling of failure in switch by Brian Goetz on December 15, 2023
- Java 22 Unpacking - Inside Java Newscast #59 by Nicolai Parlog on December 7, 2023
- JEP targeted to JDK 22: 463: Implicitly Declared Classes and Instance Main Methods (Second Preview) by Ron Pressler, Jim Laskey on November 29, 2023
- JEP targeted to JDK 22: 447: Statements before super(...) (Preview) by Gavin Bierman & Archie Cobbs (guest) on November 23, 2023
- JEP targeted to JDK 22: 456: Unnamed Variables & Patterns by Angelos Bimpoudis on November 22, 2023
- JEP targeted to JDK 22: 459: String Templates (Second Preview) by Jim Laskey on November 18, 2023
- Pattern Matching for switch - Sip of Java by Billy Korando on November 13, 2023
- Record Patterns in Java 21 - Sip of Java by Billy Korando on November 6, 2023
- Solving the Countdown problem with Java 21's Language Features by Sundar Athijegannathan on November 3, 2023
- Brian Goetz Answers Your Java Questions by Brian Goetz, Nicolai Parlog on October 20, 2023
- Java 21 is an explosive release! 💣💥 by Nicolai Parlog on October 3, 2023
- New candidate JEP: 456: Unnamed Variables and Patterns by Angelos Bimpoudis on September 27, 2023
- New candidate JEP: 455: Primitive types in Patterns, instanceof, and switch (Preview) by Angelos Bimpoudis on September 26, 2023
- Java 21 Brings Full Pattern Matching #RoadTo21 by Nicolai Parlog on September 17, 2023
- Java Records are "Trusted" and Consequently Faster by Per-Ake Minborg on September 15, 2023
- All That is in Java 21?! - Inside Java Newscast #50 by Nicolai Parlog on June 8, 2023
- Patterns: Exhaustiveness, Unconditionality, and Remainder by Brian Goetz, Gavin Bierman on May 26, 2023
- Script Java Easily in 21 and Beyond - Inside Java Newscast #49 by Nicolai Parlog on May 25, 2023
- JEP proposed to target JDK 21: 443: Unnamed Patterns and Variables (Preview) by Angelos Bimpoudis on May 9, 2023
- JEP proposed to target JDK 21: 445: Unnamed Classes and Instance Main Methods (Preview) by Jim Laskey on May 6, 2023
- JEP proposed to target JDK 21: 441: Pattern Matching for switch by Gavin Bierman on May 5, 2023
- JEP proposed to target JDK 21: 440: Record Patterns by Gavin Bierman on May 5, 2023
- The SolutionFactory To Java's Problems - Keynote by Ana-Maria Mihalceanu, Nicolai Parlog on April 28, 2023
- Interpolating Strings Like a King in Java 21 - Inside Java Newscast #47 by Ana-Maria Mihalceanu on April 27, 2023
- JDK 20 Release! - Sip of Java by Billy Korando on April 22, 2023
- Getting Rid Of Unused Variables (Finally) - Inside Java Newscast #46 by Nicolai Parlog on April 13, 2023
- Java Language Futures, Spring 2023 Edition by Stuart Marks on April 6, 2023
- Java Next - From Amber to Loom, from Panama by Nicolai Parlog on April 2, 2023
- Data-Oriented Programming in Java by Gavin Bierman on March 9, 2023
- Deconstruction Patterns by Brian Goetz on March 6, 2023
- JEP proposed to target JDK 21: 430: String Templates (Preview) by Jim Laskey on March 3, 2023
- Java's Plans for 2023 - Inside Java Newscast #40 by Nicolai Parlog on January 19, 2023
2022
- Episode 28 “Java Language - State of the Union” by Gavin Bierman, David Delabassee on December 23, 2022
- Tutorial - Using Pattern Matching by José Paumard on December 22, 2022
- Java 17 to 20 Pattern Matching full tutorial with Records, Instanceof and Switch - JEP Café #14 by José Paumard on November 8, 2022
- Inside Java | JavaOne 2022 Technical Keynote by Chad Arimura on October 24, 2022
- New candidate JEP: 433: Pattern Matching for switch (4th Preview) by Gavin Bierman on October 19, 2022
- New candidate JEP: 432: Record Patterns (2nd Preview) by Gavin Bierman on October 19, 2022
- Clean Code with Records, Sealed Classes and Pattern Matching by José Paumard on October 17, 2022
- Starting (With) Java, Made Simple - Inside Java Newscast #35 by Nicolai Parlog on October 6, 2022
- Paving the on-ramp by Brian Goetz on September 29, 2022
- Java To The Future by Billy Korando on September 14, 2022
- Java 19 in Action - Inside Java Newscast #33 by Nicolai Parlog on September 8, 2022
- String Templates, JavaFX 19, Deserialization, and more at JavaOne - Inside Java Newscast #32 by Nicolai Parlog on August 23, 2022
- Sequenced Collections, Purity, and more at JavaOne - Inside Java Newscast #31 by Nicolai Parlog on August 11, 2022
- Java Q&A - Inside Java Newscast #30 by Nicolai Parlog, Billy Korando on July 28, 2022
- How Amber is Driving Java’s Evolution by Billy Korando on July 21, 2022
- Clean Application Development with Records, Sealed Classes and Pattern Matching by José Paumard on July 19, 2022
- How many subclasses can be declared for a sealed class? by Brian Goetz on July 18, 2022
- Data-Oriented Programming - Inside Java Newscast #29 by Nicolai Parlog on July 14, 2022
- Local Variable Type Inference FAQ by July 11, 2022
- Data-Oriented Programming in Java by Brian Goetz on June 20, 2022
- Java 19 - The Best Java Release? - Inside Java Newscast #27 by Nicolai Parlog on June 16, 2022
- Deconstructing Records in Pattern Matching - Inside Java Newscast #26 by Nicolai Parlog on June 2, 2022
- News Grab Bag: Loom Virtual Threads, Lilliput, Pattern Matching, … - Inside Java Newscast #25 by Nicolai Parlog on May 20, 2022
- JEP proposed to target JDK 19: Record Patterns (Preview) by Gavin Bierman on May 13, 2022
- Java Next - From Amber to Loom, from Panama to Valhalla by Nicolai Parlog on May 9, 2022
- WHEN and NULL In Pattern Matching - Inside Java Newscast #24 by Nicolai Parlog on May 5, 2022
- New candidate JEP: 427: Pattern Matching for switch (Third Preview) by Gavin Bierman on April 26, 2022
- Java Language Futures: Spring 2022 Edition by Gavin Bierman on April 19, 2022
- The Elegance of Pattern Matching in Modern Java by Gavin Bierman & Venkat Subramaniam (guest) on April 4, 2026
- Leverage Java 17 New Features to Create Your Wordle Checker - JEP Café #10 by José Paumard on February 22, 2022
- Refactoring Java 8 code with Java 17 new features - JEP Café #9 by José Paumard on February 1, 2022
- Java's Plans for 2022 - Inside Java Newscast #18 by Nicolai Parlog on January 13, 2022
- Java 17 Deep Dive by José Paumard on January 11, 2022
- Records Patterns, Performance and Serialization - JEP Café #8 by José Paumard on January 6, 2022
2021
- 11 Great Java Tricks From Dev.java by Nicolai Parlog on December 25, 2021
- Records, Sealed Classes and Pattern Matching by José Paumard on November 19, 2021
- JEP proposed to target JDK 18: 420: Pattern Matching for switch (Second Preview) by Gavin Bierman on November 16, 2021
- Text Blocks - JEP Café #5 by José Paumard on October 21, 2021
- Gavin Bierman explains Pattern Matching for switch, a Java 17 preview feature by Gavin Bierman on October 1, 2021
- Making Use of Sealed Classes in Java by Gavin Bierman & Dr. Venkat Subramaniam (guest) on April 4, 2026
- Episode 20 “Java 17 is Here! Part 2” by Brian Goetz, Stuart Marks, Chad Arimura on September 27, 2021
- Pattern Matching in Java 17 and Beyond by Nicolai Parlog on September 24, 2021
- Java Language Futures: Late 2021 Edition by Gavin Bierman on September 21, 2021
- Switch Expressions - JEP Café #3 by José Paumard on August 19, 2021
- AMA About the Java Language by Brian Goetz, Nicolai Parlog on August 2, 2021
- Minor improvement to anonymous classes by Brian Goetz on August 1, 2021
- Sealed Classes - JEP Café #2 by José Paumard on July 22, 2021
- Episode 17 “Pattern Matching for switch” with Gavin Bierman by Gavin Bierman, David Delabassee on June 13, 2021
- Inside Java Newscast #5 by Nicolai Parlog, José Paumard on May 27, 2021
- JEP proposed to target JDK 17: 406: Pattern Matching for switch (Preview) by Mark Reinhold on May 19, 2021
- Rehabilitating switch -- a scorecard by Brian Goetz on May 17, 2021
- Inside Java Newscast #4 by Nicolai Parlog on May 11, 2021
- Why Java's Records Are Better* Than Lombok's @Data and Kotlin's Data Classes by Nicolai Parlog on May 6, 2021
- Switch labels (null again), some tweaking by Brian Goetz on April 23, 2021
- Inside Java Newscast #3 by Nicolai Parlog on April 22, 2021
- How Java Records Can Improve Serialization by Julia Boes, Chris Hegarty on April 13, 2021
- Inside Java Newscast #2 by Nicolai Parlog on April 8, 2021
- Java Language Futures: Spring 2021 by Gavin Bierman on April 8, 2021
- New candidate JEP: 409: Sealed Classes by Mark Reinhold on April 7, 2021
- Record Serialization in Practice by Julia Boes, Chris Hegarty on April 6, 2021
- New candidate JEP: 406: Pattern Matching for switch (Preview) by Mark Reinhold on March 26, 2021
- New candidate JEP: 405: Record Patterns & Array Patterns (Preview) by Mark Reinhold on March 26, 2021
- Looking ahead: pattern assignment by Brian Goetz on March 23, 2021
- Simpler Serialization with Records by Julia Boes, Chris Hegarty on March 12, 2021
- Episode 14 “Records Serialization” with Julia Boes and Chris Hegarty by Julia Boes, Chris Hegarty, David Delabassee on March 8, 2021
- Guards by Brian Goetz on March 5, 2021
- Primitive type patterns and conversions by Brian Goetz on March 1, 2021
- OracleDevLive Preview | Gavin Bierman on Java Language Futures by Gavin Bierman, James Grisanzio on February 24, 2021
- When Records Met Serialization: A Happy Tale by Julia Boes, Chris Hegarty on February 23, 2021
- Java Feature Spotlight: Pattern Matching by Brian Goetz on January 22, 2021
- Pattern features for next iteration by Brian Goetz on January 19, 2021
- [pattern-switch] Guards by Brian Goetz on January 8, 2021
- Pattern Matching in the Java Object Model by Brian Goetz, Gavin Bierman on January 6, 2021
- Array patterns (and varargs patterns) by Brian Goetz on January 5, 2021
2020
- Specs update by Gavin Bierman on December 22, 2020
- JEP proposed to target JDK 16: 397: Sealed Classes (Second Preview) by Mark Reinhold on November 24, 2020
- The Record Attribute - What does it mean to be a record at runtime? by Chris Hegarty on November 5, 2020
- New candidate JEP: 397: Sealed Classes (Second Preview) by Mark Reinhold on October 29, 2020
- JEP proposed to target JDK 16: 394: Pattern Matching for instanceof by Mark Reinhold on October 27, 2020
- JEP proposed to target JDK 16: 395: Records by Mark Reinhold on October 20, 2020
- Relaxed assignment conversions for sealed types by Brian Goetz on October 9, 2020
- New candidate JEP: 395: Records by Gavin Bierman on October 9, 2020
- New candidate JEP: 394: Pattern Matching for instanceof by Gavin Bierman on October 6, 2020
- Episode 4 “Record Classes” with Gavin Bierman by Gavin Bierman, David Delabassee on October 5, 2020
- Java Language Futures - Mid 2020 Edition by Gavin Bierman on September 17, 2020
- 'Type patterns in switch' document updated by Brian Goetz on September 8, 2020
- Finalizing in JDK 16 - Pattern matching for instanceof by Brian Goetz on August 26, 2020
- A peek at the roadmap for pattern matching and more by Brian Goetz on August 12, 2020
- Programmer's Guide To Text Blocks by Jim Laskey, Stuart Marks on August 5, 2020
- Finalizing in JDK 16 - Records by Gavin Bierman on July 27, 2020
- Finalizing in JDK 16 - Pattern matching for instanceof by Gavin Bierman on July 27, 2020
- Record Serialization by Chris Hegarty, Alex Buckley on July 20, 2020
- Next up for patterns: type patterns in switch by Brian Goetz on June 24, 2020
- Java Feature Spotlight: Sealed Classes by Brian Goetz on June 17, 2020
- JEP 360: Sealed Classes (Preview) - targeted to JDK 15 by Mark Reinhold on May 21, 2020
- Class & Interface Terminology by Dan Smith on May 7, 2020
- Java Feature Spotlight: Text Blocks by Brian Goetz on May 1, 2020
- Lombok getter/setter vs. Records by Brian Goetz on April 20, 2020
- Amber is moving to Git, GitHub and Skara by Vicente Romero, on April 13, 2020
- Java Languages Features for Improved Productivity by Stuart Marks on April 1, 2020
- Evolving Java: Project Amber by Vicente Romero on February 20, 2020
- Java Feature Spotlight: Records by Brian Goetz on February 4, 2020
- Towards cleaner nesting by Brian Goetz on January 7, 2020
2019
- Java Language Futures - Late 2019 Edition by Brian Goetz on November 9, 2019
- Java Feature Spotlight: Local Variable Type Inference by Brian Goetz on November 1, 2019
- Java Language Futures - 2019 Edition by Brian Goetz on September 18, 2019
- Local Variable Type Inference FAQ by Brian Goetz, Stuart Marks on August 30, 2019
- Towards Better Serialization by Brian Goetz on June 11, 2019
- Data Classes and Sealed Types for Java by Brian Goetz on February 28, 2019
2018
- InfoQ Podcast with Brian Goetz by Brian Goetz on December 23, 2018
- JEP proposed to drop from JDK 12: 326: Raw String Literals (Preview) by Brian Goetz on December 11, 2018
- Pattern Matching for Java by Gavin Bierman, Brian Goetz on September 7, 2018
- Local Variable Type Inference: Style Guidelines by Stuart Marks on March 22, 2018
2017
- Small Language Changes in JDK 9 by Joe Darcy on September 26, 2017
- Adventures in Pattern Matching by Brian Goetz on August 2, 2017
- Constants in Amber by Paul Sandoz, Vicente Romero on July 31, 2017
- enhanced enums - end of the road? by Maurizio Cimadamore on May 23, 2017
- Extending switch for Pattern Matching by Gavin Bierman, Brian Goetz on April 1, 2017
2014
- Java Past, Present, and Future by Brian Goetz on December 20, 2014