I hereby claim:
- I am jasongoodwin on github.
- I am jasongoodwin (https://keybase.io/jasongoodwin) on keybase.
- I have a public key ASCoW0mBFXZcqxjffgX-HYufPDj_SUIkQNclZlLEVbAUlAo
To claim this, I am signing this object:
I hereby claim:
To claim this, I am signing this object:
| echo hello world |
| theme: Fira, 3 | |
| # Domain Driven Design (DDD) with Elixir | |
| - [email protected] | |
| - (we're hiring) | |
| --- | |
| # Intent | |
| - give an introduction to DDD conceps | |
| - design | |
| - architecture | |
| - *HEURISTICS* |
| theme: Sketchnote, 7 | |
| build-lists: false | |
| slidenumbers: true | |
| autoscale: true | |
| --- | |
| # Functional Programming Paradigms In Elixir | |
| - Objectives: | |
| - Understand functional programming a bit better |
| defmodule LoggingFake do | |
| @moduledoc """ | |
| This server is a Fake. | |
| It will log the messages received. | |
| Helpful stub of a genserver. | |
| """ | |
| use GenServer | |
| require Logger | |
| def handle_call(msg, _from, state) do |
| --- | |
| # Functional Programming Paradigms In Elixir | |
| - Objectives: | |
| - Understand functional programming a bit better | |
| - Categorize and understand approaches | |
| - See which approaches fit which problems | |
| - Map concepts and approaches from Scala/Haskell to elixir | |
| --- |
| package contexts.cart.cluster; | |
| import akka.actor.ActorRef; | |
| import akka.actor.ActorSystem; | |
| import akka.actor.CoordinatedShutdown; | |
| import akka.actor.Props; | |
| import akka.cluster.sharding.ClusterSharding; | |
| import akka.cluster.sharding.ClusterShardingSettings; | |
| import akka.cluster.sharding.ShardRegion; | |
| import akka.event.Logging; |
| package contexts.cart.cluster; | |
| import akka.actor.PoisonPill; | |
| import akka.actor.ReceiveTimeout; | |
| import akka.cluster.sharding.ShardRegion; | |
| import akka.japi.pf.ReceiveBuilder; | |
| import akka.persistence.AbstractPersistentActor; | |
| import contexts.cart.api.CartItem; | |
| import scala.PartialFunction; | |
| import scala.concurrent.duration.Duration; |
| package com.akkademy | |
| import akka.actor._ | |
| import akka.event.Logging | |
| import akka.pattern.{CircuitBreaker, ask} | |
| import akka.util.Timeout | |
| import com.akkademy.sapi.{GetRequest, KeyNotFoundException, SetRequest} | |
| import scala.collection.mutable.HashMap | |
| import scala.concurrent.Await |
| import akka.actor._ | |
| import akka.actor.SupervisorStrategy._ | |
| import akka.routing.RoundRobinRouter | |
| object Main { | |
| val system = ActorSystem("TestActorSystem") | |
| val escalator = OneForOneStrategy() { | |
| case e: ActorInitializationException ⇒ | |
| println("Got exception during actor start: " + e) |