Picnic Java Meetup: Supercharge quality in your Java codebases
Details
Join us online for the next Picnic Java Meetup at November 25! This edition focuses on improving the development process. How can you increase the quality of your Java codebases at scale?
Schedule:
18:30-19:15 Talk 1 (Sander Mak, Picnic)
19:15-20:00 Talk 2 (Paco van Beckhoven, Picnic/OpenValue)
We'll have two talks for you answering that question:
Talk 1: Streamlining large-scale Java development using Error Prone (Sander Mak, Picnic)
Using static analysis to spot bugs in your code has become a staple of modern Java development. But what if we can take this one step further where, instead of just finding issues, we fix them automatically? And, what if we can do this not just for bug patterns but for any coding pattern you'd like to enforce?
At Picnic we use Google's Error Prone and Refaster tooling to do just that. In this session you'll learn what these tools are and how to use them effectively. Large-scale refactoring and enforcement of code patterns becomes a breeze once you master these tools. What's more, you'll get a view of some the automated refactorings we use within Picnic at scale. Come and learn how to take control of your codebase like you never have before!
Talk 2: Mutants to the rescue: How effective are your unit tests? (Paco van Beckhoven, Picnic/OpenValue)
We write tests to tackle bugs, verify functionality and to ease maintenance. Using code coverage as our metric we might deem ourselves safe and our tests flawless. But how can we be sure that our tests are okay? The fact that tests cover the code doesn't imply the code is working correctly. A missing assertion can be an opening for a plethora of bugs!
In this talk we will enter the world of mutation testing. By generating mutants, i.e., faulty versions of your code, we measure how tests perform in detecting bugs. We will cover mutation tools, how they work, how to get started and how to integrate it in your builds.
Due to the Covid restrictions the event will take place online
