J-Fall 2023
| title | author | length |
|---|---|---|
| Aftermovie | 01m | |
A fast-paced aftermovie celebrates 20 Years of NLJUG with a music-driven montage that stitches talk clips, workshop snapshots, hallway conversations and… | ||
| What if AI generated your test data? | Wim Blommaert | 53m |
ING uses an MIT‑origin open‑source engine (now DataSibo) to train on ~10–20k real rows, build a statistical model and sample 10k SEPA payments in less than 1… | ||
| Identifying bad design in codebases, objectively… | Ryan Susana | 49m |
A CLI + web app called Arc Stats analyzes Java repos with 42 metrics and finds concrete problems: a file in bytecode generation with max indentation 22, an… | ||
| Wargames - Java vulnerabilities and why you should care | Gerrit Grunwald | 49m |
Explains concrete Java security plumbing: how NVD/CVE/CVSS work and why CVE-2021-44228 (Log4Shell) scores 10.0 CVSS3.1, why a JDK left at 17 GA accumulates ~55… | ||
| A design pattern goes to the supermarket | Kaya Weers | 37m |
Uses supermarket scenes and simple code snippets with drawings to map concrete behaviors to design patterns: a grocery note encapsulates a request as the… | ||
| Do you really need Hibernate? | Simon Martinelli | 54m |
Demo builds a kids competition app and shows concrete replacements for Hibernate: it uses jOOQ + Java Records to generate a type-safe meta model from Flyway… | ||
| A Passwordless Future! WebAuthn for Java Developers | Deepu K Sasidharan | 49m |
Claims password reuse causes most breaches—about 84% credential compromise and 36% phishing—and shows a concrete Java path away from passwords using webauthn +… | ||
| Mr. Kotlin VS. Mr. Java, an inspirational parody! | Ricky van Rijn, Thom van Kalkeren | 32m |
Claims that Java 21 virtual threads beat coroutines are contrasted with concrete examples: Kotlin uses structured coroutines and compile‑time null safety (the… | ||
| Combating the struggles of modern cloud-native java developers | Grace Jansen | 48m |
Claims measurable wins: an internal developer platform plus portal cuts environment wait time ~90%, boosts deployment frequency ~4x, and shortens lead time… | ||
| Leaving a legacy: a guide to being kind to those who come after | Tom Cools, Elien Callens | 49m |
Concrete steps to avoid leaving a rotten codebase: put docs in repo (markdown, versioned, reviewable, use Arc42), write short good‑first‑issue guides or… | ||
| A fun and absurd introduction to Vector Databases | Alexander Chatzizacharias | 50m |
Shows how vector databases store embeddings from OpenAI/Hugging Face and return semantic neighbours in milliseconds, using HNSW indexing with cosine distance… | ||
| Databases unveiled; choose wisely | Robbert Noordzij | 42m |
Overview of concrete claims and tools: companies moved 300 shops into two and rebuilt passenger systems, then suffered a major outage on 3 April when missing… | ||
| Demystifying Monads with Java | Julian Exenberger | 39m |
Argues that monads are practical data structures with a unit/flatMap/get API, demonstrates Java uses like Optional and Stream, and shows how an Either for… | ||
| The human factor you might be missing when designing your system | Rafael Maia | 36m |
Argues that design fails when organizational communication and team mental effort are ignored, using Socio-Technical Systems and Conway’s Law to explain why… | ||
| The secret life of Maven Central | Jamie Coleman | 38m |
Sonatype runs Maven Central on AWS as a public service, storing ~8.8 million components (27 TB) and serving 2.5 trillion downloads to date; it enforces proof… | ||
| Authorization beyond @RolesAllowed | Arthur van Leeuwen | 51m |
Explains a practical authorization architecture with PEP PDP PIP separation, concrete limits like a 10 millisecond decision budget, and the need for a separate… | ||
| Exploring the Power of CRaC on Embedded | Frank Delporte | 51m |
CRaC captures a fully warmed JVM snapshot and restarts multiple instances from it, cutting warmup from minutes to near-instant. Implementation requires adding… | ||
| Five ways open source will slow you down | Maarten Mulders | 45m |
Claim: five concrete failure modes that make open source slow projects down and how to fix them. Examples: emailing maintainers demanding fixes (a team emailed… | ||
| Process-oriented system integration | Bernd Ruecker | 50m |
Shows a working bank‑account onboarding implemented as a BPMN process deployed from a Maven + Spring Boot project to a SaaS Camunda trial; job workers in Java… | ||
| Prepare for Jakarta EE 11! | Ivar Grimstad | 43m |
Jakarta EE 11 is the first release under the new cadence with a target roughly around March 2024, raising the API source level to Java 21 so code must compile… | ||
| AOT: Everything you need to know about GraalVM for Java applications | Alina Yurenko | 51m |
GraalVM compiles Java ahead-of-time with native-image so apps start in milliseconds (examples claim as low as 6 ms startup), trade runtime JIT for a… | ||
| The Aggregate is dead. Long live the Aggregate! | Sara Pellegrini, Milan Savic | 48m |
Argues that traditional DDD aggregates are unnecessary and proposes an event‑sourced alternative: treat decisions as message handlers that load only relevant… | ||
| Lights, Camera, GitHub Actions! | Andres Almiray, Ixchel Ruiz | 56m |
Covers practical GitHub Actions use with Java and Maven: uses actions like checkout, actions/setup-java, Maven wrapper, cache Maven m2, upload-artifact and… | ||
| Just do IT @ Justid - The Subtle Art of Just Giving a ... | Maarten Koller | 55m |
This talk describes practical cultural and collaboration changes used at Justid to improve DevOps work across a government organization: using feedback to… | ||
| Machine learning 101: Where to begin? | Lutske de Leeuw | 40m |
Built a camera-controlled feeding closet to recognize which cat may access food and uses that story to walk through data collection, cleaning, augmentation… | ||
| Kubernetes native development workflows | Peter Keereweer | 42m |
One-line workflows like oc new-app actually clone, build (S2I or Docker), push to a registry and deploy with triggers; inner-loop pain comes from container… | ||
| Gradle + Kotlin: Basics and beyond | Lennart ten Wolde | 39m |
Shows how the Kotlin DSL (now the Kotlin DSL default) and Gradle 8 change actual builds: concrete examples of registering tasks, an Exec task with… | ||
| How sand and Java are used to create the world’s most powerful chips | Johan Janssen | 42m |
ASML’s EUV workflow prints features at about 2–3 nm accuracy by blasting tin droplets with a ~40 kW laser (50,000 shots) to make plasma, steering EUV with… | ||
| Speeding up Jenkins, Gradle, and Maven with a Build Cache | Justin Reock | 41m |
Claim: enabling Gradle or Maven build cache cuts clean build+test time dramatically — demos show a Gradle project dropping from ~4s to sub‑second by pulling… | ||
| Unleashing Micro Frontends: A Blueprint for Enterprise Growth | Jeroen Berndsen | 42m |
A practical blueprint for migrating a Java Wicket frontend to micro frontends with five concrete steps: choose integration style, pick tools, create… | ||
| Java, Life is Short! | Kevin Dubois | 44m |
Shows concrete shortcuts: use jbang with GPT preview to generate runnable Java scripts and CLI templates, use SDKMAN to install and switch Java 8/11/17/21… | ||
| Energy Efficient Design Principles of Software Engineering | Ko Turk, Ionut Balosin | 50m |
Measurements use Intel RAPL via perf to report CPU+RAM energy; running Spring PetClinic with ~110k requests in 15 minutes and a Quarkus test with ~650k… | ||
| HTMX: Web 1.0 with web 2.0 benefits without the grift of 3.0 | Martijn Dashorst | 54m |
HTMX is a tiny client library (Intercooler lineage, v1.9.x) that turns HTML attributes into full HTTP-driven UI actions: hx-get/hx-post/hx-delete, attribute… | ||
| The Case Against Frameworks | Jan-Hendrik Kuperus | 46m |
Argues that frameworks hide behaviour, add bloat and security risk and erode developer knowledge. Gives a concrete failure: Spring reads entire upload before… | ||
| Butcher Virtual Threads like a pro! | Piotr Przybył | 57m |
Claim: virtual threads let the JVM host one million virtual threads only when those threads mostly sleep or wait; CPU‑bound work still saturates cores so… | ||
| Write your own Java Profiler in 240 lines of pure Java | Johannes Bechberger | 42m |
Claims a usable Java profiler fits in 240 lines of pure Java and the published version is 251 lines after fixes. It runs as a Java agent, samples every ~10–20… | ||
| NLJUG Modern IT Leadership Summit 2023 | Sharat Chander, Irene Blanken | 56m |
Panelists report concrete pilots with Copilot and ChatGPT pilots and alternatives like Codium, plus experiments that require opt-out telemetry experiments and… | ||
| Managing Testing Data | Elias Nogueira | 49m |
Shows a reproducible Test Data Factory that combines Builder + factory methods with Data Faker to produce localized, readable fields instead of hardcoded… | ||
| Introducing Steampipe - select * from cloud | Lucas Jellema | 12m |
Steampipe turns cloud and platform APIs into live SQL tables so queries run like regular SQL against AWS, Azure, GCP and 150+ other sources, with plugins… | ||
| How I Survived a Tumor, Burnout, and Getting Started in Tech | Louella Creemers | 09m |
Finds a nickel‑like lump, has tumor surgery March 2019 and continues computer science studies while coding until 2–3 AM, then hits burnout with a panic attack… | ||
| A Bird's-Eye View of Version Control with Pijul | Hanno Embregts | 22m |
Pijul is a patch‑based distributed VCS written in Rust that records atomic patches (not snapshots), supports interactive recording, and preserves patch… | ||
| The missing piece in your observability puzzle! | Mohammed Aboullaite | 52m |
Continuous profiling fills the observability gap by running low-overhead profilers in production (claimed 2–5% overhead) and shipping time-series profiles for… | ||
| ASCII to Unicode, what can possibly go w̵̳̓r̸̡̽ǒ̴̝n̴̬ͣg̶ͤ͜? | Adam Michalik | 46m |
Explains how Unicode maps abstract code points into bytes via UTF‑8/16/32, claims Unicode reserves 1.1 million code points and notes Java 20 tracks Unicode… | ||
| Falling in love with json(net) | Jakub Marchwicki | 15m |
Shows how jsonnet converts sprawling JSON (example: a 400-line CloudWatch widget file) into reusable templates and functions that reduce hundreds of lines to a… | ||
| Modernize your money-maker | Tim te Beek | 13m |
Automates concrete migrations using OpenRewrite and the mod CLI, running across multiple repositories and producing patch files that apply immediately… | ||
| The Hidden Dynamic Life of Java | Nataliia Dziubenko | 15m |
Java increasingly uses invokedynamic (introduced in JDK7) so the JVM links actual call targets at runtime via a bootstrap method that returns a method handle… | ||
| Calibrate Garbage Collection on the Ground and Run Your Java App | Ana-Maria Mihalceanu | 53m |
Two small Java 21 apps (a CPU‑bound big‑factorial and an IO‑bound continuous‑file editor) run in Docker on Kubernetes, load‑tested with k6 and instrumented via… | ||
| Join the Friends Of OpenJDK | Frank Delporte, Geertjan Wielenga | 13m |
Foojay.io is a community-run Java news site that aggregates 1–3 posts per day from a growing pool of contributors (about 2,099 authors listed), runs on a… | ||
| Emulating on the JVM | Remco Siemonsma | 12m |
Builds a working CHIP-8 emulator on the JVM using JavaFX, implementing the chip’s 35 instructions, 4 KB memory map, 64×32 monochrome display and 60 Hz timers… | ||
| Your Data, Your Rules: Tailoring application metrics with Micrometer | Susanne Pieterse | 11m |
Builds a small pastry-shop microservice that registers a Micrometer counter in a MeterRegistry and increments on each order, exposing metrics via Spring Boot… | ||
| Opening | 20m | |
Opening ceremony announces the 20th anniversary with the conference expanding to more sessions than ever, a printed timetable mismatch but the schedule is… | ||
| 'The Art of Software Development' | Sander Mak | 27m |
Argues software development relies on judgment and craft, not just repeatable engineering: cites Canadian regulation that protects the title “engineer,”… | ||
| 'Moving Java Forward Together' | Sharat Chander, Pratik Patel | 17m |
Oracle announces community-first initiatives: centralized hubs dev.java and inside.java, an invitation for community contributions to dev.java, and a… | ||
| Java Collections Puzzlers | Maurice Naftalin, Dmytro Vyazelenko | 49m |
Interactive puzzlers test concrete Java behaviors: audience voting and GPT-4 competes against humans while runnable snippets reveal real surprises —… | ||
| Kotlin & Functional Programming: pick the best, skip the rest | Urs Peter | 48m |
Kotlin favors expression-oriented code, higher-order functions and immutability, with stdlib Result + runCatching for composable error flows and coroutines… | ||
| Butcher Virtual Threads like a pro! | Piotr Przybył | 57m |
Demo creates 1 million virtual threads sleeping to show low-memory cost but switches to CPU-bound work to prove virtual threads don’t speed CPU-heavy tasks… | ||
| Breeding 10x Developers with Developer Productivity Engineering | Justin Reock | 25m |
Claims that 10x engineers are mythical but 10x organizations are real backed by the Coding Wars finding of ~10:1 top to bottom developers and an ~11x gap… | ||
| The battle of the AI coding assistants | Bouke Nijhuis | 37m |
Three IDE plugins — Tabnine (Tab 9 chat), GitHub Copilot (Co-pilot chat with GPT‑4) and JetBrains AI Assistant — get compared by building a Java prime number… | ||
| J-Fall 2023: Roy Wasse & Roy van Rijn | Roy Wasse, Roy van Rijn | 56m |
Claim: observable programming skill predicts job performance better than certifications or degrees. A browser-hosted VM (via Apache Guacamole) runs realistic… | ||
| Lessons learned using Machine Learning in Java | Jago de Vreede | 48m |
Builds a Lego block visual sorter using Java libraries (Deep Java Library, MXNet, TensorFlow engine) and transfer learning, trains on ~1,800 augmented images… | ||
| Ignite sessions | Willem Cheizoo, Marianne Hoornenborg, Brian Vermeer, Jan Ouwens, Daniel Garnier-Moiroux, Jeroen Benckhuijsen, David Stibbe | 43m |
Seven fast pitches cover practical wins and failures: one developer deprecated my library after finding an existing GitHub project and used OpenRewrite to… | ||
| nothing matches | ||