ArnhemJUG
We are excited to announce that we are welcomed by Entrnce for the April meetup.
Agenda
- 17:00 CET walk-in
- 17:30 – 18:30 Food and drinks
- 18:30 – 19:30 talk: Better Assertions with AssertJ by Tim te Beek
- 19:30 – 19:45 break
- 19:45 – 20:45 talk: Reproducible Builds with Apache Maven by Hervé Boutemy
- 20:45 – 21:30 drinks
Better Assertions with AssertJ
Not all testing libraries are equal. Sure they all run your tests, but what happens when they fail? “Expected ‘true’, was ‘false’” won’t help you much. Your choice of library determines whether you can immediately jump to a fix, or first have to debug for more details. And with JUnit 6 and AssertJ 4 around the corner, it's high time for an upgrade!
In this talk we'll explore AssertJ, and the fluent assertions API it provides. We'll contrast this to alternatives like JUnit and Hamcrest, and show how subtle differences improve the experience. Now you can finally have unified fluent assertions for all your tests, with a clear path to get there.
For existing AssertJ users we will optimize its use to get more expressive assertions and meaningful messages from existing tests. Finally, a quick few OpenRewrite recipes help you apply all these best practices at once, and continuously going forward.
About Tim te Beek
Tim te Beek is a staff software engineer at Moderne, which automates software refactoring at scale. He has extensive experience contributing to and presenting on Open Source software within the Java ecosystem. Previously he worked as a consultant specializing in migration engineering and developer productivity.
Reproducible Builds with Apache Maven
Reproducible Builds is listed as a requirement for SLSA security Level 4, to achieve the highest level of confidence and trust in software. Such a level seems far away from achievable practice for normal humans.
In reality, most Linux distributions implemented it over the last 10 years. And in the past 6 years, this practice is being extended to Java Open Source projects with great success: more than 6,200 releases from 800 Open Source projects published to Maven Central are publicly proven reproducible (and counting).
In this session, we'll demystify Reproducible Builds for Java based on the experience gained while rebuilding these Open Source projects. We'll dig into the tools to improve your Maven builds and check the effective results: the journey is full of great learnings that go far beyond advanced security.
About Hervé Boutemy
Hervé started with Java when it was in beta, built his first Java projects with Make (yes) then Ant: but life changed with Maven 1... Life changed even more when growing from OSS user during working day to becoming an active OSS contributor to Maven 2 during nights and week-ends.
Today, Hervé works as Solutions Architect for Sonatype on next steps of the build journey, promoting best-practices around Software Supply Chains.
On the OSS front, Hervé is an Apache Software Foundation member and Apache Maven PMC Chair. He's also involved in many advanced projects like CycloneDX, SPDX, sigstore, and Reproducible Builds.