Mark Windholtz will be presenting:
INTRODUCTION TO EVENT STORMING
Event Storming is a group design and planning approach. It is useful to get the “Big Picture” when starting a project or feature set and also works well for Retrospectives and even Detailed Design. The results of Event Storming can be used to plan your Story Mapping exercises.
Event Storming has the extra benefit of establishing a common language between Domain Experts and Developers. It creates a system design skeleton that is understandable and usable by a broad group of stake holders. A Domain Event is something that happened in the system that is interesting to a Domain Expert. For Example, “Item Added to Cart”, “End of Month Occurred”, and “Request Email Received”.
This presentation will:
- Cover the structure and process of an EventStorming Workshop.
- Introduce CQRS and DDD. CQRS and DDD are advanced architectures and design approaches. CQRS architecture is Command Query Response Separation. DDD is a co-operative design style of Domain Driven Design.
Each of these is powerful, but often difficult to explain. Separately or together they make building large complex systems more sustainable.
Event Storming is a breakthrough approach, because it provides a painless way to introduce DDD and CQRS without the buzz words.
Carin Meier will be presenting:
The Joy of Stochastic Gradient Descent
We’ll take a look at the joys of Deep Learning from its simple, elegant fundamentals to its feats of impressive power. Along the way, we’ll discuss how Deep Learning is changing how we approach programming, communicate with each other, and even what it means to be human.
James Smith will be presenting:
Demystifying Phoenix. Building a mental model of it’s moving pieces.
Ben Kyrlach will be presenting:
My take on Propositions as Types
The best way to learn something is to teach it. In this presentation, I’ll be explaining my take of Phillip Wadler’s famous “Propositions as Types” talk, with practical examples using PureScript. We’ll explore how to catch logic errors using nothing but the type system, and compare and contrast typical statically typed programs with programs using this understanding of types.
Jason Voegele will be presenting:
The Wonderful World of Recursion
Recursion is an indispensable tool in the functional programmer’s toolbox, but when used improperly it can be the source of disastrous errors. The world’s most popular programming Q&A site is even named after the dreaded stack overflow error that is the result of misuse of recursion! How can we take advantage of this fundamental tool without falling victim to its pitfalls?
Join me as we journey through the wonderful world of recursion where we will discover a treasure trove of recursive techniques, including tail recursion, mutual recursion, and trampolines. We will also learn how tail call optimization is achieved (or not) in various languages. Example code and discussion is presented in various functional languages including Clojure, Scala, Elixir, Haskell, and F#.
Creighton Kirkendall will present:
Building with Legos – The Joys and Struggles of Architecting in Clojure
We are having a hack night with Data Science. We’ll break into groups and look at Wine Quality Data and analyze it with your choice or R, Python, or Clojure.
Then we’ll participate in a mini-Kaggle and compare our results