Upload
margaret-anne-storey
View
1.528
Download
1
Tags:
Embed Size (px)
DESCRIPTION
"The (R)evolution of Social Media in Software Engineering", Margaret-Anne (Peggy) Storey Leif Singer Brendan Cleary Fernando Figueira Filho Alexey Zagalsky Presented at ICSE 2014, Future of Software Engineering Track, Hyderabad, June 4, 2014. A preprint of the paper can be found here: http://chiselgroup.files.wordpress.com/2014/01/fose14main-storey-submitted.pdf
Citation preview
The (R)evolution of Social Media in Software Engineering!
Margaret-Anne (Peggy) Storey Leif Singer Brendan Cleary Fernando Figueira Filho Alexey Zagalsky
ICSE June 4th, 2014 @margaretstorey
“I know how this was done because I did it” “I need complete understanding”
Peter Norvig, Coders at Work
“How is this likely done?” “Can I quickly get an understanding of what I need?”
Peter Norvig, Coders at Work
The emergence of software ecosystems and communities of practice [Wenger]
Social Media and Participatory Cultures [Jenkins]
Low barriers to artistic expression and engagement
Strong support for sharing one’s creations
Informal mentorship for novices
Members believe their contributions matter
Members care about social connections and what others think about their creations
5
The Participatory Culture in Software Engineering is not new
Internet and free/open source projects
Linux and the bazaar model of programming
Global software development (GSD)
Historical importance of tools and the social shaping of communities
6
“If we understand the revolutionary transformations caused by new media, we can anticipate and control them; but if we continue in our self-induced subliminal trance, we will be their slaves.” [Marshall McLuhan, 1974]
Understanding affordances of channels for communicating knowledge [Wasko et al.]
Communicating knowledge embedded in project artifacts (GitHub, Visual Studio…)
Communicating knowledge embedded "in community resources (Books, Usenet)
(new!) Communicating knowledge about "social networks (Facebook, Coderwall, Twitter…)
Communicating knowledge that is embedded in people (F2F, email, chat…)
8
1968 1980 1990 2000 2010 1970
Telephone Face2Face
Email IRC
ICQ Skype
Campfire
Google"Hangouts
De Marco/Lister Handel et al.
Nondigital Digital Digital & Socially Enabled
Telephone Face2Face
Project"Workbook
Documents
Email Lists
VisualAge Visual Studio
NetBeans Eclipse IRC
ICQ Skype
SourceForge Wikis
GitH
ub
Trello Basecamp
Jazz
Campfire
Google"Hangouts
Punchcards TFS
Guzzi et al.
Pham et al., Dabbish et al.
Treude et al.
Gutwin et al. Bird et al.
Rigby et al.
1968 1980 1990 2000 2010 1970
Cunningham Robillard et al.
Nondigital Digital Digital & Socially Enabled
1968 1980 1990 2000 2010 1970
Telephone Face2Face
Project"Workbook
Documents
Email Lists
VisualAge Visual Studio
NetBeans Eclipse IRC
ICQ Skype
SourceForge Wikis
Trello Basecamp Jazz
Campfire
Google"Hangouts
Punchcards TFS
Books Usenet Stack"
Overflow
Twitt
er
Google "Groups
Podcasts Blogs
GitH
ub Conferences
Wasko et al. Parnin et al.
Singer et al., Dullemond et al. Pagano et al.,
Parnin et al.
Slashdot HackerNews
Nondigital Digital Digital & Socially Enabled
Yam
mer
1968 1980 1990 2000 2010 1970
Telephone Face2Face
Project"Workbook
Documents
Email Lists
VisualAge Visual Studio
NetBeans Eclipse IRC
ICQ Skype
SourceForge Wikis
Trello Basecamp Jazz
Campfire
Google"Hangouts
Punchcards TFS
Books Usenet Stack"
Overflow Google "Groups
Podcasts Blogs
GitH
ub Conferences
Societies Masterbranch Coderwall
LinkedIn Facebook
Barzilay et al.
Twitt
er
Slashdot HackerNews
Meetups
Nondigital Digital Digital & Socially Enabled Singer et al.
1968 1980 1990 2000 2010 1970
Telephone Face2Face
Project"Workbook
Documents
Email Lists
VisualAge Visual Studio
NetBeans Eclipse IRC
ICQ Skype
SourceForge Wikis
Trello Basecamp Jazz
Campfire
Google"Hangouts
Punchcards TFS
Books Usenet Stack"
Overflow
Twitt
er
Google "Groups
Podcasts Blogs
GitH
ub Conferences
Societies LinkedIn Facebook
Slashdot HackerNews
Nondigital Digital Digital & Socially Enabled
Masterbranch Coderwall
Meetups
Yam
mer
We know how some specific tools are used for some specific tasks…
but how do developers use and combine these tools to support development activities within a
community of practice?
2013 Developer Survey Research Questions:
How do developers today use socially enabled tools to aid in keeping up, communication, learning, relationship building, and coordination? "
What challenges do developers face using these tools?
15
Respondents
Distributed to 7,000 GitHub developers (email) Over 1500 responses (>20% response rate)
Limitations
Social coder bias, self selected Dark matter developers not included "
[Scott Hanselman]
17
Digital: Web Search, Public Chat, Private Chat, Discussion Groups, …
Digital & social: Feeds and Blogs, Tagging, Q&A, SNS, Code hosting, …
Nondigital: Face-to-face, "books, magazines, …
18 Survey: http://leif.me/devsurvey/?source=icse
For each “activity” or “need”, which tools are used?
Selected Findings
19
average: 12 channels
top 25%: 14-21 channels
Ecosystem of tools
Learning
Cod
e H
ostin
g
Q&
A si
tes
Web
sea
rch
Coordination
Cod
e H
ostin
g C
oord
inat
ion
tool
s
Priv
ate
chat
Priv
ate
disc
uss
Face
to F
ace
Connecting
Mic
robl
oggi
ng
Priv
ate
disc
uss
Face
to F
ace
Cod
e ho
stin
g
Most Important Channels
F2F (496)
Q&A (512)
Search (429)
CodeHosting(1018)
Microblogging (221)
21 Interactive visualization: http://fose2014.thechiselgroup.org
"The closest thing that my ideal setup is Google Hangout + Trello + GitHub + Nitrous.io. The biggest challenge in soft-dev for me is four-fold: communicating the idea (Hangout), managing the idea (Trello), logging the implemented idea (GitHub), and explaining the implemented idea with the team (Nitrous.io). The first three solutions are pretty solid.
It's the fact you can't always sit right next to someone and show them the code and explain how everything works that is the most challenging part. Cloud9, Koding, Nitrous, etc are all trying to solve the last problem. So far, Nitrous works best for me but that's still where the biggest pain point is for me.”
22
Charting a course… Theories of media and how media shape
software development
How social/communication channels have evolved over time in software engineering
A survey to find out what channels developers use for development activities
Challenges and opportunities!
Tools
Challenges
Communities
Developers Content
Developer challenges
Media literacy skills Keeping up (information flood, new tools) Maintaining a state of flow
“If you have to go to a web browser there is a 10% chance you'll be distracted. I use the project "howdoi" to get answers from Stack Overflow on the command line so I can stay out of the browser and keep focus."
25
Content challenges
Trustworthy content Information fragmentation
“A lot of the answers and guidance I look for when developing code are scattered all over the internet, it would be nice if there was a place that I could get in touch with an expert developer to ask/discuss questions."
26
Community challenges
Barriers to entry When does social become anti-social? “Misinformation is easy to communicate behavior and propagate. People can be rude or obnoxious on social [media], distracting from a discussion. The asynchronous nature of social media interaction can often lead to missed information or incomplete contexts for understanding information."
27
Tool challenges
Channel confusion and lack of integration Finding the signal in the noise Vendor lock-in
“I worry that we are relying on many of these ‘free’ services, which in the end are not free, they simply have a different payment model (that appears to change)."
28
Tools
Opportunities
Communities
Developers Content
Opportunity: The emergence of the Social Programmer
Acceleration of learning, discovery and creativity for developers? "
Impact on productivity?"
Expanding career opportunities: impact on education?
30
Opportunity: Software Knowledge as Public Good
Mining knowledge from social media in software development
Impact on software quality?
31
Opportunity: Participatory development culture
Increasing the size of the crowd/community"
Discovering best not just next practices
32
Opportunity: Improve the social media ecosystem for developers
Social media channels for developers"
Channel integration – but need to know how! "
Specialized needs for the enterprise?
33
Implications for Researchers
Study social media using social media!
“Good to see a survey on this topic. It is wonderful to be part of a global developer movement and have the entire world of developers helping each other.” [Developer survey respondent]
34
Three trends…
The rise of the social programmer that actively participates in communities of practice
A rapid increase in the creation and diffusion "of peer produced and crowdsourced content
Accelerated formation of ecosystems around content, technology, media and developers
@margaretstorey Do you use Twitter to support your research? If yes, tell us how by using #twitter4se