Austin A Software Developer’s Guide to FUN in the workplace Copenhagen Dubai London Madrid Melbourne Munich Holly Cummins IBM Cloud Garage @holly_cummins Martijn Verburg @karianna New York Nice Raleigh San Francisco São Paulo Singapore Tokyo

I’m from IBM’s Cloud Garage.

I’m from IBM’s Cloud Garage. (we are opening in Milan, by the way …)

Is this a fun talk?

Is this a fun talk? No. It’s a talk about fun.

Is this a fun talk? No. It’s a talk about fun. That’s different.

Is this a fun talk? No. It’s a talk about fun. That’s different. Obviously.

10 step plan to achieve FUN. 1. Quantify and Qualify your FUN metrics 2. Create a Chief FUN Officer (CFO) role 3. Gamify your daily tasks to make them more FUN 4. Enthusiastically high five everyone each morning for FUN 5. Install a FUN ball pit 6. Inject a FUN word of the day into conversations 7. Wear FUN clothing, something with flair 8. Create FUN certificates with gold star systems - relive the fun of kindergarten! 9. Nominate FUN assessors for each team 10.Laugh Out Loud (LOL) once a day in the office, others will enjoy your FUN @holly_cummins http://ibm.biz/bluemixgaragelondon /* Discover. Collaborate. Deploy. */ @karianna

Let’s talk about your career.

“Dear boss, you need to send me to Voxxed CERN so I can go to the session on…. FUN.” @holly_cummins http://ibm.biz/bluemixgaragelondon /* Discover. Collaborate. Deploy. */ @karianna

“Dear boss, you need to send me to Voxxed CERN so I can go to the session on…. FUN.” @holly_cummins http://ibm.biz/bluemixgaragelondon /* Discover. Collaborate. Deploy. */ @karianna

Are you brave enough? , Having fun at work @holly_cummins http://ibm.biz/bluemixgaragelondon /* Discover. Collaborate. Deploy. */ @karianna

Are you brave enough? I’m not :) @holly_cummins http://ibm.biz/bluemixgaragelondon /* Discover. Collaborate. Deploy. */ @karianna

Wait. Where’s “fun-loving”?

Wait. Where’s “fun-loving”? We keep fun a secret.

What is Fun?

A Fun Guy. (Remember, fun means jokes.)

Fun

Fun

There is lots of research on fun.

“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

Aside: When is fun not-fun?

Aside: When is fun not-fun? When it’s your job.

How do you measure fun? Excerpted from Elise M. Woolley, B.S., Fun: An Exploration in its Relevance to Interaction Design

That was called the Funtinuum.

That was called the Funtinuum. If you remember just one thing from this talk …

Exploration focussed investigation

Play flexible for its own sake Exploration focussed investigation

Play flexible for its own sake Exploration focussed investigation Puzzle a goal and rules

Games a winner and rules Play flexible for its own sake Exploration focussed investigation Puzzle a goal and rules

Games a winner and rules Work a goal Play flexible for its own sake Exploration focussed investigation Puzzle a goal and rules

Exploration Photo by Linearahandmade@etsy

Puzzle Photo by William Warby

Play

Game

Work

Positive affect

It feels good

Programming is fun.

Programming gives pleasure to both types of thinkers: • Creative • Logical

We get to control stuff when we program.

Exploration Photo by Linearahandmade@etsy

Hello, World Exploration Photo by Linearahandmade@etsy

Puzzle Photo by William Warby

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) Puzzle Photo by William Warby

Game

Game

Katie Bouman, discovering that her algorithm for imaging black holes worked.

Katie Bouman, discovering that her algorithm for imaging black holes worked. It feels good

Why are most of our workplaces Not Fun?

The 1980/90’s Management Model Very hierarchical Control favoured over autonomy Technology seen as a cost centre

http://www.defenceimagery.mod.uk

Puritan confronts ale drinkers Howard Pyle

Jean Calvin

Jean Calvin (… not an advocate of fun)

the value of fun in the workplace

piglet litters grow faster if they play more

IBM Watson IoT Centre, Munich @holly_cummins

IBM IoT Lab, Munich

@holly_cummins

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

Research shows: Fun is good for business.

Research shows: Fun is good for business.

Studies have shown… Employee fun

Studies have shown… Employee fun

Studies have shown… Less sick leave Employee fun

Studies have shown… Less sick leave Employee fun Harder working

Studies have shown… Less sick leave Employee fun Harder working More productivity

https://hbr.org/2012/01/positive-intelligence

“Your brain at positive is 31% more productive than your brain at negative, neutral or stressed. ” https://hbr.org/2012/01/positive-intelligence

https://www2.warwick.ac.uk/fac/soc/economics/staff/eproto/workingpapers/happinessproductivity.pdf

“Individuals [who just watched a comedy video] have approximately 12% greater productivity.” https://www2.warwick.ac.uk/fac/soc/economics/staff/eproto/workingpapers/happinessproductivity.pdf

Your brain needs breaks. @holly_cummins http://ibm.biz/bluemixgaragelondon /* Discover. Collaborate. Deploy. */ @karianna

Breaks with exercise are even better @holly_cummins http://ibm.biz/bluemixgaragelondon /* Discover. Collaborate. Deploy. */ @karianna

Practical example: Everyone loves lego trains.

Info Support funded their employees’ lego trains.

Why? Good business. Thanks, @johanjanssen42!

How much fun can you expect to have? https://www.flickr.com/photos/paulesson/3065570366

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

• No one likes working on things that aren’t valuable or useful. • So if you take that to its extreme, and only do activities if they’re fun and enjoyable, will that work? • Limits to Fun Self-discipline is still needed.

Just because it’s fun, doesn’t mean it’s good.

Just because it’s fun, doesn’t mean it’s good.

“I love the smell of napalm in the morning …. smells like victory.” Bill Kilgore, Apocalypse Now

“I love the smell of napalm in the morning …. smells like victory.” Bill Kilgore, Apocalypse Now Is everyone having fun?

Fun. What could possibly go wrong?

Fun. What could possibly go wrong?

Fun. What could possibly go wrong? 2008: A developer had a lot of fun with Groovy.

Fun. What could possibly go wrong? 2008: A developer had a lot of fun with Groovy.

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.

Enjoy fun. Responsibly.

_ How to achieve fun Warning: This is our context and our experience of Fun. Your workplace culture may be different.

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

Step 0. Stop prohibiting fun. Obviously.

“Please stop sending emails telling people you are sharing cake.”

“If you’re in the office after 5:30, you need to be doing work.”

“Why are you smiling? Work isn’t a place to be happy!” - a prowling project manager

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

A process being unfun is a red flag that it’s not adding value.

Step 1. Find un-fun things. Get rid of them. … because they’re probably waste.

@holly_cummins http://ibm.biz/bluemixgaragelondon /* Discover. Collaborate. Deploy. */ @karianna

@holly_cummins http://ibm.biz/bluemixgaragelondon /* Discover. Collaborate. Deploy. */ @karianna

Get rid of the stuff that stops us doing what we enjoy. @holly_cummins http://ibm.biz/bluemixgaragelondon /* Discover. Collaborate. Deploy. */ @karianna

Get rid of the stuff that stops us doing what we enjoy. “We’re short staffed. You’re going to need to cancel all my meetings for a month so I can do programming.” @holly_cummins http://ibm.biz/bluemixgaragelondon /* Discover. Collaborate. Deploy. */ @karianna

Get rid of the stuff that stops us doing what we enjoy. This worked! “We’re short staffed. You’re going to need to cancel all my meetings for a month so I can do programming.” @holly_cummins http://ibm.biz/bluemixgaragelondon /* Discover. Collaborate. Deploy. */ @karianna

Interactions are fun. Interruptions are not.

Protect your coding time from meetings. “I’m sorry, since I’m pairprogramming, I can’t make that meeting.”

Pair programming

#noestimates Estimates are rarely accurate. Why bother?? @holly_cummins http://ibm.biz/bluemixgaragelondon /* Discover. Collaborate. Deploy. */ @karianna

Prototyping versus hardening Can adding logging ever be fun? @holly_cummins http://ibm.biz/bluemixgaragelondon /* Discover. Collaborate. Deploy. */ @karianna

Prototyping versus hardening Can adding logging ever be fun? Making a difference is fun. @holly_cummins http://ibm.biz/bluemixgaragelondon /* Discover. Collaborate. Deploy. */ @karianna

Prototyping versus hardening Can adding logging ever be fun? Making a difference is fun. Having a prototype become real is fun. @holly_cummins http://ibm.biz/bluemixgaragelondon /* Discover. Collaborate. Deploy. */ @karianna

Prototyping versus hardening Can adding logging ever be fun? Making a difference is fun. Having a prototype become real is fun. Add the logging when you know it actually matters. @holly_cummins http://ibm.biz/bluemixgaragelondon /* Discover. Collaborate. Deploy. */ @karianna

” W e d o n’ t w a n t t o b e t h e prototyping department.” — Head of Innovation, A-Client @holly_cummins http://ibm.biz/bluemixgaragelondon /* Discover. Collaborate. Deploy. */ @karianna

Testing should not be part of the hardening phase. TDD is fun. @holly_cummins http://ibm.biz/bluemixgaragelondon /* Discover. Collaborate. Deploy. */ @karianna

TDD

TDD

Automation Computers don’t expect to have fun (yet). Let them do the tedious tasks. Bonus: Automating stuff is fun (yay!).

Status for all to see. @holly_cummins http://ibm.biz/bluemixgaragelondon /* Discover. Collaborate. Deploy. */ @karianna

Status for all to see. Keep stories small, so status is self-reporting. Daily stand-up. Keep it short. @holly_cummins http://ibm.biz/bluemixgaragelondon /* Discover. Collaborate. Deploy. */ @karianna

We all hate being told what to do. Usually, because we know it’s wrong. Let people make their own decisions.

Step 2: Add fun

TDD

Build gamification

Build gamification (Strictly speaking, productization of build gamification)

Build gamification can be pretty serious.

1 free lunch ➡ thousands of issues fixed

remember, you get what you measure

risks of gamification • you may not be able to fool users indefinitely • it can start to feel an awful lot like work

risks of gamification • you may not be able to fool users indefinitely • it can start to feel an awful lot like work

FINDING HAPPINESS IN PATENT INFORMATION DATABASES

Play

Children learn through play. Adults do too.

Quirkiness

Images: shawcomputing.net, computerhistory.org

Images: shawcomputing.net, computerhistory.org

Images: shawcomputing.net, computerhistory.org

“Is ‘Gullible’ in the Dictionary?” Images: shawcomputing.net, computerhistory.org

Quirkiness How do a production-train slack-integration nicely:

Feedback matters.

_ Failing at Fun

What if you got paid to do something other people would pay to do?

No, not the best job in the world.

31% of us dislike teambuilding activities. http://www.successfulmeetings.com/Strategy/Meeting-Strategies/When-Teambuilding-Fails/

How do you know you’re having fun if you’re not measuring it?

How to ruin an office party? Take attendance.

Failing at Fun Forgetting to fix the other stuff.

A layer of fun

A layer of fun … on top of a terrible workspace …

A layer of fun … on top of a terrible workspace … is still terrible.

_

_ 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.

Austin Copenhagen Dubai London Madrid Questions? Melbourne Munich New York Holly Cummins IBM Cloud Garage @holly_cummins Nice Raleigh San Francisco São Paulo Singapore Tokyo Toronto