
Brian Goetz - Stewardship: the Sobering Parts
About this video
Java Language Architect Brian Goetz talks at a Clojure conference about the challenges of evolving a mature language like Java while preserving compatibility with existing code and developer expectations. It also gives a look at where the platform is headed.
Why it appears in the archive
HN repeatedly recommends it as the definitive explanation of why Java evolves cautiously and why compatibility matters in language design.
AI-generated summary and labels from the source dataset; verify important details against the video. Source & credits.
From the Hacker News discussion
Watch this awesome keynote by Brian Goetz, he talks about valie types and generics. Brian Goetz - Stewardship: the Sobering Parts [VIDEO]
Read original comment ↗To add on to that... Even though, I haven't been involved in the contributing process for Clojure, but I thought it was interesting that Brian Goetz's keynote at the Conj 6 months ago was about stewardship, in particular, stewardship of the Java language: [VIDEO] It gave me a better appreciation for the differing concerns of someone using a language or contributing a patch vs. someone designing & maintaining a language. In my day-to-day, I use languages other than Clojure, and I sorely miss the cohesive and good design. Brian Goetz's talk nails it on the head why the languages in my day-to-day are sub-optimal, even if they're currently the "new hotness"... at least for now...
Read original comment ↗On the topic of stewardship, I highly recommend this talk by Brian Goetz titled "Stewardship: the Sobering Parts" [1] Brian goes about how important compatibility is for the language, the concept not throwing customers code under the bus by bringing breaking incompatibilities. (ie Python 2 --> 3) Java has its warts and isn't "cool" but I respect their design decisions. [1] [VIDEO]
Read original comment ↗Brian Goetz the Java Language Architect addressed the very points you raised in a talk called "Stewardship: the Sobering Parts" [1] I highly recommend anyone with these very valid concerns to view it once. [1] [VIDEO]
Read original comment ↗Against my better judgement I did a reverse image search and found the post that you found that screenshot from [1]. The post is full of people having exactly the sort of problems you would expect from an automatic software updater, along with instructions from Jeff on how to manually update using SSH and git. These things happen. The world is messy, and whether due to technical inadequacy or run-of-the-mill software updater bugs, web backends will not always be updated. As you've noted, this could eventually lead to security problems, and I agree -- but that doesn't justify intentionally breaking their code. To say that their breakage is justifiable because they'll be 0wned at some point anyway is an absurdly darwinian argument. To address your last question, the way you update a system like the web is exactly the way we always have -- accretion . With very few exceptions, websites from the early 90s still work today. We didn't remove the `table` tag when we introduced flex boxes. We add new APIs while preserving existing functionality. If you want to see a fantastic talk on this exact subject, watch "Stewardship: The Sobering Parts" by Brian Goetz [2]. It is well worth your time. [1] [LINK] [2] [VIDEO]
Read original comment ↗It is only tangentially related, but I recommend this video from Brian Geotz, a Java language architect. He breaks down the challenges of adding features to the language, in a room full of Clojure devs no less. Worth a watch: [VIDEO]
Read original comment ↗See Brian Goetz's talk on language stewardship ( [VIDEO] ). I'm sure nobody wants to add new and interesting features to Java more than the people who work on the language every damn day, but they've made a strong commitment to the community to not break existing code.
Read original comment ↗As far as speed-of-evolution, it is worth understanding that the slower speed is at least partly a by-product of different goals. This talk, "Stewardship: The Sobering Parts" by Brian Goetz, is informative and well worth the watch: [VIDEO]
Read original comment ↗