The team at Oracle in Bristol has grown rapidly, and is working on a quickly changing codebase. As the team has learned more and added features, the code hasn't always evolved to reflect the changes in their domain knowledge.

For newer team members, and those who haven't worked on a given piece of code for a while, it's sometimes difficult to understand the structures flowing through the functions. In Clojure, associative structures are often gradually built up as they are passed between functions, and it's difficult to know what they might contain at any point without tracing them through these functions.

Mark will describe the team's experiences of using tests, Prismatic Schema, and core.typed in an attempt to alleviate this problem.

The team at Oracle in Bristol has grown rapidly, and is working on a quickly changing codebase. As the team has learned more and added features, the code hasn't always evolved to reflect the changes in their domain knowledge.

For newer team members, and those who haven't worked on a given piece of code for a while, it's sometimes difficult to understand the structures flowing through the functions. In Clojure, associative structures are often gradually built up as they are passed between functions, and it's difficult to know what they might contain at any point without tracing them through these functions.

Mark will describe the team's experiences of using tests, Prismatic Schema, and core.typed in an attempt to alleviate this problem.