Wednesday, April 23, 2014

Taking the "default option" by doing nothing

I'm taking a Coursera course "A Beginner’s Guide to Irrational Behavior", taught by Dan Ariely of Duke University.  It is behavioral economics coupled with the psychology of decision making.  Taking this course has made me realize that irrationality occurs everywhere around me (I am also guilty of this)!

Professor Ariely discusses the topic of the “default option”; I’ll give you an example from the course:
A social science experiment shows a plot in some countries in Europe on which countries are interested in donating their organs.  Some countries give a lot and some give a little.  Most people think it’s because of culture, law, religion, or caring about others. What explains the difference?  It turns out it’s how the organ donation forms are designed!  Countries that give little have forms that say “check the box if you want to participate in the organ donation program; this is “Opting In”.  Countries that give a lot have forms that say “check this box if you don’t want to participate in the organ donor program; this is “Opting Out”.  Learn more here.

The take-away from the example above is not learning the concepts of "Opting In" or "Opting Out", it's the simple fact that the forms provide a "default option", which can push one towards that default choice.   The default choice can be taken by simply taking the easy route / being lazy / making no effort / taking no action / DOING NOTHING.

What does this mean in the world of software development?

Maybe you just joined a team that is already in a rhythm of inefficiency, and everyone is just taking the default option.  In the past month, I have seen multiple instances like below:
  1. No unit or integration tests in the code base
  2. No code reviews occurring, or even a tool available to facilitate that
  3. No central repository for code
  4. Not extending software the appropriate way (i.e. modifying a third-party war file directly)
  5. Having a team telecom and having the facilitator ask "does any one else have any comments"?
  6. ...
What could you do to try fixing any of these things?
  1. Lead by example and start writing unit and integration tests
  2. Lead by example and say you are doing a code review today at status calls
  3. Request resources to stand up a central repository for code
  4. Educate on the proper way to extend software
  5. There are always a few “talkers” that will drive the opinions of the meeting.  Ask quieter or less outspoken folks their opinions directly
What are some examples where YOU have taken the default option within the past day, week, month? How can you change that?  Do you want to change it?  Depends. Will you take that default option next time and do nothing?

For more examples, ideas, and inspiration, I encourage you explore the links provided throughout this blog. For more interesting courses to take, sign up for a Coursera course if you haven't already!
What questions do you have about this post? Let me know in the comments section below, and I will answer each one.

1 comment:

I appreciate your time in leaving a comment!