~/talks

Brian Goetz

what they talk about

all 9 in the filters

where they keep going back

all 11 in the filters

on a stage with

all 16 in the filters

who talks about the same things

titleconferencedate
Carrier Classes & Discussing SyntaxJavaOne 20262026-03-17
Two recent Amber mails compare an original carrier classes draft that forces a full API contract (construction, representation, derived equals/hashCode) with a…
Talk on
Java Next - Live StreamJavaOne 20262026-03-17
Live stream walks through concrete JDK26 changes and ecosystem moves: a new PEM encoding API for certificates/keys and a simple decoder/encoder flow…
Talk on
Ask the Java ArchitectsJfokus 20262026-02-02
Answers focus on concrete tradeoffs and designs not slogans For reconstruction the claim is that deconstructibility on classes can let wither style…
Talk on
Growing the Java LanguageJVM Language Summit 20252025-08-04
Proposes adding Haskell‑style type classes to Java by treating ordinary interfaces as type‑level “type classes” and declaring witness fields and methods that…
Talk on
Valhalla? Python? Withers? Lombok? - Ask the ArchitectsJavaOne 20252025-03-18
Semicolons stay; removing them is ruled out as disruptive. Valhalla ships a minimal first JEP with a stable spec and an early‑access build expected in a month…
Talk on
Amber & Valhalla - Incremental Design and Feature ArcsJavaOne 20252025-03-18
OpenJDK splits big changes into many small, designed steps, shipping jets every 6–12 months while designing several steps ahead so pieces fit. Pattern-matching…
Talk on
Where is the Java language going?JavaOne 20252025-03-18
Overview of concrete language changes and timelines: Project Amber ships records, sealed types and pattern matching in incremental JEPs to reduce boilerplate…
Talk on
Project Valhalla UpdateJfokus 20252025-02-03
Project Valhalla introduces value classes (the new value modifier) and a non-nullability plan (JEP 401 starts the work) to let the JVM flatten and densify…
Talk on
Ask the ArchitectJfokus 20252025-02-03
Live AMA covers concrete roadmaps: a serialization prototype using pattern matching that asks class authors to supply at-rest constructors and deconstructors…
Talk on
The Peak of ComplexityDevoxx Belgium 20242024-10-07
Defines a five‑stage lifecycle that culminates in the peak of complexity and warns that shipping that first, clever solution (examples: Java serialization, the…
Talk on
Valhalla - Where Are We?Devoxx Belgium 20242024-10-07
Project Valhalla introduces value classes (no identity) and null‑restricted types (the bang) with JVM verifier and strict‑initialization checks, shipped as…
Talk on
Ask the ArchitectDevoxx Belgium 20242024-10-07
Panel answers why the security manager removed from the JDK: running untrusted code migrates to OS containers and external tooling, not the JVM, and…
Talk on
Postcards from the Peak of ComplexityDevoxx Belgium 20242024-10-07
Java evolves through decade-scale projects — generics, lambdas, modules, Loom (virtual threads) and Valhalla — and follows a repeatable life cycle: early…
Talk on
Serialization: A New HopeDevoxx Belgium 20242024-10-07
Proposes replacing Java’s magic serialization with a data‑oriented pipeline that uses constructors and deconstruction patterns and simple annotations like…
Talk on
Valhalla - Where Are We?JVM Language Summit 20242024-08-05
Project Valhalla delivers concrete features: an EA build of value classes that add a single modifier, a verifier-backed strict initialization rule, and…
Talk on
A Classfile API for the JDKJVM Language Summit 20232023-08-07
Claims a new standard JDK Class-File API (JEP 8280389) that parses, generates and transforms class files with a model-driven element stream core, immutability…
Talk on
Brian Goetz Ask Me AnythingCraft Conference 20212021-06-02
Covers why null corner cases keep derailing language features — pattern matching must decide how null matches nested and top-level patterns and every option…
Talk on
Java Language Futures: Late 2019 EditionDevoxx Belgium 20192019-11-04
Overview of concrete language changes and release plan: Java 12 and 13 are shipped, Java 14 is closing and uses a six‑month cadence with preview features…
Talk on
Beyond ByteBuffersDevoxx Belgium 20192019-11-04
Claims a new foreign-memory API that replaces ByteBuffer for off-heap work, exposing MemorySegment, MemoryAddress and MemoryLayout plus VarHandles to…
Talk on
Why We Hate Java Serialization And What We're Doing About ItDevoxx Belgium 20192019-11-04
Java serialization is claimed to break the object model by bypass constructors and reflectively scrape and stuff private final fields, enabling invariant…
Talk on
Ask the Java ArchitectDevoxx Belgium 20192019-11-04
Covers concrete status and design choices: value types must support serialization and likely use constructor-based deserialization; records and switch…
Talk on
Valhalla UpdateJVM Language Summit 20192019-07-29
Project Valhalla publishes an L2 EA build (jdk.java.net/valhalla) that provides usable inline classes: arrays of value types are covariant with object[]…
Talk on
FP vs OO: Choose TwoJfokus 20192019-02-04
Argues the FP vs OO split is a false dichotomy and gives concrete guidance: use functional core techniques inside modules and boundary shell OO for I/O…
Talk on
Java Futures: 2019 EditionJfokus 20192019-02-04
Six-month releases now ship features faster and accept 6–12 month preview windows for last‑minute feedback. Recent additions: local variable type inference…
Talk on
Ask the Java ArchitectsJfokus 20192019-02-04
Explains why Java moves to a six‑month cadence and keeps three‑year LTS lines, showing it ships smaller features faster and eases planning; notes modules…
Talk on
Below the Fold, Adventures in ConstancyJVM Language Summit 20182018-08-04
Adds a constant_descriptor API and a Constable interface so the static compiler treats rich constant expressions (including method‑handle and invokedynamic…
Talk on
Java Language Futures - All Aboard Project AmberDevoxx Belgium 20172017-11-06
Local-variable type inference ships as var in JDK 10 and is limited to locals (not fields or API signatures); the compiler normalizes capture types and forbids…
Talk on
Moving Java Forward FasterDevoxx Belgium 20172017-11-06
Java moves to a strict six-month feature releases cadence (next release March 2018), with every-third-year long-term support every three years (first LTS Sept…
Talk on
Ask the JDK ArchitectsDevoxx Belgium 20172017-11-06
Audience Q&A covers concrete progress and timelines: Sumatra fizzled after joint Oracle–AMD work but the follow-on is Graal compiler work inside Project…
Talk on
Interview with Brian GoetzDevoxx Belgium 20172017-11-06
Java moves to a six-month release cadence where finished features board the next train and unfinished work waits for the following one, reducing big multi-year…
Interview on
Pattern MatchingJVM Language Summit 20172017-07-31
Proposes encoding deconstructors as class members implemented as method handle tuples so common cases (instanceof + field access) are allocation free and…
Talk on
Preparing for JDK 9 - AKA The Sharp Edges of JDK 9Devoxx US 20172017-03-21
JDK 9 hides most internal APIs and intends to remove deprecated APIs (some marked for removal=true), so many real-world apps and libraries break until updated…
Talk on
From Concurrent to ParallelPhilly ETE 20162016-04-11
Java SE 8 parallel streams and the fork/join runtime target data-parallel work, not IO concurrency, by using recursive divide-and-conquer on a common…
Talk on
Move Deliberately and Don’t Break Anything: Lessons from...JavaPhilly ETE 20162016-04-11
Java evolution prioritizes compatibility over novelty: it measures compatibility across binary, source, behavioral, serialization surfaces, runs corpus…
Talk on
From Concurrent to ParallelJfokus 20162016-02-08
Argues that parallelism is an optimization distinct from concurrency and demonstrates Java SE 8 parallel streams built on ForkJoin for divide‑and‑conquer…
Talk on
Move Deliberately and Don't Break AnythingJfokus 20162016-02-08
Java evolution prioritizes compatibility over novelty: the platform supports millions of developers and billions of lines of code, so changes require careful…
Talk on
Ask the Java ArchitectsJfokus 20162016-02-08
JDK libraries aim for the mainstream, not ultra-low-latency HFT use cases, so allocation-heavy hot-path fixes are left to specialist libraries; value types are…
Talk on
Generic SpecializationJfokus 20162016-02-08
Presentation from Brian Goetz during the VM Tech Summit at Jfokus on the compiler/vm details of generic specialization. Full Abstract: Project Valhalla…
Talk on
API Design with Java 8 Lambdas and StreamsJavaOne 20152015-10-25
Practical, example-driven rundown of how Java 8 actually reshapes APIs: shows adding ThreadLocal.withInitial instead of subclassing, the new…
Talk on
Move Deliberately & Don't Break AnythingGOTO Copenhagen 20152015-10-05
Explains why Java prioritizes binary compatibility (call-site linkage), source and behavioral compatibility, and serialization, showing concrete examples…
Talk on
Adventures on the Road to ValhallaJVM Language Summit 20152015-08-10
Prototype implements generics over primitives by keeping erased class files plus a specializer that uses a bytecode-mapping attribute and name-mangled…
Talk on
Stewardship: the Sobering PartsClojure/conj 20142014-11-20
Describes stewarding Java for ~9 million developers and billions of lines of code, trading change for compatibility; Java 8 adds lambdas implemented by…
Talk on
Offers a View Into Lambda DevelopmentDevoxx 20132013-11-11
Project spends about three and a half years resolving deep interactions rather than slapping on syntax; the team overhauls method overload selection and type…
Talk on
Lambdas in Java: A Peek Under the HoodGOTO Aarhus 20132013-09-30
Explains how Java SE 8 implements lambdas by emitting a recipe (not inner classes) and using JVM features introduced in Java 7: invokedynamic plus method…
Talk on
Implementing Lambda Expressions in JavaJVM Language Summit 20122012-07-30
Java implements lambdas by emitting an invokedynamic call (JSR 292) that defers creation to a runtime lambda metafactory which returns instances of existing…
Talk on
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.