Overview
Explore the evolution of Java and the challenges of programming language design in this insightful conference talk by Brian Goetz, Java Language Architect. Discover the delicate balance between adding new capabilities and maintaining compatibility with existing code and developer expectations. Learn valuable lessons on steering a mature programming language through major changes, including the importance of consistency, memory efficiency, and managing developer expectations. Gain a sneak peek into the future of the Java platform and understand the pragmatic approach to shipping software. Delve into topics such as value types, generics, and the impact of changing hardware on language design. Conclude with a Q&A session to further explore the intricacies of Java's evolution and future directions.
Syllabus
Intro
Programming is at heart
The right way to ship software
The pragmatic maxim
The bottom of the stack
Dont break users expectations
Compatibility
Developers overestimate the importance of code
Dont move at all
Embrace and extend
Evolution trick
Consistency isnt bad
Changing hardware
Memory efficiency
Developers cant help themselves
Value types
Generics
Questions
Taught by
ChariotSolutions