Upgrade to Pro — share decks privately, control downloads, hide ads and more …

The Importance of Fun in the Workplace

The Importance of Fun in the Workplace

An in-depth look at what makes software development a roller coaster where the highs of 0 compiler warnings are quickly cancelled out by the pain of long hours, bad requirements, endless configuration, clueless managers and a plethora of other issues which make death by a thousand cuts seem like a good idea…. They will answer questions such as: “Why is programming often called an art despite having its underpinnings in formal logic?” “How can I rediscover the delight I felt when I first started coding?” “What’s that rush I feel when my test passes? Am I addicted to TDD?” Combining Psychology, Philosophy and Computer Science, Dr Holly Cummins and Martijn Verburg will present a series of practical tips to help you rediscover the euphoria that you felt the very first time a metal box in front of you came to life and cried out “Hello World”.

Holly Cummins

November 28, 2022
Tweet

More Decks by Holly Cummins

Other Decks in Programming

Transcript

  1. @BuildStep FeatureBuildItem feature() { return new FeatureBuildItem(FEATURE); } @Record(STATIC_INIT) @BuildStep

    public void helloBuildStep(HelloRecorder recorder) { recorder.sayHello("World"); } @Record(RUNTIME_INIT) @BuildStep LogHandlerBuildItem addLogHandler(final MinecraftLogHandlerMaker maker, BeanCon return new LogHandlerBuildItem(maker.create(beanContainer.getValue())); } /** * Makes the interceptor as a bean so we can access it. */ @BuildStep void beans(BuildProducer<AdditionalBeanBuildItem> producer) { producer.produce(AdditionalBeanBuildItem.unremovableOf(MinecraftLogIntercep producer.produce(AdditionalBeanBuildItem.unremovableOf(MinecraftService.cla } @BuildStep AnnotationsTransformerBuildItem transform() { return new AnnotationsTransformerBuildItem(new AnnotationsTransformer() { public boolean appliesTo(org.jboss.jandex.AnnotationTarget.Kind kind) { return kind == org.jboss.jandex.AnnotationTarget.Kind.METHOD; } public void transform(TransformationContext context) { if (context.getTarget().asMethod().hasAnnotation(JAX_RS_GET)) { context.transform().add(MinecraftLog.class).done(); } } }); Holly Cummins Red Hat @[email protected] the importance of fun in the workplace
  2. @[email protected] #RedHat

  3. @[email protected] #RedHat first things first.

  4. @[email protected] #RedHat first things first. why is there a duck

    on the title slide?
  5. @[email protected] #RedHat first things first. why is there a duck

    on the title slide? answer: science.
  6. @holly_cummins #RedHat

  7. @holly_cummins #RedHat

  8. @holly_cummins #RedHat

  9. @holly_cummins #RedHat

  10. @holly_cummins #RedHat

  11. 350,000 participants ranked jokes (world’s largest scientific experiment)

  12. controlled experiments show: ducks make jokes funnier

  13. funniest joke in Belgium:

  14. why do ducks have webbed feet? funniest joke in Belgium:

  15. why do ducks have webbed feet? to stamp out fires.

    funniest joke in Belgium:
  16. why do ducks have webbed feet? to stamp out fires.

    funniest joke in Belgium:
  17. why do ducks have webbed feet? to stamp out fires.

    why do elephants have flat feet? funniest joke in Belgium:
  18. why do ducks have webbed feet? to stamp out fires.

    why do elephants have flat feet? to stamp out burning ducks. funniest joke in Belgium:
  19. None
  20. None
  21. @[email protected] #RedHat ma’am, this is a wendy’s.

  22. @[email protected] #RedHat ma’am, this is a wendy’s. ma’am, this is

    a technology conference.
  23. @[email protected] #RedHat

  24. @[email protected] #RedHat second things second.

  25. @[email protected] #RedHat second things second. why am i qualified to

    talk about fun in the workplace?
  26. @holly_cummins #RedHat 2016

  27. @holly_cummins #RedHat 2022

  28. @holly_cummins #RedHat

  29. @holly_cummins #RedHat Let’s talk about your career.

  30. @holly_cummins #RedHat “Hi boss! YOW London was great! 
 I

    learned so much that will help me be a better employee! I know you wanted to do a code review of my 10 most salient lines of code and then maybe fire me, but let me tell you about how ducks are the funnest animal instead!”
  31. @[email protected] #RedHat Specialty: Having fun at work

  32. @[email protected] #RedHat Are you brave enough? Specialty: Having fun at

    work
  33. @[email protected] #RedHat Are you brave enough? I’m not :)

  34. @holly_cummins #RedHat

  35. @holly_cummins #RedHat Wait. Where’s “fun-loving”?

  36. @holly_cummins #RedHat We keep fun a secret. Wait. Where’s “fun-loving”?

  37. @holly_cummins #RedHat Puritan confronts ale drinkers Howard Pyle

  38. @holly_cummins #RedHat what is fun?

  39. @holly_cummins #RedHat Fungi.

  40. @holly_cummins #RedHat Fungi. A Fun Guy.

  41. @holly_cummins #RedHat

  42. @holly_cummins #RedHat

  43. @holly_cummins #RedHat "Fun is a point on the intersection of

    engagement levels and social interaction for a given activity.” Fun: An Exploration in its Relevance to Interaction Design - Elise Woolley, 2010
  44. @holly_cummins #RedHat How do you measure fun? Excerpted from Elise

    M. Woolley, B.S., Fun: An Exploration in its Relevance to Interaction Design
  45. @holly_cummins #RedHat That was called the Funtinuum.

  46. @holly_cummins #RedHat That was called the Funtinuum. If you remember

    just one thing from this talk …
  47. @holly_cummins #RedHat Photo by [email protected] Exploration

  48. @holly_cummins #RedHat Photo by William Warby Puzzle

  49. @holly_cummins #RedHat Play

  50. @holly_cummins #RedHat Game

  51. @holly_cummins #RedHat Work

  52. @holly_cummins #RedHat

  53. @holly_cummins #RedHat Exploration focussed investigation

  54. @holly_cummins #RedHat Play flexible for its own sake Exploration focussed

    investigation
  55. @holly_cummins #RedHat Play flexible for its own sake Exploration focussed

    investigation Puzzle a goal and rules
  56. @holly_cummins #RedHat Play flexible for its own sake Exploration focussed

    investigation Games a winner and rules Puzzle a goal and rules
  57. @holly_cummins #RedHat Play flexible for its own sake Work a

    goal Exploration focussed investigation Games a winner and rules Puzzle a goal and rules
  58. @holly_cummins #RedHat Play flexible for its own sake Work a

    goal Exploration focussed investigation Games a winner and rules Puzzle a goal and rules jokes laughter
  59. @holly_cummins #RedHat Positive affect

  60. @holly_cummins #RedHat It feels good

  61. @holly_cummins #RedHat fun happiness joy laughter delight silliness jokes

  62. @holly_cummins #RedHat fun happiness joy laughter delight silliness jokes

  63. @holly_cummins #RedHat Programming is fun.

  64. @holly_cummins #RedHat We get to control stuff when we program.

  65. @[email protected] #RedHat

  66. @[email protected] #RedHat

  67. @[email protected] #RedHat

  68. @[email protected] #RedHat programming is fun

  69. @[email protected] #RedHat programming is fun making is fun

  70. @[email protected] #RedHat programming is fun making is fun being useful

    is fun
  71. @[email protected] #RedHat programming is fun making is fun puzzles are

    fun being useful is fun
  72. @[email protected] #RedHat programming is fun making is fun puzzles are

    fun learning is fun being useful is fun
  73. @[email protected] #RedHat programming is fun making is fun puzzles are

    fun learning is fun code is squishy and awesome being useful is fun
  74. @holly_cummins #RedHat Photo by [email protected] Exploration

  75. @holly_cummins #RedHat Photo by [email protected] Exploration > Hello, World

  76. @holly_cummins #RedHat Photo by William Warby Puzzle

  77. @holly_cummins #RedHat Photo by William Warby Puzzle Exception in thread

    "main" java.lang.NullPointerException: WhyWhyWhyIsThisHappeningNullPointerException at StackTraceExample.method111(StackTraceExample.java:15) at StackTraceExample.method11(StackTraceExample.java:11) at StackTraceExample.method1(StackTraceExample.java:7) at StackTraceExample.main(StackTraceExample.java:3)
  78. @holly_cummins #RedHat Game

  79. @holly_cummins #RedHat Game

  80. @holly_cummins #RedHat Katie Bouman, discovering that her algorithm for imaging

    black holes worked.
  81. @holly_cummins #RedHat Katie Bouman, discovering that her algorithm for imaging

    black holes worked. It feels good
  82. @holly_cummins #RedHat Why are most of our workplaces Not Fun?

  83. @holly_cummins #RedHat The 1980/90's Management Model Very hierarchical Control favoured

    over autonomy Technology seen as a cost centre
  84. @holly_cummins #RedHat http:/ /www.defenceimagery.mod.uk

  85. @holly_cummins #RedHat processes control us Photo by Michal Matlon on

    Unsplash
  86. @holly_cummins #RedHat processes control us Photo by Michal Matlon on

    Unsplash dumb
  87. @holly_cummins #RedHat the value of fun in the workplace

  88. @holly_cummins #RedHat Research shows: Fun is good for business.

  89. @holly_cummins #RedHat Research shows: Fun is good for business.

  90. job satisfaction is the no. 1 predictor of organizational performance

  91. “Pleasure in the job puts perfection in the work.” Aristotle

  92. @holly_cummins #RedHat

  93. @holly_cummins #RedHat “so, what was said on the conference call?”

  94. @holly_cummins #RedHat “so, what was said on the conference call?”

  95. @holly_cummins #RedHat “so, what was said on the conference call?”

    “I have no idea …
  96. @holly_cummins #RedHat “so, what was said on the conference call?”

    “I have no idea … but they were laughing, so the project is OK. ”
  97. @holly_cummins #RedHat “so, what was said on the conference call?”

    “I have no idea … but they were laughing, so the project is OK. ” a team that doesn’t laugh together doesn’t want to work together
  98. @holly_cummins #RedHat

  99. @holly_cummins #RedHat laughter:

  100. @holly_cummins #RedHat laughter: defuses tense situations

  101. @holly_cummins #RedHat laughter: defuses tense situations creates team cohesion

  102. @holly_cummins #RedHat laughter: defuses tense situations creates team cohesion is

    a nice muscle workout
  103. @holly_cummins #RedHat Studies have shown... Employee fun

  104. @holly_cummins #RedHat Studies have shown... Employee fun

  105. @holly_cummins #RedHat Studies have shown... Employee fun Less sick leave

  106. @holly_cummins #RedHat Studies have shown... Employee fun Less sick leave

    Harder working
  107. @holly_cummins #RedHat Studies have shown... Employee fun Less sick leave

    Harder working More productivity
  108. @holly_cummins #RedHat https:/ /hbr.org/2012/01/positive-intelligence

  109. @holly_cummins #RedHat “Your brain at positive is 31% more productive

    than your brain at negative, neutral or stressed. " https:/ /hbr.org/2012/01/positive-intelligence
  110. @holly_cummins #RedHat

  111. @holly_cummins #RedHat https:/ /www2.warwick.ac.uk/fac/soc/economics/staff/eproto/workingpapers/happinessproductivity.pdf

  112. @holly_cummins #RedHat "Individuals [who just watched a comedy video] have

    approximately
  113. @holly_cummins #RedHat play helps creativity we work in a creative

    industry
  114. @holly_cummins #RedHat piglet litters grow faster if they play more

    https://www.flickr.com/photos/tambako/8746156155
  115. @holly_cummins #RedHat “my contractors are in their zone of competence.”

    fun: cause and correlation
  116. @holly_cummins #RedHat How much fun can you expect to have?

    https:/ /www.flickr.com/photos/paulesson/3065570366
  117. @holly_cummins #RedHat How much fun can you expect to have?

    (Yes, this is a picture of lots of fungi. You’re welcome.) https:/ /www.flickr.com/photos/paulesson/3065570366
  118. @holly_cummins #RedHat

  119. @holly_cummins #RedHat Fun. What could possibly go wrong?

  120. @holly_cummins #RedHat Fun. What could possibly go wrong?

  121. @holly_cummins #RedHat Fun. What could possibly go wrong? 2008: A

    developer had a lot of fun with Groovy.
  122. @holly_cummins #RedHat Fun. What could possibly go wrong? 2008: A

    developer had a lot of fun with Groovy.
  123. @holly_cummins #RedHat Fun. What could possibly go wrong? 2008: A

    developer had a lot of fun with Groovy. 2009: The others who had to maintain the code had less fun.
  124. @holly_cummins #RedHat Limits to Fun Photo by Joshua Hoehne on

    Unsplash
  125. @holly_cummins #RedHat Limits to Fun • Fun has business value.

    Photo by Joshua Hoehne on Unsplash
  126. @holly_cummins #RedHat Limits to Fun • Fun has business value.

    • Logical extension: only do activities if they’re fun and enjoyable! Photo by Joshua Hoehne on Unsplash
  127. @holly_cummins #RedHat Limits to Fun • Fun has business value.

    • Logical extension: only do activities if they’re fun and enjoyable! • Uh, no. Photo by Joshua Hoehne on Unsplash
  128. @holly_cummins #RedHat Photo by Marek Studzinski on Unsplash

  129. @holly_cummins #RedHat balance

  130. @holly_cummins #RedHat Just because it's fun, doesn't mean it's good.

  131. @holly_cummins #RedHat Just because it's fun, doesn't mean it's good.

  132. @holly_cummins #RedHat https://twitterisgoinggreat.com/

  133. @holly_cummins #RedHat https://twitterisgoinggreat.com/

  134. @holly_cummins #RedHat `

  135. thanks, Manu Corbet! 
 https:/ /twittoons.com/

  136. @holly_cummins #RedHat https://twitterisgoinggreat.com/

  137. @holly_cummins #RedHat https://twitterisgoinggreat.com/

  138. @holly_cummins #RedHat https://twitterisgoinggreat.com/

  139. @holly_cummins #RedHat https://twitterisgoinggreat.com/

  140. @holly_cummins #RedHat psychological safety

  141. @[email protected] #RedHat “It was truly the most amazing, supportive, wonderful,

    empowering place I’ve ever worked” 
 – Andy Piper
  142. @[email protected] #RedHat “It was truly the most amazing, supportive, wonderful,

    empowering place I’ve ever worked” 
 – Gergely Orosz
  143. @[email protected] #RedHat #LoveWhereYouWorked

  144. @[email protected] #RedHat watch this space …

  145. @holly_cummins #RedHat "I love the smell of napalm in the

    morning .... smells like victory.” Bill Kilgore, Apocalypse Now
  146. @holly_cummins #RedHat "I love the smell of napalm in the

    morning .... smells like victory.” Bill Kilgore, Apocalypse Now Is everyone having fun?
  147. @holly_cummins #RedHat who are we including in our laughter? who

    are we excluding? https:/ /www.flickr.com/photos/davefayram/4266804988
  148. @holly_cummins #RedHat Enjoy fun. Responsibly.

  149. How to achieve fun

  150. Step 1. Find un-fun things. Get rid of them.

  151. None
  152. Step 0. Stop prohibiting fun. Obviously.

  153. @holly_cummins #RedHat “Please stop sending emails telling people you are

    sharing cake.”
  154. @holly_cummins #RedHat

  155. @holly_cummins #RedHat “If you’re in the office after 5:30, you

    need to be doing work.”
  156. @holly_cummins #RedHat “Why are you smiling? Work isn’t a place

    to be happy!” - a prowling project manager
  157. Step 1. Find un-fun things. Get rid of them.

  158. @holly_cummins #RedHat 
 A process being unfun is a red

    flag that it’s not adding value.
  159. Step 1. Find un-fun things. Get rid of them. ...

    because they're probably waste.
  160. @holly_cummins #RedHat We all hate being told what to do.

    Usually, because we know it’s wrong. Let people make their own decisions.
  161. @holly_cummins #RedHat Fun Not-Fun Effective tools Bad tools Programming Meetings

    Puzzles Mysteries Collaboration Criticism Just doing it Process/Ceremony Learning Repeating Designing Sizing Doing Status reporting Prototyping Hardening Interactions Interruptions Making a difference Being a cog
  162. @holly_cummins #RedHat Fun Not-Fun Effective tools Bad tools Programming Meetings

    Puzzles Mysteries Collaboration Criticism Just doing it Process/Ceremony Learning Repeating Designing Sizing Doing Status reporting Prototyping Hardening Interactions Interruptions Making a difference Being a cog We can fix these.
  163. @holly_cummins #RedHat Fun Not-Fun Effective tools Bad tools Programming Meetings

    Puzzles Mysteries Collaboration Criticism Just doing it Process/Ceremony Learning Repeating Designing Sizing Doing Status reporting Prototyping Hardening Interactions Interruptions Making a difference Being a cog Streamlined process Pair programming #noestimates Self-directed teams Automation We can fix these. Knowledge sharing Self-generating status MVP
  164. @holly_cummins #RedHat Pair programming

  165. @[email protected] #RedHat Status for all to see.

  166. @[email protected] #RedHat Keep stories small, so status is self-reporting. Daily

    stand-up. Keep it short. Status for all to see.
  167. @[email protected] #RedHat #noestimates Estimates are rarely accurate. Why bother??

  168. @[email protected] #RedHat Testing should not be something we do only

    at the end. TDD is fun.
  169. TDD

  170. TDD

  171. @holly_cummins #RedHat Automation Computers don’t expect to have fun (yet).

    Let them do the tedious tasks. Bonus: Automating stuff is fun (yay!). With permission of Richard Greenhill and H
  172. @holly_cummins #RedHat Toil https:/ /www.flickr.com/photos/seat850/3341460975 SRE is a whole discipline

    dedicated to eliminating toil from ops because toil isn’t worth it.
  173. @holly_cummins #RedHat “devops helps make our lives humane and win

    in the marketplace.” -Gene Kim
  174. @holly_cummins #RedHat continuous delivery should feel easy and fun

  175. @holly_cummins #RedHat continuous delivery should feel easy and fun if

    it doesn’t, maybe you’re doing it wrong?
  176. @holly_cummins #RedHat Fast feedback matters.

  177. Step 2: Add fun

  178. @[email protected] #RedHat Your brain needs breaks.

  179. @[email protected] #RedHat Your brain needs breaks.

  180. @holly_cummins #RedHat Can our job be fun?

  181. @holly_cummins #RedHat Play a goal Exploration

  182. @holly_cummins #RedHat Play flexible for its own sake Work a

    goal Exploration focussed investigation Games a winner and rules Puzzle a goal and rules
  183. @holly_cummins #RedHat gamification

  184. @holly_cummins #RedHat gamification (management loves)

  185. @holly_cummins #RedHat The Fun Theory “something as simple as fun

    is the easiest way to change people’s behaviour for the better”
  186. @holly_cummins #RedHat

  187. @holly_cummins #RedHat

  188. TDD

  189. @holly_cummins #RedHat

  190. @holly_cummins #RedHat

  191. @holly_cummins #RedHat 7186 new lines of coverage

  192. @holly_cummins #RedHat 7186 new lines of coverage 1000 new tests

    added
  193. @holly_cummins #RedHat 7186 new lines of coverage 1000 new tests

    added 230 issues fixed
  194. @holly_cummins #RedHat 7186 new lines of coverage 1000 new tests

    added 230 issues fixed 10 years of tech debt resolved
  195. @holly_cummins #RedHat 7186 new lines of coverage 1000 new tests

    added 230 issues fixed 10 years of tech debt resolved
  196. @holly_cummins #RedHat 7186 new lines of coverage 1000 new tests

    added 230 issues fixed 10 years of tech debt resolved
  197. @holly_cummins #RedHat what dazzling reward achieved that?

  198. @holly_cummins #RedHat what dazzling reward achieved that?

  199. @holly_cummins #RedHat 1 free lunch ➡ 230 issues fixed what

    dazzling reward achieved that?
  200. @holly_cummins #RedHat metrics matter

  201. @holly_cummins #RedHat remember, you get what you measure

  202. @holly_cummins #RedHat gamification is so motivating it will drive people

    do the wrong thing
  203. @holly_cummins #RedHat employees are not stupid they may notice they’ve

    been gamed
  204. @holly_cummins #RedHat Play flexible for its own sake Work a

    goal Exploration focussed investigation Games a winner and rules Puzzle a goal and rules jokes laughter
  205. @holly_cummins #RedHat Easter Eggs https:/ /www.flickr.com/photos/[email protected]/47142913712

  206. @holly_cummins #RedHat

  207. @holly_cummins #RedHat Play Children learn through play.

  208. @holly_cummins #RedHat learn skill while “playing on the job” use

    skill later on for real work
  209. Failing at 
 Fun

  210. @holly_cummins #RedHat 31% of us dislike team-building activities. http:/ /www.successfulmeetings.com/Strategy/Meeting-Strategies/When-Teambuilding-Fails/

  211. @holly_cummins #RedHat fun is not a formula

  212. @holly_cummins #RedHat fun may wear out

  213. @holly_cummins #RedHat some people like evening socialising, some people hate

    it
  214. @holly_cummins #RedHat how do you know you’re having fun if

    you’re not measuring it?
  215. @holly_cummins #RedHat How to ruin an office party? Take attendance.

  216. @holly_cummins #RedHat Failing at Fun Forgetting to fix the other

    stuff.
  217. @holly_cummins #RedHat

  218. @holly_cummins #RedHat A layer of fun

  219. @holly_cummins #RedHat A layer of fun … on top of

    a terrible workspace …
  220. @holly_cummins #RedHat A layer of fun … on top of

    a terrible workspace … is still terrible.
  221. @holly_cummins #RedHat photo by Marco Verch, https:/ /www.flickr.com/photos/[email protected]/454818

  222. @holly_cummins #RedHat my least fun project: photo by Marco Verch,

    https:/ /www.flickr.com/photos/[email protected]/454818
  223. @holly_cummins #RedHat my least fun project: agile coaches photo by

    Marco Verch, https:/ /www.flickr.com/photos/[email protected]/454818
  224. @holly_cummins #RedHat my least fun project: agile coaches games photo

    by Marco Verch, https:/ /www.flickr.com/photos/[email protected]/454818
  225. @holly_cummins #RedHat my least fun project: agile coaches games laminated

    architecture diagrams photo by Marco Verch, https:/ /www.flickr.com/photos/[email protected]/454818
  226. @holly_cummins #RedHat my least fun project: agile coaches games laminated

    architecture diagrams 1000 row requirement spreadsheets photo by Marco Verch, https:/ /www.flickr.com/photos/[email protected]/454818
  227. None
  228. Fun is important.

  229. Fun is important. Recap on achieving fun:

  230. Fun is important. Recap on achieving fun: 1. Get rid

    of un-fun things
  231. Fun is important. Recap on achieving fun: 1. Get rid

    of un-fun things 2. Add fun things
  232. Fun is important. Recap on achieving fun: 1. Get rid

    of un-fun things 2. Add fun things Doing 2. without 1. is going to fail.
  233. thank you Holly Cummins Red Hat @[email protected] slides