SlideShare une entreprise Scribd logo
1  sur  27
Exploring Causes of
Frustration for Software Developers
Denae Ford and Dr. Chris Parnin
North Carolina State University
@denaeford
2
How many of you get frustrated?
When is the last time you were
frustrated?
3
Source: http://goo.gl/v0CMhN
Source: http://goo.gl/rUaoYb
Source: http://goo.gl/4ju26f
Source: http://goo.gl/UArPjK
4
Source: http://goo.gl/PIVv28
5
Frustration is…
“An interference with the occurrence of an instigated goal-
response at its proper time in the behavior sequence”
(Dollard, 1939)
An obstacle encountered in pursuit of an
expected goal.
6
Athletes do this because they want to.
Source: http://goo.gl/ES9pfx
7
Background
• Frustration in other fields leads to low retention(Garner, 2010)
• Tools for detecting frustration(Rodrigo, 2009)
• Affects engagement and negative learning outcomes for
developers in the classroom (Grafsgaard, 2013; Hansen, 2007)
• Outlined the landscape of frustration aside from
memoirs(Eisenstadt, 1997)
8
Survey
Asked developers to fill out a 16-question survey
Ranked severity of frustrating programming tasks on Likert scale
Open card sort on one question:
When is the last time you were frustrated?
9
Participant Pool
Participants recruited through CS Forums and mailing lists
45 Self- Identified developers
23 Students
12 Industry employees
10 Both Industry and Student
10
11 Causes
1. Mapping Behavior
2. Programming Tools
3. Size
4. New Project Adjustment
5. Unavailability of Resources
6. Programming Experience
1. Simple Problem
2. Fear of Failure
3. Internal Hurdles
4. Limited Time
5. Peers
11
Mapping Behavior to Cause
“I was frustrated when I
couldn’t figure out why
there was a random gap
of space on my website...”
12
New Project Adjustment
“I was trying to set up
some software for a study
I’m working on. I expected
some configuration
obstacles, but I became
frustrated...”
13
Unavailability of Resources
“The server I needed for
my files was not letting
me log in and the only
person who could fix it
was too busy working on
something else.”
14
How did you deal with that
frustration?
15
New Norm
Source: http://goo.gl/PThd8T
“My work revolves around it, so it’s frequent...”
16
What now?
• Analyze coping mechanisms
• Expand survey with ranking questionnaire
• Multipliers: determine which causes occur in combination
with others
• Encourage tools to monitor frustration for developers
Problem Space
18
Contact Info
Denae Ford
North Carolina State University
http://denaeford.me
http://www.buzzfeed.com/dford3/11-signs-of-a-frustrate-programmer-197vz
dford3@ncsu.edu
@DenaeFord
MORE CAUSES OF
FRUSTRATION
The following slides were not included in original
presentation but cover other causes.
20
Programming Tools
“I’ve been trying to
transition to using an IDE I
never have before...”
21
Size
1) Large goal spaces, high
cognitive complexity:
Where do I begin?
2) Gulf of completion:
I’ve come a long way
but there is a little
thing blocking me
3) Large artifacts: There’s
so much to
understand.
22
Simple Problem
“Inability to code
something that I know
should be simple.”
23
Programming Experience
“I had to code something
in Perl and I didn’t know
the language syntax.”
24
Fear of Failure
“It builds a strong sense of
anxiety. I feel like I may
not solve the issue...”
25
Internal Hurdles
“The problem that I faced
with frustration is I tend to
procrastinate...”
26
Limited Time
“I had to deal with an
ambitious project in a
limited time frame.”
27
Peers
“Peers were terrible
programmers, less
experienced, and refused
to use libraries/patterns to
make things easier... ”

Contenu connexe

Similaire à Exploring the Causes of Frustration for Software Developers

Collaborating in a virtual world (updated Aug. 2018)
Collaborating in a virtual world (updated Aug. 2018)Collaborating in a virtual world (updated Aug. 2018)
Collaborating in a virtual world (updated Aug. 2018)Heather Gillbanks
 
Collaborating in a virtual world
Collaborating in a virtual worldCollaborating in a virtual world
Collaborating in a virtual worldHeather Gillbanks
 
Measuring your work presentation
Measuring your work presentation Measuring your work presentation
Measuring your work presentation Knight Foundation
 
Lessons Learned in Promoting OSS Contribution from Latam
Lessons Learned in Promoting OSS Contribution from LatamLessons Learned in Promoting OSS Contribution from Latam
Lessons Learned in Promoting OSS Contribution from LatamAll Things Open
 
Machine Learning Interviews_ Lessons from Both Sides - FSDL.pptx
Machine Learning Interviews_ Lessons from Both Sides - FSDL.pptxMachine Learning Interviews_ Lessons from Both Sides - FSDL.pptx
Machine Learning Interviews_ Lessons from Both Sides - FSDL.pptxAbhinavSagar21
 
FSEdTech Newsletter
FSEdTech NewsletterFSEdTech Newsletter
FSEdTech Newsletteredutechandy
 
How to conduct effective interviews May 2011
How to conduct effective interviews May 2011How to conduct effective interviews May 2011
How to conduct effective interviews May 2011Timothy Holden
 
Requirements Gathering and Discovery
Requirements Gathering and DiscoveryRequirements Gathering and Discovery
Requirements Gathering and DiscoverySean Larkin
 
2014 08-13--online facilitation3--preparing[v3]
2014 08-13--online facilitation3--preparing[v3]2014 08-13--online facilitation3--preparing[v3]
2014 08-13--online facilitation3--preparing[v3]Paul Signorelli
 
Data_Management_Seminar_Dhara_Shah
Data_Management_Seminar_Dhara_ShahData_Management_Seminar_Dhara_Shah
Data_Management_Seminar_Dhara_ShahDhara Shah
 
Caroline Bishop Digital Health Assembly 2015
Caroline Bishop Digital Health Assembly 2015Caroline Bishop Digital Health Assembly 2015
Caroline Bishop Digital Health Assembly 2015DHA2015
 
Mid-term presentation.pdf
Mid-term presentation.pdfMid-term presentation.pdf
Mid-term presentation.pdfZixunZhou
 

Similaire à Exploring the Causes of Frustration for Software Developers (13)

Collaborating in a virtual world (updated Aug. 2018)
Collaborating in a virtual world (updated Aug. 2018)Collaborating in a virtual world (updated Aug. 2018)
Collaborating in a virtual world (updated Aug. 2018)
 
Collaborating in a virtual world
Collaborating in a virtual worldCollaborating in a virtual world
Collaborating in a virtual world
 
Measuring your work presentation
Measuring your work presentation Measuring your work presentation
Measuring your work presentation
 
Lessons Learned in Promoting OSS Contribution from Latam
Lessons Learned in Promoting OSS Contribution from LatamLessons Learned in Promoting OSS Contribution from Latam
Lessons Learned in Promoting OSS Contribution from Latam
 
(Webinar Slides) Tips and Tricks for Managing Social Media
(Webinar Slides) Tips and Tricks for Managing Social Media(Webinar Slides) Tips and Tricks for Managing Social Media
(Webinar Slides) Tips and Tricks for Managing Social Media
 
Machine Learning Interviews_ Lessons from Both Sides - FSDL.pptx
Machine Learning Interviews_ Lessons from Both Sides - FSDL.pptxMachine Learning Interviews_ Lessons from Both Sides - FSDL.pptx
Machine Learning Interviews_ Lessons from Both Sides - FSDL.pptx
 
FSEdTech Newsletter
FSEdTech NewsletterFSEdTech Newsletter
FSEdTech Newsletter
 
How to conduct effective interviews May 2011
How to conduct effective interviews May 2011How to conduct effective interviews May 2011
How to conduct effective interviews May 2011
 
Requirements Gathering and Discovery
Requirements Gathering and DiscoveryRequirements Gathering and Discovery
Requirements Gathering and Discovery
 
2014 08-13--online facilitation3--preparing[v3]
2014 08-13--online facilitation3--preparing[v3]2014 08-13--online facilitation3--preparing[v3]
2014 08-13--online facilitation3--preparing[v3]
 
Data_Management_Seminar_Dhara_Shah
Data_Management_Seminar_Dhara_ShahData_Management_Seminar_Dhara_Shah
Data_Management_Seminar_Dhara_Shah
 
Caroline Bishop Digital Health Assembly 2015
Caroline Bishop Digital Health Assembly 2015Caroline Bishop Digital Health Assembly 2015
Caroline Bishop Digital Health Assembly 2015
 
Mid-term presentation.pdf
Mid-term presentation.pdfMid-term presentation.pdf
Mid-term presentation.pdf
 

Plus de Denae Ford

MSR Human And Well Being: The Next Generation of Software Developers
MSR Human And Well Being: The Next Generation of Software DevelopersMSR Human And Well Being: The Next Generation of Software Developers
MSR Human And Well Being: The Next Generation of Software DevelopersDenae Ford
 
Beyond the Code Itself: How Programmers Really Look at Pull Requests
Beyond the Code Itself: How Programmers Really Look at Pull RequestsBeyond the Code Itself: How Programmers Really Look at Pull Requests
Beyond the Code Itself: How Programmers Really Look at Pull RequestsDenae Ford
 
How Remote Work Can Foster a More Inclusive Environment for Transgender Devel...
How Remote Work Can Foster a More Inclusive Environment for Transgender Devel...How Remote Work Can Foster a More Inclusive Environment for Transgender Devel...
How Remote Work Can Foster a More Inclusive Environment for Transgender Devel...Denae Ford
 
“We Don’t Do That Here”: How Collaborative Editing with Mentors Improves Eng...
“We Don’t Do That Here”:  How Collaborative Editing with Mentors Improves Eng...“We Don’t Do That Here”:  How Collaborative Editing with Mentors Improves Eng...
“We Don’t Do That Here”: How Collaborative Editing with Mentors Improves Eng...Denae Ford
 
Eating Your Donuts and Basking in Your Glow
Eating Your Donuts and Basking in Your GlowEating Your Donuts and Basking in Your Glow
Eating Your Donuts and Basking in Your GlowDenae Ford
 
Someone Like Me: How Does Peer Parity Influence Participation of Women on Sta...
Someone Like Me: How Does Peer Parity Influence Participation of Women on Sta...Someone Like Me: How Does Peer Parity Influence Participation of Women on Sta...
Someone Like Me: How Does Peer Parity Influence Participation of Women on Sta...Denae Ford
 
Paradise Unplugged: Identifying Barriers for Female Participation on Stack Ov...
Paradise Unplugged: Identifying Barriers for Female Participation on Stack Ov...Paradise Unplugged: Identifying Barriers for Female Participation on Stack Ov...
Paradise Unplugged: Identifying Barriers for Female Participation on Stack Ov...Denae Ford
 
The Tech-Talk Balance: What Technical Interviewers Expect from Technical Cand...
The Tech-Talk Balance: What Technical Interviewers Expect from Technical Cand...The Tech-Talk Balance: What Technical Interviewers Expect from Technical Cand...
The Tech-Talk Balance: What Technical Interviewers Expect from Technical Cand...Denae Ford
 
EMIP15 Workshop Presentation
EMIP15 Workshop PresentationEMIP15 Workshop Presentation
EMIP15 Workshop PresentationDenae Ford
 

Plus de Denae Ford (9)

MSR Human And Well Being: The Next Generation of Software Developers
MSR Human And Well Being: The Next Generation of Software DevelopersMSR Human And Well Being: The Next Generation of Software Developers
MSR Human And Well Being: The Next Generation of Software Developers
 
Beyond the Code Itself: How Programmers Really Look at Pull Requests
Beyond the Code Itself: How Programmers Really Look at Pull RequestsBeyond the Code Itself: How Programmers Really Look at Pull Requests
Beyond the Code Itself: How Programmers Really Look at Pull Requests
 
How Remote Work Can Foster a More Inclusive Environment for Transgender Devel...
How Remote Work Can Foster a More Inclusive Environment for Transgender Devel...How Remote Work Can Foster a More Inclusive Environment for Transgender Devel...
How Remote Work Can Foster a More Inclusive Environment for Transgender Devel...
 
“We Don’t Do That Here”: How Collaborative Editing with Mentors Improves Eng...
“We Don’t Do That Here”:  How Collaborative Editing with Mentors Improves Eng...“We Don’t Do That Here”:  How Collaborative Editing with Mentors Improves Eng...
“We Don’t Do That Here”: How Collaborative Editing with Mentors Improves Eng...
 
Eating Your Donuts and Basking in Your Glow
Eating Your Donuts and Basking in Your GlowEating Your Donuts and Basking in Your Glow
Eating Your Donuts and Basking in Your Glow
 
Someone Like Me: How Does Peer Parity Influence Participation of Women on Sta...
Someone Like Me: How Does Peer Parity Influence Participation of Women on Sta...Someone Like Me: How Does Peer Parity Influence Participation of Women on Sta...
Someone Like Me: How Does Peer Parity Influence Participation of Women on Sta...
 
Paradise Unplugged: Identifying Barriers for Female Participation on Stack Ov...
Paradise Unplugged: Identifying Barriers for Female Participation on Stack Ov...Paradise Unplugged: Identifying Barriers for Female Participation on Stack Ov...
Paradise Unplugged: Identifying Barriers for Female Participation on Stack Ov...
 
The Tech-Talk Balance: What Technical Interviewers Expect from Technical Cand...
The Tech-Talk Balance: What Technical Interviewers Expect from Technical Cand...The Tech-Talk Balance: What Technical Interviewers Expect from Technical Cand...
The Tech-Talk Balance: What Technical Interviewers Expect from Technical Cand...
 
EMIP15 Workshop Presentation
EMIP15 Workshop PresentationEMIP15 Workshop Presentation
EMIP15 Workshop Presentation
 

Dernier

SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanyChristoph Pohl
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsSafe Software
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
How To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTROHow To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTROmotivationalword821
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Natan Silnitsky
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentationvaddepallysandeep122
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringHironori Washizaki
 

Dernier (20)

SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
How To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTROHow To Manage Restaurant Staff -BTRESTRO
How To Manage Restaurant Staff -BTRESTRO
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentation
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their Engineering
 

Exploring the Causes of Frustration for Software Developers

Notes de l'éditeur

  1. By show of hands how many of you get frustrated? So before we start. I want you all to think of the last time you were frustrated. It could’ve been this morning with getting your code to work , this week trying to get a paper submitted, or whenever. Keep that memory that in your mind we are going to come back to that later.
  2. The life of a Software Developer is pretty exciting. Don’t you think? Developers work in a field where they, are expected to learn new technologies, adapt to new environments, and overcome these challenges ..(And pray to whatever higher being you serve that it all goes well(did I mention they are expected to do it fast!) Learn New Technologies: http://netdna.webdesignerdepot.com/uploads/2012/11/technology.jpg New Env: (http://vignette2.wikia.nocookie.net/matrix/images/d/df/Thematrixincode99.jpg/revision/latest?cb=20140425045724) Overcome obstacles: http://www.themudflats.net/wp-content/uploads/2013/11/fast-track_460x276.jpg http://qph.is.quoracdn.net/main-qimg-9641be2c169bd5e3154abd6a6d60a07e?convert_to_webp=true Pray to whatever being you serve that it goes well(http://sugarcube.cz/news_img/1854250aa5e55928.65476904.jpg)
  3. Well all of these expectations can be a lot to developers and scare them away in frustration. And that’s actually the last thing we want. According to the USBLS, at the rate that our retention levels are at by the year 2022 we are expected to need 3 times as many computing personnel as the U.S. will have. Source: http://www.developerhandbook.com/wp-content/uploads/2014/08/visitor-engagement-frustrated-customer.jpg Graph Source: http://cs.calvin.edu/images/department/jobs/2022/06.US-BLS-Total-Jobs-2022-Vs-NSF-Grads-2010.png
  4. So I’ve said this word frustration a couple times now. But what does frustration mean? Dollard defines it as an interference with the occurrence of an instigated goal-response at its proper time in the behavior sequence. Well for me that definition was a bit too sciency so as a runner I had to put it where myself and others like me could get it. “An obstacle encountered in pursuit of an expected goal”
  5. So when I think about frustration I think about my life as a runner. If you all know track and field this race is called the steeple chase. A race where you run about 3000 meters on the track, jump over hurdles(steeples) and into a ginormous puddle of water(often times half naked). AND FYI The key point here is that people do this because they want to. SMH Think about the trials that developers go through in their life on a never ending sprints to produce code. The amount of tough skin that they have acquired over time is remarkable. When you reflect on encounters like this, it make so much more sense why researches have taken the time to care about their frustration… In our review of other studies we found that not all causes are this dangerous…or are they.. We found …[next slide] Image source: http://cdn.running.competitor.com/files/2013/09/steeplechase-fall.jpg
  6. That in previous research that software developers we have found that …
  7. We created a 16 question survey…
  8. We posted the survey on CS affinity groups such a reddit, facebook groups, and computer science mailing lists to get a wide variety of responses…
  9. Mapping Behavior to Cause is one cause that many developers identified with. <Read quote> Respondents identified that they had issue finding and matching code that was causing an issue in the product. This was a classic example of not having a good mental model of the code.
  10. Another cause of frustration is the adjustment to a new project. One of the participant said “ I was trying to set up...<read quote>” Here, this relates to that new feeling that happens when you come across a new project. In early stages of a project you are unclear of expectations of your contributions, unclear on what’ expected of your teammates, and figuring out where you fit into all of that. It takes time and experience to get caught up which can be frustrating.
  11. That’s actually a nice segway into what also could happen on a new project. The unavailability of resources. This participant says “ The server I needed for my files was not…<read quote>” By show of hands, How many of you have ever expected to find details about an issue you were having in the API’s or wiki’s of a product.. and it wasn’t there? I’ll admit it’s happened to me! How are you expected to succeed if the resources, being the documentation or assigned mentors, are not available to you? This is something that’s out of the developers control and therefore frustrates them.
  12. So We’ve talked about all these causes but I want to pose another question to you to reflect on. How did you deal with your frustration?
  13. One person acknowledged that they don’t get frustrated because it’s something that they deal with everyday. This was represents our one outlier in our set of responses; the new norm as we described it. So notice how the person in red is trucking through this water. Atleast more calm than the person in the green. They didn’t perceive it as problem. We want to define mechanisms for software developers to get to the point where they look like the (athlete)lady in red. Source: http://dt9guucc6nuua.cloudfront.net/media/LargeL/0bda7eac-fbd2-4413-a331-a746f0e4512e.jpg?v=-301040725
  14. As we continue want to be able to analyze those potential coping mechanisms, We also want to: (1)send a ranking questionnaire to determine priority of causes, (2)Refine the essence of multipliers, causes that occurred together, (3)and potentially modify and create tools to help developers monitor their frustration
  15. In conclusion, identifying these 11 causes demonstrates that there is still a problem space for developers. This research is just a step in reducing that space and understanding those frustrating obstacles developers encounter, but there’s more work to do. We hope this work encourage others to expand and enhance the developer experience through similar analysis.