open superposition and lessons for scientific software development

38
James Howison (with Kevin Crowston) Collaboration through Open Superposition: A theory of the open source way CC Credit: http://www.flickr.com/photos/ba Big Data in Biology Symposium U Texas at Austin 11 May 2016 Work supported by the NSF 03-41475, 04–14468, 05-27457 and 07– 08437 @jameshowison

Upload: james-howison

Post on 13-Feb-2017

179 views

Category:

Education


0 download

TRANSCRIPT

Page 1: Open Superposition and lessons for scientific software development

James Howison(with Kevin Crowston)

Collaboration through Open Superposition: A theory of the open

source way

CC Credit: http://www.flickr.com/photos/baggis/

Big Data in Biology SymposiumU Texas at Austin 11 May 2016Work supported by the NSF03-41475, 04–14468, 05-27457 and 07–08437

@jameshowison

Page 2: Open Superposition and lessons for scientific software development

“Let’s do this the open source way?”

Sounds great, right?Lots of people volunteering for the enjoyment of it, working

together, sharing stuff, meritocracy, contributing stuff, fighting the man, all without raising money or top-down

management.

Open innovation, open platforms, open hardware, open data, open government,

open NASA, citizen science …

@jameshowison

Page 3: Open Superposition and lessons for scientific software development

http://www.flickr.com/photos/gubatron/3102412751@jameshowison

Page 4: Open Superposition and lessons for scientific software development

CC Credit: http://www.flickr.com/photos/ejpphoto/

@jameshowison

Page 5: Open Superposition and lessons for scientific software development

CC

Cre

dit:

http

://w

ww

.flic

kr.c

om/p

hoto

s/ko

jihac

hisu

/

@jameshowison

Page 6: Open Superposition and lessons for scientific software development

A research arc

• Participant Observation – one case– participation and observation

• Replication– two cases chosen by replication logic– Study of project archives

• Candidate theory development– develop candidate theory and demonstrate it’s

usefulness

@jameshowison

Page 7: Open Superposition and lessons for scientific software development

Goal: An image of FLOSS production

CC Credit: http://flickr.com/photos/anthea/

@jameshowison

Page 8: Open Superposition and lessons for scientific software development

Discovery through Participant Observation

@jameshowison

Page 9: Open Superposition and lessons for scientific software development

Task: The Container Column

@jameshowison

Page 10: Open Superposition and lessons for scientific software development

How it was built

@jameshowison

Page 11: Open Superposition and lessons for scientific software development

BibDesk 2.0?

@jameshowison

Page 12: Open Superposition and lessons for scientific software development

CC Credit: http://www.flickr.com/photos/wsl-libdev/5140646741/

@jameshowison

Page 13: Open Superposition and lessons for scientific software development

Task: “Web Groups”

https://sourceforge.net/mailarchive/[email protected]

June 2003 (Email)

I really want to use this, but the conditions have never quite been right - either I was waiting for … RSS+RDF (now looks like it'll never happen) or … an XML bibliographic file format … (could happen now, but I ran out of free time).

@jameshowison

Page 14: Open Superposition and lessons for scientific software development

What didn’t happen

Image Credit:TreeGrid.com marketing materials

@jameshowison

Page 15: Open Superposition and lessons for scientific software development

Task: “Web Groups”

https://sourceforge.net/mailarchive/message.php?msg_id=DF0FB757-56BA-45D7-A1EA-262EB7A5B3DC@mac.comhttps://sourceforge.net/mailarchive/message.php?msg_name=7394DD78-A02E-11D7-AFC1-0003931E45D0%40mac.com

June 2003 (Email)

I really want to use this, but the conditions have never quite been right - either I was waiting for … RSS+RDF (now looks like it'll never happen) or … an XML bibliographic file format … (could happen now, but I ran out of free time).

Jan 2007 (Email with patch):

It was much easier than I expected it to be because the existing groups code (and search groups code) was very easy to extend. Kudos - I wouldn't have tried it if so much hadn't already been solved well.Thanks!

Page 16: Open Superposition and lessons for scientific software development

Discovery Findings

1. Individual work with personal motivations

2. Superposition of layers3. Productive Deferral

CC Credit: http://flickr.com/photos/jvk/@jameshowison

Page 17: Open Superposition and lessons for scientific software development

But that’s just one case!

(and what’s the point of theorizing about idiosyncratic situations?)

@jameshowison

Page 18: Open Superposition and lessons for scientific software development

To the Archives!The evidence is here, somewhere.

CC Credit: http://www.flickr.com/photos/hamadryades/

@jameshowison

Page 19: Open Superposition and lessons for scientific software development

Replication: Fire and Gaim

• Specific RQs:– What proportion of work was individual?– Any evidence of “productive deferral”?

• Fire and Gaim– Multi-protocol instant messaging clients– Community-based open source– Similar task and collaboration infrastructure to

BibDesk

@jameshowison

Page 20: Open Superposition and lessons for scientific software development

Illustrative Co-work

@jameshowison

Page 21: Open Superposition and lessons for scientific software development

Illustrative Individual Work

30 (of 106) tasks consisted of a single Action: Core Production@jameshowison

Page 22: Open Superposition and lessons for scientific software development

Tasks were individual

@jameshowison

Page 23: Open Superposition and lessons for scientific software development

Evidence for Deferral

@jameshowison

Page 24: Open Superposition and lessons for scientific software development

An image of FLOSS production:Open Superposition

• Work is done in Tasks that are– Individual– Short– Layered

• Complex work is often deferred– Until it is easier (doesn’t always happen!)

Other types of work build on this base

@jameshowison

Page 25: Open Superposition and lessons for scientific software development

To be explained

1. Why are these patterns of work observed?

2. How can complex software result from this way of working?

3. Under what socio-technical contingencies is this likely to be successful?

@jameshowison

Page 26: Open Superposition and lessons for scientific software development

Why these patterns of individual work and deferral?

• Fewest dependencies, lowest coordination challenges and costs

• Closest match to motivational situation of FLOSS participants.– Increases autonomy without eliminating

relatedness • Ke and Zhang (2010), Ryan and Deci (2000)

@jameshowison

Page 27: Open Superposition and lessons for scientific software development

Ok, but can this really work?

• Software development is highly complex, interdependent, work

(e.g., Herbsleb et al. 2001))• Can such simple steps really get the job

done?

@jameshowison

Page 28: Open Superposition and lessons for scientific software development

Imagine trying to plan this

1. Identify desired outcomes (design)2. Design a task sequence that reaches them3. Find people who are:

– Motivated to do each task– Able to do each task– At just the right time

Crippling search costs!

@jameshowison

Page 29: Open Superposition and lessons for scientific software development

Application-led search

• Openness and availability of application• Task identification through situated use

(e.g., Suchman 1987)

“Porches fill in by stages, not all at once, you know. ... it happens that way because [the family] can always

visualize the next stage based on what’s already there”

(Brand 1995, quoting an architect)

@jameshowison

Page 30: Open Superposition and lessons for scientific software development

But why does deferral make things easier?

• Layered tasks makes deferral more likely to be productive

• Small layers can compose in different ways. They provide option value.

(e.g., Baldwin and Clark 2001)

• Small layers are easier to understand, especially over time.

(e.g., Dabbish, 2011; Boudreau at al 2011)

@jameshowison

Page 31: Open Superposition and lessons for scientific software development

Contingencies for Open superposition

• Attributes of object of work– Layerability– Low instantiation costs– Low distribution costs

• Irrevocable openness• Time

@jameshowison

Page 32: Open Superposition and lessons for scientific software development

Layers vs Steps

CC Credit: http://www.flickr.com/photos/18378305@N00/742

6136724/

CC Credit: http://www.flickr.com/photos/jrnoded/2997160501/

@jameshowison

Page 33: Open Superposition and lessons for scientific software development

Irrevocable openness

Free and Open Source Licenses prevent this.

CC Credit: http://www.flickr.com/photos/bantam10/5637893667/

@jameshowison

Page 34: Open Superposition and lessons for scientific software development

Time == MoneyCC Credit: http://www.flickr.com/photos/opacity/1600562651/

This guy hates to wait@jameshowison

Page 35: Open Superposition and lessons for scientific software development

Takeaways for scientific software development

Page 36: Open Superposition and lessons for scientific software development

Howison, J., & Herbsleb, J. D. (2013). Incentives and Integration in Scientific Software Production. In Proceedings of the 2013 Conference on Computer Supported Cooperative Work (pp. 459–470). New York, NY, USA: ACM. http://doi.org/10.1145/2441776.2441828

Page 37: Open Superposition and lessons for scientific software development

Takeaways for science software• Orientation to community

– Are they users or potential contributors?• Be prepared to wait

– Easy to run ahead of potential contributors• Avoiding downsides of “teamwork”

– Can you keep tasks small and motivationally independent? No blocking.

• How to search for the next step?– How are ideas retained? When revisited?

@jameshowison

Page 38: Open Superposition and lessons for scientific software development

Open Superposition

Howison, J., & Crowston, K. (2014). Collaboration through open superposition: A theory of the open source way. MIS Quarterly, 38(1), 29–50.

@jameshowison