On Wednesday, November 8th, 2023 (the day before the J-Fall Conference) the NLJUG organizes expert level preconference Masterclasses. We will provide you with masterclasses of 4 hours from top level speakers such as Rick Ossendrijver, Daniel Garnier-Moiroux and Andres Almiray & Ixchel Ruiz.

Visit these preconference masterclasses of J-Fall to really go in-depth and learn all about the newest Java technology. You will be granted entrance to J-Fall when you get your ticket.

Streamline Your Codebase: Automating Improvements with Error Prone

Rick Ossendrijver

Are you tired of repeatedly addressing the same code issues and therefore wasting valuable time during code reviews? Do inconsistent code styles and persistent bugs plague your codebase? Join our hands-on lab and unleash the power of Error Prone and Refaster to revolutionize your Java projects.

In this session, we’ll dive deep into Error Prone and Refaster, equipping you with the tools to automate code improvements, enforce coding standards, enhance code consistency, and eliminate bugs and anti-patterns.

By leveraging Error Prone, you’ll uncover bugs and potential issues within your codebase and receive automated suggestions for fixes. The fixes can be for any simple task, such as eradicating recurring bugs, addressing anti-patterns, and enforcing coding best practices and consistent styles. With the knowledge gained from this session, you’ll be equipped to implement these automation techniques in your own codebase, saving you and your colleagues invaluable development time.
Don’t miss this opportunity to transform your codebase, increase efficiency, and eliminate time-consuming manual interventions. Join us in this hands-on lab and embark on a journey towards cleaner, more reliable, and consistent Java projects.

Spring Security: The Good Parts

Daniel Garnier-Moiroux

Ensuring that applications are secure is now high on most “Deploy to Prod” checklists. Spring Security is the de-facto standard in the Spring ecosystem, bringing robust security and sensible defaults to web apps. It is flexible enough to fit any use-case, thanks to a myriad of configuration options and innumerable extension points.
Newcomers to the library can feel lost when they step out of the “Getting Started” guides and need to fine-tune it to their specific use-case. Developers can find themselves frantically copy-pasting from Stack Overflow until it kinda-sorta works.

This talks aims to provide a useful method for understanding how Spring Security works, and where the extension points are. Through a theory (diagrams!) and practice (live coding!), you will get familiar with the general architecture, foundational patterns and common abstraction. You will understand how they are used in the library code, and how you can draw inspiration from them. And you will discover the latest and greatest from Spring Security 6.1!

Maven in depth: beyond the basics

Andres Almiray & Ixchel Ruiz

Apache Maven is an ubiquitous build tool in the Java ecosystem, some even claim it’s the defacto standard build tool. Configuring Maven is deceptively simple, after all it’s just a matter of writing XML, isn’t it?

Things look differently when the rubber meets the road. One must know the intricacies of the build lifecycle; how plugins, goals (mojos), and phases come together; rules for dependency resolution; configuration inheritance between parent – child POM files; enhancing the build with profiles; and more.

Fortunately we’ll cover all these topics in this workshop. We’ll begin from scratch and move to advanced topics thus by the end of the session you should feel quite comfortable working with Maven.