Stuartmarks
Stuart Marks - Consulting Member of Technical Staff
Stuart Marks is a Consulting Member of Technical Staff in the Java Platform Group at Oracle. He is currently working on a variety of JDK core libraries projects, including Collections, Lambdas, and Streams, as well as improving test quality and performance. As his alter ego “Dr. Deprecator” he also works on the Java SE deprecation mechanism. He has previously worked on JavaFX and Java ME at Sun Microsystems. He has over 25 years of software platform product development experience in the areas of window systems, interactive graphics, and mobile and embedded systems. Stuart holds a Master’s degree in Computer Science and a Bachelor’s degree in Electrical Engineering from Stanford University.
Posts
- Tutorial: Choosing the Right Implementation Between ArrayList and LinkedList on March 26, 2025
- Detoxifying the JDK Source Code on December 13, 2024
- My Favorite JDK 21 Feature: Javadoc Search URL on September 25, 2023
- Quality Outreach Heads-up - JDK 21: Sequenced Collections Incompatibilities on May 12, 2023
- JEP proposed to target JDK 21: 431: Sequenced Collections on March 3, 2023
- The Importance of Writing Stuff Down on February 23, 2023
- New candidate JEP: 431: Sequenced Collections on October 11, 2022
- Why Write an Empty finalize() Method? on April 28, 2022
- Why is the `finalize()` method deprecated? on November 3, 2021
- New candidate JEP: 421: Deprecate Finalization for Removal on November 1, 2021
- ReversibleCollection proposal on April 16, 2021
- RFE: Add Stream.toList() method on November 3, 2020
- Incompatibilities with JDK 15 CharSequence.isEmpty on September 22, 2020
- Programmer's Guide To Text Blocks on August 5, 2020
- Scanner is a Weird but Useful Beast on April 14, 2020
- Local Variable Type Inference FAQ on August 30, 2019
- Jakarta EE and Removal of Deprecated APIs on May 23, 2019
- Processing Large Files in Java on January 11, 2019
- Local Variable Type Inference: Style Guidelines on March 22, 2018
- Deprecation of Object.finalize() on April 17, 2017
- There is no such thing as a fail-safe Iterator in Java on July 27, 2016
Videos
- "Just Make All Exceptions Unchecked" - Live Q&A from Devoxx on October 9, 2025
- Sequenced Collections - Deep Dive with the Expert on April 12, 2025
- Java's Fraught Relationship with Cyclic Object Graphs on October 15, 2024
- Future of Collections with Stuart Marks - Live Q&A at Devoxx BE on October 8, 2024
- Java Architects Answer Your Questions on October 26, 2023
- Java Language Futures, Spring 2023 Edition on April 6, 2023
- Collections Refueled on September 17, 2020
- Java Languages Features for Improved Productivity on April 1, 2020
- Why We Hate Java Serialization on November 7, 2019
- Ask the Java Architect on November 7, 2019
- Collections Corner Cases on September 18, 2019
- Comparison Method Violates its General Contract! on November 8, 2017
- Collections Refueled on April 14, 2017
- Optional - The Mother of all Bikesheds on April 11, 2017
Podcasts
- Episode 39 “Deprecations & Removals” with Stuart Marks on July 28, 2025
- Episode 31 “Sequenced Collections” with Stuart Marks on April 25, 2023
- Episode 20 “Java 17 is Here! Part 2” on September 27, 2021
- Episode 11 “How to contribute to OpenJDK” with Stuart Marks and Jesper Wilhelmsson on January 29, 2021