Presentations


Domain-driven design introduction Domain-driven design Event storming

Presented on May 02, 2019

In this talk I introduce the concepts outlined in Eric Evan’s Domain-driven design book (the “blue” book).

  • What is domain-driven design?
    • Strategic design:
      • Ubiquitous language, bounded context, and context map.
    • Tactical design:
      • Entity, value object, aggregate, domain event, service, repository, and factory.

Please get in touch if your company is interested in learning about domain-driven design or would like me to facilitate an event storming session.


Event sourcing in practice Elixir Phoenix CQRS/ES Event sourcing

Presented on Mar 28, 2019

Talk given at Elixir London on March 28th, 2019.

Using Elixir to build event-driven applications.

In this talk I demonstrate how you could apply event sourcing to an Elixir application.

  • Practical example of event sourcing in Elixir.
  • Where event sourcing can help, or hinder.

Want to learn more?


Building CQRS/ES web applications in Elixir Elixir Phoenix CQRS/ES

Presented on Mar 23, 2017

Command Query Responsibility Segregation and event sourcing (CQRS/ES) has established itself within the .NET community thanks to advocates such as Greg Young and Udi Dahan.

I propose that functional languages, such as Elixir, are well suited and deserve your attention. Let me demonstrate why.

In this talk you will discover how to build applications following domain-driven design, using the CQRS/ES pattern with Elixir and Phoenix. I’ll take you through a real-world case study to demonstrate how these principles can be applied.

  • Elixir is a dynamic, functional language designed for building scalable and maintainable applications. It leverages the Erlang VM, known for running low-latency, distributed and fault-tolerant systems.
  • Phoenix is a productive web framework that does not compromise speed and maintainability.

Introduction to TypeScript TypeScript JavaScript

Presented on Oct 12, 2012

TypeScript was released by Microsoft on 1st October, 2012 and is being touted as “a language for application-scale JavaScript development.”

The basic premise is JavaScript with optional static typing, allowing superior tooling support.

  • TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.
  • Any browser. Any host. Any OS.
  • Open Source.