~/talk

Java's Hidden Gems: Tools and Libraries

Talkat JNation 2024 · 2024-06-04..06-05· [java, developer-experience]
slides:none on file

Quick catalog of concrete tools, what they do and whether they worked: unit-testable architecture rules with ArchUnit (catching misnamed controllers and forbidden layer dependencies), asynchronous waiting with Awaitility instead of sleeps, runtime coverage via the JaCoCo agent (writes report when the app is stopped), mutation testing with PIT (runs multiple mutants per case), containerized DB tests with Testcontainers, Gatling + Mission Control for perf, Spark processing a 29 GB Amazon review dataset in ~1–2 minutes locally, OpenRewrite for automated code upgrades, and working examples in a 60–70 sample GitHub repo.

AI-written summary · about

  1. 0:00Introduction and overview
  2. 2:25Architecture rules with ArchUnit
  3. 5:16Testing utilities and JQco agent
  4. 11:58Mutation testing with PIT
  5. 13:47Test containers for integration tests
  6. 15:14Performance testing with Gatling
  7. 17:18Profiling with Mission Control
  8. 21:40Equals Verifier for equals methods
  9. 23:05GraphQL for flexible APIs
  10. 24:49Templating with Handlebars
  11. 27:15Code generation with Java Poet
  12. 28:20Job scheduling with JobRunr
  13. 29:48HTML parsing with JSoup
  14. 31:13Phone number validation
  15. 32:41Object storage with MicroStream
  16. 33:42Scheduling with OptaPlanner
  17. 38:19Big data with Apache Spark
  18. 40:04Dependency vulnerability checks
  19. 41:29Password validation with Passay
  20. 42:31Dependency updates with Renovate
  21. 43:33Code migration with OpenRewrite
  22. 46:05Maven build optimizations
  23. 48:15Q&A session
~/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.