Slide 1

Slide 1 text

Holly Cummins Senior Principal Software Engineer Red Hat @holly_cummins innovation anti-patterns bonkers beans and magic numbers Voxxed Athens

Slide 2

Slide 2 text

@holly_cummins #RedHat george washington carver

Slide 3

Slide 3 text

@holly_cummins #RedHat george washington carver first African American to earn a BSc

Slide 4

Slide 4 text

@holly_cummins #RedHat george washington carver first African American to earn a BSc first non-President to receive a national monument

Slide 5

Slide 5 text

@holly_cummins #RedHat george washington carver first African American to earn a BSc first non-President to receive a national monument ship named after him

Slide 6

Slide 6 text

@holly_cummins #RedHat george washington carver first African American to earn a BSc first non-President to receive a national monument ship named after him inducted into the Inventors Hall of Fame

Slide 7

Slide 7 text

@holly_cummins #RedHat george washington carver

Slide 8

Slide 8 text

@holly_cummins #RedHat george washington carver

Slide 9

Slide 9 text

@holly_cummins #RedHat why peanuts?

Slide 10

Slide 10 text

@holly_cummins #RedHat cotton farming plantations

Slide 11

Slide 11 text

@holly_cummins #RedHat cotton exhausts soil

Slide 12

Slide 12 text

@holly_cummins #RedHat

Slide 13

Slide 13 text

@holly_cummins #RedHat hungry farmers could not afford expensive fertilizers to restore the soil

Slide 14

Slide 14 text

@holly_cummins #RedHat hungry farmers could not afford expensive fertilizers to restore the soil … so they got hungrier

Slide 15

Slide 15 text

@holly_cummins #RedHat

Slide 16

Slide 16 text

@holly_cummins #RedHat peas soy beans peanuts (a peanut is a bean, not a nut)

Slide 17

Slide 17 text

@holly_cummins #RedHat

Slide 18

Slide 18 text

@holly_cummins #RedHat cotton exhausts soil beans restore it

Slide 19

Slide 19 text

@holly_cummins #RedHat cotton peanuts

Slide 20

Slide 20 text

@holly_cummins #RedHat cotton peanuts

Slide 21

Slide 21 text

@holly_cummins #RedHat cotton peanuts

Slide 22

Slide 22 text

@holly_cummins #RedHat but there was a problem

Slide 23

Slide 23 text

@holly_cummins #RedHat but there was a problem

Slide 24

Slide 24 text

@holly_cummins #RedHat but there was a problem idea! peanut butter!

Slide 25

Slide 25 text

@holly_cummins #RedHat but there was a problem idea! peanut butter! idea! salted peanuts!

Slide 26

Slide 26 text

@holly_cummins #RedHat but there was a problem idea! peanut butter! idea! salted peanuts! idea! chocolate covered peanuts!

Slide 27

Slide 27 text

@holly_cummins #RedHat but there was a problem idea! peanut butter! idea! salted peanuts! idea! chocolate covered peanuts! …

Slide 28

Slide 28 text

@holly_cummins #RedHat

Slide 29

Slide 29 text

@holly_cummins #RedHat the double win:

Slide 30

Slide 30 text

@holly_cummins #RedHat the double win: improved soil, great cotton yields

Slide 31

Slide 31 text

@holly_cummins #RedHat the double win: improved soil, great cotton yields yummy peanuts to eat

Slide 32

Slide 32 text

@holly_cummins #RedHat

Slide 33

Slide 33 text

@holly_cummins #RedHat the double win

Slide 34

Slide 34 text

@holly_cummins #RedHat the double win win-win

Slide 35

Slide 35 text

@holly_cummins #RedHat the double win win-win win-squared

Slide 36

Slide 36 text

@holly_cummins #RedHat the double win win-win win-squared 1 + 1 = 3

Slide 37

Slide 37 text

@holly_cummins #RedHat the double win win-win win-squared 1 + 1 = 3 twofer

Slide 38

Slide 38 text

@holly_cummins #RedHat the double win win-win win-squared 1 + 1 = 3 twofer überwinden

Slide 39

Slide 39 text

@holly_cummins #RedHat the double win win-win win-squared 1 + 1 = 3 twofer überwinden the extra win

Slide 40

Slide 40 text

@holly_cummins #RedHat the double win win-win win-squared 1 + 1 = 3 twofer überwinden the extra win

Slide 41

Slide 41 text

@holly_cummins #RedHat life before the shopping cart

Slide 42

Slide 42 text

@holly_cummins #RedHat life before the shopping cart heavy

Slide 43

Slide 43 text

@holly_cummins #RedHat life before the shopping cart heavy annoying

Slide 44

Slide 44 text

@holly_cummins #RedHat life before the shopping cart heavy annoying ow, my arm

Slide 45

Slide 45 text

@holly_cummins #RedHat life after the shopping cart

Slide 46

Slide 46 text

@holly_cummins #RedHat life after the shopping cart easy

Slide 47

Slide 47 text

@holly_cummins #RedHat life after the shopping cart easy nice

Slide 48

Slide 48 text

@holly_cummins #RedHat life after the shopping cart easy nice ooh, I can also take this .. and this …

Slide 49

Slide 49 text

@holly_cummins #RedHat life after the shopping cart easy nice ooh, I can also take this .. and this … the double win

Slide 50

Slide 50 text

@holly_cummins #RedHat “everybody knows”

Slide 51

Slide 51 text

@holly_cummins #RedHat everybody knew … peanuts are barely edible

Slide 52

Slide 52 text

@holly_cummins #RedHat everybody knew … peanuts are barely edible

Slide 53

Slide 53 text

@holly_cummins #RedHat now senior principal software engineer helping to build Quarkus

Slide 54

Slide 54 text

@holly_cummins #RedHat “innovation leader” in corporate strategy consultant in IBM Garage worked with businesses to help them innovate huge enterprises + teeny startups before

Slide 55

Slide 55 text

@holly_cummins #RedHat 15 years ago everybody knows programs go fastest if you compile them ahead of time

Slide 56

Slide 56 text

@holly_cummins #RedHat 15 years ago uhh … not actually true – JIT and GC can enable surprising speed-ups everybody knows programs go fastest if you compile them ahead of time

Slide 57

Slide 57 text

@holly_cummins #RedHat now (innovative leap) everybody knows programs go fastest if you let the runtime optimisers do their thing

Slide 58

Slide 58 text

@holly_cummins #RedHat now (innovative leap) uhh … not actually true – moving more to build-time enables surprising speed- ups everybody knows programs go fastest if you let the runtime optimisers do their thing

Slide 59

Slide 59 text

@holly_cummins #RedHat everyone knows reflection is a good idea :)

Slide 60

Slide 60 text

@holly_cummins #RedHat 2020 (another innovative leap) and what if we did ahead-of-time for libraries, not just the JVM itself?

Slide 61

Slide 61 text

@holly_cummins #RedHat quarkus starts so fast quarkus runs so fast

Slide 62

Slide 62 text

@holly_cummins #RedHat … and the developer experience is joyful quarkus: a double win

Slide 63

Slide 63 text

@holly_cummins #RedHat (actually, a triple win) it can halve your app’s carbon

Slide 64

Slide 64 text

@holly_cummins #RedHat the best ideas are on the edge of ‘impossible’ and ‘stupid’

Slide 65

Slide 65 text

@holly_cummins #RedHat the best ideas are on the edge of ‘impossible’ and ‘stupid’ … but now seem kind of normal

Slide 66

Slide 66 text

@holly_cummins #RedHat ideas that seemed stupid … that were not

Slide 67

Slide 67 text

@holly_cummins #RedHat “People don't want to lug a computer with them to the beach or on a train to while away hours they would rather spend reading the newspaper. Somehow, the microcomputer industry has assumed that everyone would love to have a keyboard grafted on as an extension of their fingers. It just is not so.” New York Times, 1985 laptops

Slide 68

Slide 68 text

the double-win

Slide 69

Slide 69 text

the single-win

Slide 70

Slide 70 text

@holly_cummins #RedHat ideas that seemed stupid … that actually were

Slide 71

Slide 71 text

No content

Slide 72

Slide 72 text

peanut bread

Slide 73

Slide 73 text

peanut bread

Slide 74

Slide 74 text

peanut bread peanut sausage

Slide 75

Slide 75 text

peanut bread peanut sausage

Slide 76

Slide 76 text

peanut bread peanut sausage peanut coffee

Slide 77

Slide 77 text

peanut bread peanut sausage peanut coffee

Slide 78

Slide 78 text

peanut bread peanut sausage peanut coffee peanut paint

Slide 79

Slide 79 text

peanut bread peanut sausage peanut coffee peanut paint

Slide 80

Slide 80 text

peanut bread peanut sausage peanut coffee peanut paint peanut nitroglycerine

Slide 81

Slide 81 text

peanut bread peanut sausage peanut coffee peanut paint peanut nitroglycerine

Slide 82

Slide 82 text

peanut bread peanut sausage peanut coffee peanut paint peanut nitroglycerine the non-win

Slide 83

Slide 83 text

No content

Slide 84

Slide 84 text

failed experiments are only possible with psychological safety

Slide 85

Slide 85 text

learning is only possible with psychological safety

Slide 86

Slide 86 text

is the org supportive of this?

Slide 87

Slide 87 text

is the org supportive of this?

Slide 88

Slide 88 text

is the org supportive of this?

Slide 89

Slide 89 text

is the org supportive of this?

Slide 90

Slide 90 text

is the org supportive of this? it means they are asking questions they didn’t already know the answer to

Slide 91

Slide 91 text

@holly_cummins #RedHat how do we tell the difference between ‘almost impossible and stupid’ and ‘actually impossible and stupid’?

Slide 92

Slide 92 text

@holly_cummins #RedHat build something small how do we tell the difference between ‘almost impossible and stupid’ and ‘actually impossible and stupid’?

Slide 93

Slide 93 text

@holly_cummins #RedHat build something small and incremental how do we tell the difference between ‘almost impossible and stupid’ and ‘actually impossible and stupid’?

Slide 94

Slide 94 text

@holly_cummins #RedHat optimising for feedback can feel weird

Slide 95

Slide 95 text

@holly_cummins #RedHat optimising for feedback can feel weird visual designs

Slide 96

Slide 96 text

@holly_cummins #RedHat optimising for feedback can feel weird visual designs user research

Slide 97

Slide 97 text

@holly_cummins #RedHat optimising for feedback can feel weird visual designs user research devops

Slide 98

Slide 98 text

@holly_cummins #RedHat optimising for feedback can feel weird visual designs user research responsive web app devops

Slide 99

Slide 99 text

@holly_cummins #RedHat optimising for feedback can feel weird visual designs user research responsive web app TDD devops

Slide 100

Slide 100 text

@holly_cummins #RedHat optimising for feedback can feel weird visual designs user research responsive web app TDD devops deployed to prod

Slide 101

Slide 101 text

@holly_cummins #RedHat optimising for feedback can feel weird visual designs user research responsive web app TDD devops deployed to prod order processing system

Slide 102

Slide 102 text

@holly_cummins #RedHat optimising for feedback can feel weird visual designs user research responsive web app TDD devops deployed to prod order processing system

Slide 103

Slide 103 text

@holly_cummins #RedHat wizard of Oz mvp

Slide 104

Slide 104 text

@holly_cummins #RedHat this only works if you can release often

Slide 105

Slide 105 text

@holly_cummins #RedHat this only works if you can release more than once

Slide 106

Slide 106 text

how do you measure a win?

Slide 107

Slide 107 text

@holly_cummins #RedHat we’re going to be data-driven!

Slide 108

Slide 108 text

@holly_cummins #RedHat the quantitative fallacy (the McNamara fallacy)

Slide 109

Slide 109 text

@holly_cummins #RedHat we have data! and no matter what the numbers, it shows we are doing a good job!

Slide 110

Slide 110 text

No content

Slide 111

Slide 111 text

how do you measure a double win?

Slide 112

Slide 112 text

how do you measure a double win?

Slide 113

Slide 113 text

how do you measure a double win? usually, one of the wins is a surprise

Slide 114

Slide 114 text

how do you measure a double win? usually, one of the wins is a surprise may not have metrics in place

Slide 115

Slide 115 text

how much effort should you put into measuring?

Slide 116

Slide 116 text

@holly_cummins #RedHat high uncertainty moderate uncertainty

Slide 117

Slide 117 text

@holly_cummins #RedHat high uncertainty moderate uncertainty experiment

Slide 118

Slide 118 text

@holly_cummins #RedHat high uncertainty moderate uncertainty experiment hypothesis

Slide 119

Slide 119 text

@holly_cummins #RedHat high uncertainty moderate uncertainty experiment hypothesis able to fail

Slide 120

Slide 120 text

@holly_cummins #RedHat high uncertainty moderate uncertainty experiment hypothesis designed to fail

Slide 121

Slide 121 text

@holly_cummins #RedHat high uncertainty moderate uncertainty experiment hypothesis designed to fail strong metrics

Slide 122

Slide 122 text

@holly_cummins #RedHat high uncertainty moderate uncertainty experiment hypothesis designed to fail strong metrics learning

Slide 123

Slide 123 text

@holly_cummins #RedHat high uncertainty moderate uncertainty experiment hypothesis designed to fail follow-on experiment strong metrics learning

Slide 124

Slide 124 text

@holly_cummins #RedHat high uncertainty moderate uncertainty experiment hypothesis designed to fail follow-on experiment radical descoping strong metrics learning

Slide 125

Slide 125 text

@holly_cummins #RedHat high uncertainty moderate uncertainty experiment hypothesis designed to fail follow-on experiment radical descoping really hope to succeed strong metrics learning

Slide 126

Slide 126 text

@holly_cummins #RedHat high uncertainty moderate uncertainty experiment hypothesis designed to fail follow-on experiment radical descoping really hope to succeed strong metrics learning user value

Slide 127

Slide 127 text

@holly_cummins #RedHat high uncertainty moderate uncertainty experiment hypothesis designed to fail follow-on experiment radical descoping really hope to succeed iterative continuous expansion of scope strong metrics learning user value

Slide 128

Slide 128 text

@holly_cummins #RedHat high uncertainty moderate uncertainty experiment hypothesis designed to fail follow-on experiment radical descoping really hope to succeed iterative continuous expansion of scope strong metrics learning user value

Slide 129

Slide 129 text

@holly_cummins #RedHat the innovation funnel

Slide 130

Slide 130 text

@holly_cummins #RedHat

Slide 131

Slide 131 text

@holly_cummins #RedHat prune out the bad ideas early

Slide 132

Slide 132 text

@holly_cummins #RedHat

Slide 133

Slide 133 text

@holly_cummins #RedHat innovation funnel

Slide 134

Slide 134 text

@holly_cummins #RedHat idea innovation funnel

Slide 135

Slide 135 text

@holly_cummins #RedHat production idea innovation funnel

Slide 136

Slide 136 text

@holly_cummins #RedHat production idea innovation funnel innovation railroad

Slide 137

Slide 137 text

@holly_cummins #RedHat production idea innovation funnel organisational incentive to plough on; failure is punished innovation railroad

Slide 138

Slide 138 text

@holly_cummins #RedHat production idea innovation funnel organisational incentive to plough on; failure is punished innovation railroad

Slide 139

Slide 139 text

@holly_cummins #RedHat production idea innovation funnel innovation fizzle organisational incentive to plough on; failure is punished innovation railroad

Slide 140

Slide 140 text

@holly_cummins #RedHat production idea innovation funnel innovation fizzle most projects the same length few get to production incentive for ‘innovation activity’ organisational incentive to plough on; failure is punished innovation railroad

Slide 141

Slide 141 text

@holly_cummins #RedHat production idea innovation funnel innovation fizzle most projects the same length few get to production incentive for ‘innovation activity’ organisational incentive to plough on; failure is punished innovation railroad filtering for ‘sure thing’ focus on risk reduction bureaucracy paperwork

Slide 142

Slide 142 text

@holly_cummins #RedHat production idea innovation funnel innovation fizzle most projects the same length few get to production incentive for ‘innovation activity’ organisational incentive to plough on; failure is punished innovation railroad filtering for ‘sure thing’ focus on risk reduction bureaucracy paperwork lack of psychological safety innovation teams

Slide 143

Slide 143 text

@holly_cummins #RedHat this starts to become a lot like work

Slide 144

Slide 144 text

@holly_cummins #RedHat can you try too hard to innovate?

Slide 145

Slide 145 text

@holly_cummins #RedHat the fauxnovation

Slide 146

Slide 146 text

@holly_cummins #RedHat “we don’t have slack in the system for normal improvement, but we do have an innovation budget.” corollary

Slide 147

Slide 147 text

@holly_cummins #RedHat innovation keeping the lights on

Slide 148

Slide 148 text

@holly_cummins #RedHat “we need a chatbot.”

Slide 149

Slide 149 text

@holly_cummins #RedHat “we need a chatbot.” “we need a chatbot…”

Slide 150

Slide 150 text

@holly_cummins #RedHat “we need a chatbot.” “we need a chatbot…” “… because our internal search is really bad.”

Slide 151

Slide 151 text

@holly_cummins #RedHat “we need blockchain.”

Slide 152

Slide 152 text

@holly_cummins #RedHat “we need blockchain.” “we need blockchain…”

Slide 153

Slide 153 text

@holly_cummins #RedHat “we need blockchain.” “we need blockchain…” “… because our processes need to be digitised.”

Slide 154

Slide 154 text

@holly_cummins #RedHat ‘normal’ improvement smuggled in with disruptive innovation

Slide 155

Slide 155 text

@holly_cummins #RedHat ‘normal’ improvement smuggled in with disruptive innovation ‘normal’ improvement enabled by disruptive technology (actually, this is kind of ok?)

Slide 156

Slide 156 text

@holly_cummins #RedHat (actually, this is fine)

Slide 157

Slide 157 text

@holly_cummins #RedHat (actually, this is fine) (actually, this is kind of ok?)

Slide 158

Slide 158 text

@holly_cummins #RedHat sometimes, disguises have value

Slide 159

Slide 159 text

@holly_cummins #RedHat sometimes, disguises have value (actually, this is kind of ok?)

Slide 160

Slide 160 text

@holly_cummins #RedHat … but think about why they are needed? are you measuring the right things?

Slide 161

Slide 161 text

@holly_cummins #RedHat work … work … yawn

Slide 162

Slide 162 text

@holly_cummins #RedHat 1 + 1 = 3 double win

Slide 163

Slide 163 text

@holly_cummins #RedHat this works for people, too

Slide 164

Slide 164 text

@holly_cummins #RedHat the daily grind exhausts teams

Slide 165

Slide 165 text

@holly_cummins #RedHat the daily grind exhausts teams play restores them

Slide 166

Slide 166 text

@holly_cummins #RedHat play helps adaptation people play robots don’t play

Slide 167

Slide 167 text

@holly_cummins #RedHat play can turn into a product “our founder wrote this on a plane, for fun.”

Slide 168

Slide 168 text

@holly_cummins #RedHat ok but we can’t play all the time?

Slide 169

Slide 169 text

@holly_cummins #RedHat year 1 peas cotton

Slide 170

Slide 170 text

@holly_cummins #RedHat peas cotton year 2

Slide 171

Slide 171 text

@holly_cummins #RedHat year 3 peas cotton

Slide 172

Slide 172 text

@holly_cummins #RedHat peas cotton year 4

Slide 173

Slide 173 text

@holly_cummins #RedHat a change is as good as a rest

Slide 174

Slide 174 text

@holly_cummins #RedHat week 1 play daily chores

Slide 175

Slide 175 text

@holly_cummins #RedHat play daily chores week 2

Slide 176

Slide 176 text

@holly_cummins #RedHat week 3 play daily chores

Slide 177

Slide 177 text

@holly_cummins #RedHat play daily blah week 4

Slide 178

Slide 178 text

@holly_cummins #RedHat rotations

Slide 179

Slide 179 text

@holly_cummins #RedHat 10% time every friday afternoon you can do a cool side-project (tends to fall apart in presence of deadlines)

Slide 180

Slide 180 text

@holly_cummins #RedHat since you’ve been working your socks off on this release, we will give you time off! … you still come to work, but you can work on anything you like or …

Slide 181

Slide 181 text

@holly_cummins #RedHat advantage: everyone is ‘off’ at the same time

Slide 182

Slide 182 text

@holly_cummins #RedHat play isn’t always easy especially in organisations

Slide 183

Slide 183 text

@holly_cummins #RedHat play has consequences

Slide 184

Slide 184 text

@holly_cummins #RedHat lost productivity play has consequences

Slide 185

Slide 185 text

@holly_cummins #RedHat untracked productivity play has consequences

Slide 186

Slide 186 text

@holly_cummins #RedHat failure play has consequences

Slide 187

Slide 187 text

remember peanut nitroglycerine?

Slide 188

Slide 188 text

@holly_cummins #RedHat

Slide 189

Slide 189 text

@holly_cummins #RedHat so …

Slide 190

Slide 190 text

@holly_cummins #RedHat so … • play, to innovate

Slide 191

Slide 191 text

@holly_cummins #RedHat so … • play, to innovate • iterate freely and measure (with caution)

Slide 192

Slide 192 text

@holly_cummins #RedHat so … • play, to innovate • iterate freely and measure (with caution) • look for the double-win

Slide 193

Slide 193 text

thank you @holly_cummins slides