Skip to content
teach

Java Resources

Knowledge

Wisdom (Communities)

Gaps

  • The memory model has no gentle authoritative source. Chapter 17 is formal and "Java Concurrency in Practice" predates virtual threads, VarHandle and structured concurrency, so stage 4 uses the book for the model and the current specification and JEPs for the API. That split worked, with one caveat found while writing the stage: a JEP describes the release it shipped in and is not revised when a later JEP changes the behaviour. JEP 444 still states that synchronized pins a carrier thread, which JEP 491 changed. Read a JEP for intent and design rationale, and confirm current behaviour by running it.
  • Closed, and it turned out to be two gaps rather than one. How collectors work does have a book-length source, now listed: "The Garbage Collection Handbook". How to tune a particular collector on a particular release does not, and should not: tuning advice ages faster than books ship, so the primary source is the HotSpot garbage-collection tuning guide for the release in hand, which is versioned and is now listed for JDK 25. Do not go looking for a tuning book again.
  • Two of the JIT effects the JMH samples demonstrate, dead-code elimination and constant folding, did not reproduce on JDK 25 while stage 6 was being written. This is not a defect in the samples: they demonstrate the mechanism, and whether it fires depends on the compiler, the platform and the shape of the code. It is a standing reason to run a sample rather than cite it, and stage 6 teaches the principle instead of the anecdote.
  • The six-month release cadence outpaces every book here. Version-sensitive claims go to the specification, the API documentation or the JEP index, and any lesson naming a release says which one.
  • Frameworks have no source by design, and stage 7 confirmed that the gap is real but misdescribed. There is no authoritative source for the verdict, and there should not be: whether a framework earns its place in a particular service is a judgment about that team and its constraints, not a technical fact anyone can publish, and a source claiming to settle it in general is selling something. There is a source for the reasoning, and two are now listed: "Choose Boring Technology" and "Yagni". Lesson 0049 teaches a rubric and names no winner. Do not go looking for a framework comparison again.
Table of contents