Learning modern Java the playful way
summary
A Java 8-style image-search app is modernized end-to-end: embeddings come from a Genom multimodal encoder, stored in Elasticsearch and browsed in Kibana, hybrid search merges text and vector results with reciprocal rank fusion (RRF), and the code moves from CompletableFutures to structured concurrency and stream gatherers (mapConcurrent on virtual threads). Compact source files, records, lazy constants and markdown javadoc shorten startup and code. A vector-API version of a math kernel runs ~1.5–2x faster on the demo hardware.
AI-written summary · about
chapters (18)
- 0:00Introduction
- 1:59Modern Java matters
- 5:27Compact source files
- 7:10Demo setup explained
- 11:23Legacy code with records
- 12:48Module imports benefits
- 14:55Stream gatherers
- 20:31Structured concurrency
- 26:10Configuring concurrency
- 27:35Lazy constants
- 30:01Markdown comments
- 31:50Elastic client modernization
- 33:55Pattern matching primitives
- 35:00Convincing management
- 35:43Vector API performance
- 40:12Benchmarking Vector API
- 41:37Upgrade to latest Java
- 42:39Call to action
related talks
52mLearning modern Java the playful way
45mLearning Modern Java the Playful Way
46mLearning modern Java the playful way
59mLearning modern Java the playful way
43mLearning modern Java the playful way
29mUnleashing the Power of Vector Search and Semantic Caching in Java
46mBuilding Powerful GenAI Apps with Pure Java
54mModern Java in Action
