How should code look to fit the way we think, remember and reason? That is, code that is both easier to understand and maintain. To see what really works we need to look across languages and paradigms. Starting from common problematic constructs such as null-references, surprising corner-cases and repetitive code, Adam discusses the cognitive costs and consequences of each. He'll then apply ideas from object-orientation, functional programming and lesser known array languages to explore better ways.
This session combines code in C#, Erlang and Clojure with findings from different fields of psychology. The participants will leave with a high-level view of the principles behind code that fits our human way of thinking together with an introduction to ideas like monads, remote error handling and embedded domain-specific languages.