Your SlideShare is downloading. ×
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply



Published on

A lighthearted presentation on the psychological phenomenon that makes programming fun: Flow.

A lighthearted presentation on the psychological phenomenon that makes programming fun: Flow.

  • Be the first to comment

  • Be the first to like this

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

No notes for slide


  • 1. FLOW The Psychology of Programming Erik Ralston BIS BoF February 18th, 2010 1
  • 2. What is Flow? 2
  • 3. What is Flow? A psychological state of high performance concentration Often experienced during applied creativity (art, music, programming) Generally a “happy” or “ecstatic” state for the participant Identified by Mihaly Csíkszentmihályi (me-HIGH chick-sent-me-HIGH-ee) Characterized by absentmindedness Merging of action and awareness Narrowing of external perception Loss of time perception 3
  • 4. Who uses flow? Athletes – Sports psychology is about combining mental and physical technique to achieve flow. 4
  • 5. Who uses flow? Musicians – Sight-reading and improvisational performance rely on merged thought and action. 5
  • 6. Who uses flow? Game Designers – Flow provides the positive emotions associated with game experiences. 6
  • 7. Who uses flow? Martial Artists – Mushin – “No Mind” – Chinese word for zen- like mental state in combat and practice 7
  • 8. What is like FLOW (but not)? Fascination – The total perception of only a single stimulus 8
  • 9. What is like FLOW (but not)? Highway Hypnosis – The mental state achieved during driving (or other tasks) releasing the conscious mind from repetition 9
  • 10. What is like FLOW (but not)? Mania – A psychotic state of racing thought Stems from dysfunction in the brain Bi-Polar patients “enjoy” mania Manic individuals often stop taking drugs in order to return to “the high” 10
  • 11. How do I “Use The FLOW”? To a certain extent, flow is about overwhelming the mind Immersive – Activity must be intense and multi-faceted Automaticity – Details of actions are sub-conscious Instant Gratification – Feedback is immediate Incremental progress is immediately perceptible Familiarity – Do it using a language & technology you know Comfort – Good ergonomics, personalized surroundings, and full stomach Listen to music 11
  • 12. The Flow Channel 12
  • 13. Experience & Flow 13
  • 14. Flow Channel & Learning 14
  • 15. What stops FLOW? Confusion (No Control) - I don’t know why or what I am doing Coercion (No Control) – I don’t WANT to do what I’m doing Frustration (No Rewards) – What I do doesn’t help! Boredom (No Challenge) – One tunes out during menial tasks, they don’t flow! 15
  • 16. How does FLOW help programming? Connects coding to happiness; making it exciting not boring Integrates thinking and coding into one mental process Allows intuitive parts of brain to manage complexity 16
  • 17. Addicted to Flow Flow causes “workaholics” and video game addiction Drugs seek to replicate what Flow does naturally Do not choose Flow instead of life 17
  • 18. How does PNNL promote FLOW? Policies for employee engagement Control - “At work, do your opinions seem to count” Challenge - “In the last year, have you had opportunities to learn and grow?” Reward (Extrinsic) – “In the last seven days, have you received recognition or praise for doing good work?” Reward (Intrinsic) - “At work, do you have the opportunity to do what you do best every day?” 18
  • 19. Questions? 19
  • 20. THANK YOU! And May The Flow Be With You 20