From 61354d727f85b0f6eb38782a528687b3acc8040f Mon Sep 17 00:00:00 2001
From: Christian Krause <christian.krause@idiv.de>
Date: Mon, 28 May 2018 10:57:12 +0200
Subject: [PATCH] adds motivation throw-away playgrounds

---
 .gitignore                              |  1 +
 Makefile                                | 23 ++++++++++++++++++++
 basics.html                             | 26 +++++++++++++++++------
 img/Makefile                            | 23 ++++++++++++++++++++
 img/motivation-throwaway-playground.dot | 28 +++++++++++++++++++++++++
 5 files changed, 95 insertions(+), 6 deletions(-)
 create mode 100644 .gitignore
 create mode 100644 Makefile
 create mode 100644 img/Makefile
 create mode 100644 img/motivation-throwaway-playground.dot

diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..c698706
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+img/motivation-throwaway-playground.svg
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..8d83012
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,23 @@
+SUBDIRS = \
+	img
+
+$(SUBDIRS):
+	$(MAKE) -C $@
+
+all: subdirs
+
+clean:
+	for dir in $(SUBDIRS); do \
+	  $(MAKE) -C $$dir $@; \
+	done
+
+default: all
+
+subdirs: $(SUBDIRS)
+
+.PHONY: \
+	$(SUBDIRS) \
+	all \
+	clean \
+	default \
+	subdirs
diff --git a/basics.html b/basics.html
index fc684cf..b3a53bf 100644
--- a/basics.html
+++ b/basics.html
@@ -43,20 +43,34 @@
             - show scenarios
           </section>
 
-          <section id="avoid" data-markdown>
-            ## motivation
-            ### avoid this
+          <section id="intro-motivation-avoid-mess" data-markdown>
+            ## motivation #1
+            ### avoid mess
 
             ![blah](img/draft_mess.png)
           </section>
 
-          <section id="avoid" data-markdown>
-            ## motivation
-            ### want this
+          <section id="intro-motivation-want-structure" data-markdown>
+            ## motivation #1
+            ### want structure
 
             ![blah](img/gitk-pretty-history.png)
           </section>
 
+          <section id="intro-motivation-playground" data-markdown>
+            ## motivation #2
+            ### throw-away playgrounds
+
+            ![playground](img/motivation-throwaway-playground.svg)
+
+            notes:
+            - test stuff without interfering
+              - throw away if garbage
+              - integrate if good
+            - switch back and forth
+            - (done right) decision based on regression testing
+          </section>
+
           <section id="audience" data-markdown>
             ## audience
 
diff --git a/img/Makefile b/img/Makefile
new file mode 100644
index 0000000..899a779
--- /dev/null
+++ b/img/Makefile
@@ -0,0 +1,23 @@
+SOURCES_DOT = $(wildcard *.dot)
+
+OBJECTS_DOT_SVG = $(SOURCES_DOT:.dot=.svg)
+
+OBJECTS = \
+	$(OBJECTS_DOT_SVG)
+
+%.svg: %.dot
+	dot -Tsvg -o $@ $<
+
+$(OBJECTS):
+
+all: $(OBJECTS)
+
+clean:
+	rm -f $(OBJECTS)
+
+default: all
+
+.PHONY: \
+	all \
+	clean \
+	default
diff --git a/img/motivation-throwaway-playground.dot b/img/motivation-throwaway-playground.dot
new file mode 100644
index 0000000..5b66168
--- /dev/null
+++ b/img/motivation-throwaway-playground.dot
@@ -0,0 +1,28 @@
+digraph {
+    node [shape = "box", style = "filled, rounded"]
+
+    subgraph clustermaster {
+        label = "master"
+
+        node [color = limegreen]
+
+        master3[label = "ebe0262"]
+        master2[label = "03f4f8d"]
+        master1[label = "62a0ee9"]
+
+        master3 -> master2 -> master1
+    }
+
+    subgraph clusterplayground {
+        label = "playground"
+
+        node [color = orchid]
+
+        playground2[label = "8b29f74"]
+        playground1[label = "7f295dd"]
+
+        playground2 -> playground1
+    }
+
+    playground1 -> master2
+}
-- 
GitLab