Taking a Gamble with Functional Domain Modeling

Cameron Presley
Cameron PresleySoftware Engineer at SentryOne
@pcameronpresley
Taking a Gamble With
Functional Domain Modeling
Cameron Presley
Cameron@TheSoftwareMentor.com
@pcameronpresley
https://blog.TheSoftwareMentor.com/Presentations
No Need To Take Notes!
@pcameronpresley
3
@pcameronpresley
What Are We Covering?
Introduction to Blackjack
Defining the Domain
Implementing the Domain
Implementing common workflows
4
5
@pcameronpresley
Overview
Game played with a standard deck of cards
Objective is to get closest to 21 points
without going over
Involves one or more players playing against
the dealer
6
@pcameronpresley
Set Up
Each player is dealt two cards face-up to
form their hand
Dealer is dealt two cards (one face-up) to
form their hand
7
@pcameronpresley
Game Play
On their turn, a player can take an action
Once all players have taken their turn, dealer
takes their turn
After dealer completes their turn, each
player compares their hand with the dealer
8
@pcameronpresley
Player Turn
Players can either “Hit” or “Stand”
◦ Stand – Ends the turn, staying in
◦ Hit – Draw a card
If their hand goes over 21, they “bust”
ending their turn and leaving the round
9
@pcameronpresley
Scoring
Aces can be worth 1 or 11 points
Face cards are worth 10 points
Number cards are worth that many points
If a player or dealer is dealt a hand worth 21
points (an Ace and a 10 point card), they
have a Blackjack, winning automatically
10
11
12
@pcameronpresley
What are the nouns?
Game played with a standard deck of cards
Objective is to get closest to 21 points
without going over
Involves one or more players playing against
the dealer
13
@pcameronpresley
14
@pcameronpresley
Each player is dealt two cards face-up to
form their hand
Dealer is dealt two cards (one face-up) to
form their hand
15
@pcameronpresley
16
@pcameronpresley
On their turn, a player can take an action
Once all players have taken their turn, dealer
takes their turn
After dealer completes their turn, each
player compares their hand with the dealer
17
@pcameronpresley
18
@pcameronpresley
Players can either “Hit” or “Stand”
◦ Stand – Ends the turn, staying in
◦ Hit – Draw a card
If their hand goes over 21, they “bust”
ending their turn and leaving the round
19
@pcameronpresley
20
@pcameronpresley
Building Up the Dependency Chart
21
@pcameronpresley
Determining Dependencies using
“has-a”
Game has a Deck, a Dealer, and Players
Deck has one or more Cards
Dealer has a Hand
Player has a Hand
Hand has one or more Cards
Card has a Rank and Suit
22
@pcameronpresley
23
@pcameronpresley
24
@pcameronpresley
25
26
@pcameronpresley
27
@pcameronpresley
Rank
Represents one of 13 possible values
Rank can be an Ace OR a Two OR a Three…
How to Model?
28
@pcameronpresley
Introducing The Sum Type!
Type that can be one of a finite number of
choices
Each choice is a different constructor
When a type can be A or B or C
29
@pcameronpresley
Rank
30
@pcameronpresley
31
@pcameronpresley
Suit
Represents one of four possible values
Suit can be Hearts or Clubs or Spades or
Diamonds
How can we model this?
32
@pcameronpresley
Suit
33
@pcameronpresley
34
@pcameronpresley
Card
Represents the combination of any Rank
and Suit
13 Ranks x 4 Suits = 52 possibilities
How can we model combinations?
35
@pcameronpresley
Introducing the Product Type!
Type that specifies the combination of other
types
It’s the product of the possible values for all
types it combines
36
@pcameronpresley
Card
37
@pcameronpresley
38
@pcameronpresley
Deck
Represents the Cards to be used in the game
Players and Dealers will be drawing from this
during the Game
How to model?
39
@pcameronpresley
Introducing the Type Alias!
40
Any code that can work on a Card
List will work on a Deck
@pcameronpresley
41
@pcameronpresley
Hand
Represents one or more Cards that a Player
or Dealer has
How to model this?
Leveraging a Type alias!
42
@pcameronpresley
43
Any issue with Hand and Deck being
interchangeable?
@pcameronpresley
Making Deck Different
44
In order to create this type, a Card list must be specified
Deck != Card list
@pcameronpresley
45
[]
[]
[]
@pcameronpresley
46
@pcameronpresley
Player
Represents someone playing the game
Has a Hand and an ID
How to model?
47
@pcameronpresley
Player
48
@pcameronpresley
49
@pcameronpresley
Dealer
Represents who every player is competing
against
Has a Hand
How to model?
50
@pcameronpresley
Dealer
51
@pcameronpresley
52
@pcameronpresley
Game
It’s what’s being played!
Consists of a Deck, a Dealer, and 1 or more
Players
How to Model?
53
@pcameronpresley
Game
54
@pcameronpresley
55
@pcameronpresley
Status
Represents the Player or Dealer during the
game
Can be one of 3 possible values
- Blackjack, Busted, Stayed
How to model?
56
@pcameronpresley
Status
57
To construct Stayed or Busted, an integer is needed
No dependencies to construct the Blackjack type
@pcameronpresley
58
@pcameronpresley
Points
Represents how much a Card is worth
Ace = 1 or 11 points
Face Cards = 10 points
Number Cards = That number of points
How to model?
59
@pcameronpresley
Points
60
To construct the Hard type, need an int
To construct the Soft type, need a tuple of int and int
@pcameronpresley
61
@pcameronpresley
Action
Represents what a Player can do during the
Game
Can either be Hit or Stay
How to model?
62
@pcameronpresley
Action
63
@pcameronpresley
64
@pcameronpresley
Domain Defined
65
66
67
@pcameronpresley
68
69
@pcameronpresley
Scoring a Hand
How Would You Score a Hand?
Calculate how many points each card is
worth
Sum them up!
70
@pcameronpresley
Scoring Rules
Aces can be worth 1 or 11 points
Face cards are worth 10 points
Number cards are worth that many points
71
@pcameronpresley
72
@pcameronpresley
How to add points?
73
@pcameronpresley
Scoring a Hand
74
75
@pcameronpresley
Drawing A Card!
76
What do we do if the deck is empty?
@pcameronpresley
Introducing the Maybe Type!
Allows us to model the absence of a value
Compile time checked
Forces us to do the right thing
77
@pcameronpresley
78
Most languages have this construct
In F#, it’s called Option
@pcameronpresley
79
By using Option, we’re signaling that this function may return
a value and that callers will need to deal with the absence of
value
@pcameronpresley
Let’s Draw Multiple Cards!
80
@pcameronpresley
81
m
@pcameronpresley
82
Where did maybe come from?
Where did let! come from?
Where did return come from?
@pcameronpresley
83
84
@pcameronpresley
What Did We Cover?
Introduction to Blackjack
Defining the Domain
Implementing the Domain
Implementing common workflows
85
Taking a Gamble with Functional Domain Modeling
@pcameronpresley
Resources
◦ Thinking Functionally (series) by Scott Wlaschin
◦ Functional Architecture : a definition by Mark Seemann
◦ Functional Architecture Is Ports and Adapters by Mark Seemann
◦ Algebraic Data Types Aren't Numbers on Steroids by Mark
Seemann
◦ Domain Modeling Made Functional by Scott Wlaschin
@pcameronpresley
88
Thanks!
Any questions?
◦ Cameron@TheSoftwareMentor.com
1 of 88

Recommended

How to play Rummy by
How to play RummyHow to play Rummy
How to play RummyPlayRummy
382 views16 slides
Oklahoma Rummy: All You Need To Know! by
Oklahoma Rummy: All You Need To Know!Oklahoma Rummy: All You Need To Know!
Oklahoma Rummy: All You Need To Know!rajnish pathania
40 views8 slides
Deals Rummy by
Deals Rummy Deals Rummy
Deals Rummy Rummy Passion
536 views13 slides
Pool Rummy | Rummy Passion by
Pool Rummy | Rummy PassionPool Rummy | Rummy Passion
Pool Rummy | Rummy PassionRummy Passion
536 views12 slides
Deccan rummy – how to play indian rummy? by
Deccan rummy – how to play indian rummy?Deccan rummy – how to play indian rummy?
Deccan rummy – how to play indian rummy?DeccanRummy
108 views10 slides
Set game instructions by
Set game instructionsSet game instructions
Set game instructionslynnn1054
330 views3 slides

More Related Content

What's hot

Game Theory by
Game TheoryGame Theory
Game TheoryBryanPenfound
856 views37 slides
Teaching a Computer To Play Blackjack.doc by
Teaching a Computer To Play Blackjack.docTeaching a Computer To Play Blackjack.doc
Teaching a Computer To Play Blackjack.docbutest
251 views2 slides
Deccan rummy – how to play points rummy by
Deccan rummy – how to play points rummy Deccan rummy – how to play points rummy
Deccan rummy – how to play points rummy Deccan Rummy
254 views17 slides
Deccan rummy – how to play points rummy? by
Deccan rummy – how to play points rummy?Deccan rummy – how to play points rummy?
Deccan rummy – how to play points rummy?DeccanRummy
141 views10 slides
Advanced gambling strategy for blackjack by
Advanced gambling strategy for blackjackAdvanced gambling strategy for blackjack
Advanced gambling strategy for blackjackprofessionalgambling
142 views4 slides
5 Methods How To Win Casino Roulette by
5 Methods How To Win Casino Roulette5 Methods How To Win Casino Roulette
5 Methods How To Win Casino Roulettemisiacot
123.3K views4 slides

What's hot(15)

Teaching a Computer To Play Blackjack.doc by butest
Teaching a Computer To Play Blackjack.docTeaching a Computer To Play Blackjack.doc
Teaching a Computer To Play Blackjack.doc
butest251 views
Deccan rummy – how to play points rummy by Deccan Rummy
Deccan rummy – how to play points rummy Deccan rummy – how to play points rummy
Deccan rummy – how to play points rummy
Deccan Rummy254 views
Deccan rummy – how to play points rummy? by DeccanRummy
Deccan rummy – how to play points rummy?Deccan rummy – how to play points rummy?
Deccan rummy – how to play points rummy?
DeccanRummy141 views
5 Methods How To Win Casino Roulette by misiacot
5 Methods How To Win Casino Roulette5 Methods How To Win Casino Roulette
5 Methods How To Win Casino Roulette
misiacot123.3K views
Automated poker player report by Danish Bangash
Automated poker player reportAutomated poker player report
Automated poker player report
Danish Bangash123 views
Deccan rummy – how to play pool rummy? by DeccanRummy
Deccan rummy – how to play pool rummy?Deccan rummy – how to play pool rummy?
Deccan rummy – how to play pool rummy?
DeccanRummy236 views
Deccan rummy – how to play pool rummy by Deccan Rummy
Deccan rummy – how to play pool rummy Deccan rummy – how to play pool rummy
Deccan rummy – how to play pool rummy
Deccan Rummy411 views
Design Documentation by vaiyash
Design DocumentationDesign Documentation
Design Documentation
vaiyash278 views
Bolt Action Dutch Nationals rulepack 2019 by Jordy Morsch
Bolt Action Dutch Nationals rulepack 2019 Bolt Action Dutch Nationals rulepack 2019
Bolt Action Dutch Nationals rulepack 2019
Jordy Morsch91 views
Intellectual playing cards - Not for everyone by drstevenquay
Intellectual playing cards - Not for everyoneIntellectual playing cards - Not for everyone
Intellectual playing cards - Not for everyone
drstevenquay16 views

Similar to Taking a Gamble with Functional Domain Modeling

Poker Texas Holdem English by
Poker Texas Holdem   EnglishPoker Texas Holdem   English
Poker Texas Holdem EnglishMárcio Guerra
1.1K views40 slides
How to Classic Indian Rummy by
How to Classic Indian RummyHow to Classic Indian Rummy
How to Classic Indian RummyGauravwwww
268 views16 slides
Rummy tips for beginners .docx by
Rummy tips for beginners .docxRummy tips for beginners .docx
Rummy tips for beginners .docxrummy gold
9 views2 slides
Top Money Earning Card Games in India by
Top Money Earning Card Games in IndiaTop Money Earning Card Games in India
Top Money Earning Card Games in IndiaBhupendra Chahar
12 views13 slides
Top Money Earning Card Games in India by
Top Money Earning Card Games in IndiaTop Money Earning Card Games in India
Top Money Earning Card Games in IndiaBhupendra Chahar
12 views13 slides
How To Play 500 Rummy by
How To Play 500 RummyHow To Play 500 Rummy
How To Play 500 RummyChristopher Davey
391 views11 slides

Similar to Taking a Gamble with Functional Domain Modeling(20)

Poker Texas Holdem English by Márcio Guerra
Poker Texas Holdem   EnglishPoker Texas Holdem   English
Poker Texas Holdem English
Márcio Guerra1.1K views
How to Classic Indian Rummy by Gauravwwww
How to Classic Indian RummyHow to Classic Indian Rummy
How to Classic Indian Rummy
Gauravwwww268 views
Rummy tips for beginners .docx by rummy gold
Rummy tips for beginners .docxRummy tips for beginners .docx
Rummy tips for beginners .docx
rummy gold9 views
Rules1) The object of the game is to beat the dealers score wit.docx by joellemurphey
Rules1) The object of the game is to beat the dealers score wit.docxRules1) The object of the game is to beat the dealers score wit.docx
Rules1) The object of the game is to beat the dealers score wit.docx
joellemurphey3 views
How to play all rummy game.pdf by Rummywealth1
How to play all rummy game.pdfHow to play all rummy game.pdf
How to play all rummy game.pdf
Rummywealth155 views
Ch11 Search & Sort by leminhvuong
Ch11 Search & SortCh11 Search & Sort
Ch11 Search & Sort
leminhvuong580 views
CPSC 120Second Project—Blackjack gamedue November 15th, 20.docx by faithxdunce63732
CPSC 120Second Project—Blackjack gamedue November 15th, 20.docxCPSC 120Second Project—Blackjack gamedue November 15th, 20.docx
CPSC 120Second Project—Blackjack gamedue November 15th, 20.docx
4A Beginner’s Guide to Counting Cards and Winning at Black.docx by alinainglis
4A Beginner’s Guide to Counting Cards and Winning at Black.docx4A Beginner’s Guide to Counting Cards and Winning at Black.docx
4A Beginner’s Guide to Counting Cards and Winning at Black.docx
alinainglis7 views
Blackjack dominance by Chidi Ibe
Blackjack dominanceBlackjack dominance
Blackjack dominance
Chidi Ibe63 views
Write a pseudocode and develop a program after in repl-it- In the game.docx by Jonathan5GxRossk
Write a pseudocode and develop a program after in repl-it- In the game.docxWrite a pseudocode and develop a program after in repl-it- In the game.docx
Write a pseudocode and develop a program after in repl-it- In the game.docx
Social Media Game Concept - Hearts ( as visible in Windows games arena) by Ankit Gupta
Social Media Game Concept - Hearts ( as visible in Windows games arena)Social Media Game Concept - Hearts ( as visible in Windows games arena)
Social Media Game Concept - Hearts ( as visible in Windows games arena)
Ankit Gupta457 views
Poker in Numbers by PokerCoUk
Poker in NumbersPoker in Numbers
Poker in Numbers
PokerCoUk3.1K views

More from Cameron Presley

The Engineer's Playbook: Starting a New Role by
The Engineer's Playbook: Starting a New RoleThe Engineer's Playbook: Starting a New Role
The Engineer's Playbook: Starting a New RoleCameron Presley
73 views134 slides
Level Up Your Functional Programming Skills with LINQ by
Level Up Your Functional Programming Skills with LINQLevel Up Your Functional Programming Skills with LINQ
Level Up Your Functional Programming Skills with LINQCameron Presley
298 views84 slides
Functional Programming Through Construction : First Principles by
Functional Programming Through Construction : First PrinciplesFunctional Programming Through Construction : First Principles
Functional Programming Through Construction : First PrinciplesCameron Presley
117 views86 slides
Establishing a SOLID Foundation by
Establishing a SOLID FoundationEstablishing a SOLID Foundation
Establishing a SOLID FoundationCameron Presley
357 views91 slides
How Functional Programming Made Me a Better Developer by
How Functional Programming Made Me a Better DeveloperHow Functional Programming Made Me a Better Developer
How Functional Programming Made Me a Better DeveloperCameron Presley
454 views76 slides
How to Have Code Reviews That Developers Actually Want by
How to Have Code Reviews That Developers Actually WantHow to Have Code Reviews That Developers Actually Want
How to Have Code Reviews That Developers Actually WantCameron Presley
500 views59 slides

More from Cameron Presley(10)

The Engineer's Playbook: Starting a New Role by Cameron Presley
The Engineer's Playbook: Starting a New RoleThe Engineer's Playbook: Starting a New Role
The Engineer's Playbook: Starting a New Role
Cameron Presley73 views
Level Up Your Functional Programming Skills with LINQ by Cameron Presley
Level Up Your Functional Programming Skills with LINQLevel Up Your Functional Programming Skills with LINQ
Level Up Your Functional Programming Skills with LINQ
Cameron Presley298 views
Functional Programming Through Construction : First Principles by Cameron Presley
Functional Programming Through Construction : First PrinciplesFunctional Programming Through Construction : First Principles
Functional Programming Through Construction : First Principles
Cameron Presley117 views
How Functional Programming Made Me a Better Developer by Cameron Presley
How Functional Programming Made Me a Better DeveloperHow Functional Programming Made Me a Better Developer
How Functional Programming Made Me a Better Developer
Cameron Presley454 views
How to Have Code Reviews That Developers Actually Want by Cameron Presley
How to Have Code Reviews That Developers Actually WantHow to Have Code Reviews That Developers Actually Want
How to Have Code Reviews That Developers Actually Want
Cameron Presley500 views
Making the Unstable Stable - An Intro To Testing by Cameron Presley
Making the Unstable Stable - An Intro To TestingMaking the Unstable Stable - An Intro To Testing
Making the Unstable Stable - An Intro To Testing
Cameron Presley432 views
Indy Code - Taking a Gamble With F#: Implementing Blackjack by Cameron Presley
Indy Code - Taking a Gamble With F#: Implementing BlackjackIndy Code - Taking a Gamble With F#: Implementing Blackjack
Indy Code - Taking a Gamble With F#: Implementing Blackjack
Cameron Presley727 views
How Functional Programming Made Me A Better Developer by Cameron Presley
How Functional Programming Made Me A Better DeveloperHow Functional Programming Made Me A Better Developer
How Functional Programming Made Me A Better Developer
Cameron Presley328 views
Establishing a SOLID Foundation - An Intro to Software Design by Cameron Presley
Establishing a SOLID Foundation - An Intro to Software DesignEstablishing a SOLID Foundation - An Intro to Software Design
Establishing a SOLID Foundation - An Intro to Software Design
Cameron Presley201 views

Recently uploaded

Igniting Next Level Productivity with AI-Infused Data Integration Workflows by
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Safe Software
373 views86 slides
CloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlue by
CloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlueCloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlue
CloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlueShapeBlue
63 views15 slides
Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda... by
Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda...Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda...
Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda...ShapeBlue
93 views13 slides
The Power of Heat Decarbonisation Plans in the Built Environment by
The Power of Heat Decarbonisation Plans in the Built EnvironmentThe Power of Heat Decarbonisation Plans in the Built Environment
The Power of Heat Decarbonisation Plans in the Built EnvironmentIES VE
67 views20 slides
Declarative Kubernetes Cluster Deployment with Cloudstack and Cluster API - O... by
Declarative Kubernetes Cluster Deployment with Cloudstack and Cluster API - O...Declarative Kubernetes Cluster Deployment with Cloudstack and Cluster API - O...
Declarative Kubernetes Cluster Deployment with Cloudstack and Cluster API - O...ShapeBlue
59 views13 slides
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive by
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveAutomating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveNetwork Automation Forum
49 views35 slides

Recently uploaded(20)

Igniting Next Level Productivity with AI-Infused Data Integration Workflows by Safe Software
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Safe Software373 views
CloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlue by ShapeBlue
CloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlueCloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlue
CloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlue
ShapeBlue63 views
Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda... by ShapeBlue
Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda...Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda...
Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda...
ShapeBlue93 views
The Power of Heat Decarbonisation Plans in the Built Environment by IES VE
The Power of Heat Decarbonisation Plans in the Built EnvironmentThe Power of Heat Decarbonisation Plans in the Built Environment
The Power of Heat Decarbonisation Plans in the Built Environment
IES VE67 views
Declarative Kubernetes Cluster Deployment with Cloudstack and Cluster API - O... by ShapeBlue
Declarative Kubernetes Cluster Deployment with Cloudstack and Cluster API - O...Declarative Kubernetes Cluster Deployment with Cloudstack and Cluster API - O...
Declarative Kubernetes Cluster Deployment with Cloudstack and Cluster API - O...
ShapeBlue59 views
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive by Network Automation Forum
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveAutomating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Setting Up Your First CloudStack Environment with Beginners Challenges - MD R... by ShapeBlue
Setting Up Your First CloudStack Environment with Beginners Challenges - MD R...Setting Up Your First CloudStack Environment with Beginners Challenges - MD R...
Setting Up Your First CloudStack Environment with Beginners Challenges - MD R...
ShapeBlue105 views
CloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&T by ShapeBlue
CloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&TCloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&T
CloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&T
ShapeBlue81 views
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha... by ShapeBlue
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
ShapeBlue113 views
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N... by James Anderson
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...
James Anderson142 views
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti... by ShapeBlue
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...
ShapeBlue69 views
Why and How CloudStack at weSystems - Stephan Bienek - weSystems by ShapeBlue
Why and How CloudStack at weSystems - Stephan Bienek - weSystemsWhy and How CloudStack at weSystems - Stephan Bienek - weSystems
Why and How CloudStack at weSystems - Stephan Bienek - weSystems
ShapeBlue172 views
Updates on the LINSTOR Driver for CloudStack - Rene Peinthor - LINBIT by ShapeBlue
Updates on the LINSTOR Driver for CloudStack - Rene Peinthor - LINBITUpdates on the LINSTOR Driver for CloudStack - Rene Peinthor - LINBIT
Updates on the LINSTOR Driver for CloudStack - Rene Peinthor - LINBIT
ShapeBlue138 views
Keynote Talk: Open Source is Not Dead - Charles Schulz - Vates by ShapeBlue
Keynote Talk: Open Source is Not Dead - Charles Schulz - VatesKeynote Talk: Open Source is Not Dead - Charles Schulz - Vates
Keynote Talk: Open Source is Not Dead - Charles Schulz - Vates
ShapeBlue178 views
DRBD Deep Dive - Philipp Reisner - LINBIT by ShapeBlue
DRBD Deep Dive - Philipp Reisner - LINBITDRBD Deep Dive - Philipp Reisner - LINBIT
DRBD Deep Dive - Philipp Reisner - LINBIT
ShapeBlue110 views
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ... by ShapeBlue
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...
ShapeBlue52 views

Taking a Gamble with Functional Domain Modeling