Endless conversation — with friends & compilers — on art, crafts, dialectic, paradigm jump, serendipity.
Domain invariants are all around you. In every business rule your domain expert ever tried to give you. You should use them to guide your design.
You should also be testing them! Not only an example representing them: but testing the invariant itself.
You can do them with property-based tests (PBTs). If you think you cannot do PBTs on legacy codebases (or outside FP) this talk should show you otherwise.
Let’s also use Property-based tests to reduce test-debt. Create smaller, fewer tests that: test more, are more readable & document the problem. Challenge your understanding of the domain and communication with domain experts.
Try to create a code you will not consider “legacy”.
I’ll play the role of your client and use around 20 techniques to make you fail.
You will fail.
We’ll then discuss what techniques I have used, how they happen in real life, how to fight them in your project.
All languages welcome. Bring your own laptop with your environment. We’ll split into small teams.