James Howison What should scientific software learn from “the open source way”? CC Credit: XSEDE Communities Symposium.

Slides:



Advertisements
Similar presentations
Homework Assignment. Assignment One Ready for the next challenge. Great! Time to pick an affiliate product to promote. Go to ClickBank.com and go to the.
Advertisements

Customer Development Week 3.
The person with disabilities has NEVER worked 1-He has a clear and personal idea of what he wants to do 3-He has an idea of what he wants to do but mainly.
Trusted evidence. Informed decisions. Better health. Brand webinar We will start in a few minutes…
How to manage my references? Stop Searching, Start Discovering.
Implementing A Simple Storage Case Consider a simple case for distributed storage – I want to back up files from machine A on machine B Avoids many tricky.
G. Alonso, D. Kossmann Systems Group
Feature requests for Case Manager By Spar Nord Bank A/S IBM Insight 2014 Spar Nord Bank A/S1.
Blogs – what, why and how? A blog is a web-log It is a simple website that anyone can setup without any advanced computer know-how It’s the future: blogs,
Software to Manage EEP Vegetation Plot Data A design proposal Michael Lee January 31, 2011.
CEP Welcome September 1, Matthew J. Koehler September 1, 2005CEP Cognition and Technology Who’s Who?  Team up with someone you don’t.
From Extensibility to Evolvability Once upon a time, HTTP was simple – what happened?
Ostra: Leveraging trust to thwart unwanted communication A. Mislove, et al. Offense - Marcel Flores.
Opening a bank account.
June is an easy way to communicate. It costs nothing to send an , but it does require a connection to the Internet. You can.
By Laura Trawin.
Software Development Unit 6.
How to Establish a Blog. What is a Blog A blog is a collection of informational articles/ideas intended to update a viewer on new information associated.
This work is licensed under a Creative Commons 3.0 Attribution License Wikispaces for Teachers A Guide to Using Them in Your Classroom.
]. Website Must-Haves Know your audience Good design Clear navigation Clear messaging Web friendly content Good marketing strategy.
Software design and development Marcus Hunt. Application and limits of procedural programming Procedural programming is a powerful language, typically.
BSC Food Distribution 8181 NW 36 Street, Suite 14-D Doral, FL Phone: Fax:
I have attached a file to this by selecting the paperclip on the bottom of the page.
System Design Chapter 8. Objectives  Understand the verification and validation of the analysis models.  Understand the transition from analysis to.
Sudheesh Singanamalla. Editable and Free Every open source software is free to download and use for a lifetime. At the same time it gives the transparency.
What happens after graduation? Steve Cover & Doug Mulkey (or, how do I get a job?)
Every which way but forward [SMG] Confuse. Clutter. Clumsify.
This presentation will be all about s, etiquette and software. I will be going through each one of these individually and thoroughly step.
VS Anywhere. Visual Studio Industry Partner VS Anywhere NEXT STEPS Contact us at: Websitehttps://vsanywhere.com Blog- Facebook.
ADOPTING OPEN SOURCE INTEGRATED LIBRARY SYSTEMS Best Practices Presented by Vandana Singh, PhD Assistant Professor, School of Information Sciences University.
How to construct an interactive PowerPoint.  The first task is always content, content, content.  What are the lesson objectives?  Remember Miller’s.
Presented by Abirami Poonkundran.  Introduction  Current Work  Current Tools  Solution  Tesseract  Tesseract Usage Scenarios  Information Flow.
CCN Website Updates Keith D. Wing And Joanne Leonard 8 January 2014 CCN Website Updates Keith D. Wing And Joanne Leonard 8 January 2014 CCN Website Updates.
1 James Herbsleb Carnegie Mellon University The Architecture of Coordination The author gratefully acknowledge.
Hipikat: A Project Memory for Software Development The CISC 864 Analysis By Lionel Marks.
JFK-103B1W9 and JFK-103B3W9 This program is going to be used to learn about:  Decision Making Skills  Communication Skills  Team Building Skills and.
What’s new in the GroupWise 7. Client October, 2007.
Technical Paper Review Designing Usable Web Forms – Empirical Evaluation of Web Form Improvement Guidelines By Amit Kumar.
Downloading and Installing Autodesk Inventor Professional 2015 This is a 4 step process 1.Register with the Autodesk Student Community 2.Downloading the.
Making Python Pretty!. How to Use This Presentation… Download a copy of this presentation to your ‘Computing’ folder. Follow the code examples, and put.
Cover Letter YOUTH CENTRAL – Cover Letters & Templates
WORK EXPERIENCE. Why is work experience important ? It empowers and enables YOU to take responsibility for developing YOUR own experiences of the world.
Crisis Commander Mobile App. Crisis Commander Cloud based virtual Crisis Management tool Complete audit trail and full legal compliance Initiates securely.
Intermediate 2 Computing Unit 2 - Software Development.
Dataset citation Clickable link to Dataset in the archive Sarah Callaghan (NCAS-BADC) and the NERC Data Citation and Publication team
Version Control and SVN ECE 297. Why Do We Need Version Control?
Testing plan outline Adam Leko Hans Sherburne HCS Research Laboratory University of Florida.
A PC Wakes Up A STORY BY VICTOR NORMAN. Once upon a time…  a PC (we’ll call him “H”) is connected to a network and turned on. Aside: The network looks.
CSCI N201 Programming Concepts and Database 2 - STAIR Lingma Acheson Department of Computer and Information Science, IUPUI.
Today in CS161 Week #1 The Science of Computing What does it mean to write a program How is game programming different? Consider using Computer Graphics.
GROUP PresentsPresents. WEB CRAWLER A visualization of links in the World Wide Web Software Engineering C Semester Two Massey University - Palmerston.
From Al Scarfone. COLLABORATION A practice that is always performed by two or more people working together to receive a common goal, or achieve by agreeing.
Today… Modularity, or Writing Functions. Winter 2016CISC101 - Prof. McLeod1.
Other considerations in operant conditioning Cognitive Maps Latent Learning The Overjustification Effect and Intrinsic/Extrinsic Motivation Learned Helplessness.
Yahoo! Mail We gave Google some good press so we’ll use Yahoo! mail as our example for web s. If you don’t have an account Yahoo! will provide.
Lecture 5 Page 1 CS 111 Summer 2013 Bounded Buffers A higher level abstraction than shared domains or simple messages But not quite as high level as RPC.
Features to look for in a Work Management Software before choosing one.
This work is licensed under a Creative Commons 3.0 Attribution License Wikispaces for Teachers A Guide to Using Them in Your Classroom.
Working On-Line Module 4 People's Resource Center Barry Glicklich Last updated 27 March 2012Working On-Line (BG)1.
Tracking and Squashing Bugs
Trademarks electronic filing
PRESENTATION FOR 3rd DEGREE COMPULSORY SECONDARY EDUCATION STUDENTS
RFPMonkey.com External Review
Simple Steps to Resolve QuickBooks Error Code 6007 Avant-garde application, QuickBooks have garnered attention of small and mid- sized business all across.
Requirements Analysis
Order Processing and Requisition Accelerator
There can be only one! The future of Application Layer Protocols
The Service Portal What is the Self-Service Web Portal?
The Systems Life Cycle: Development and testing
Presentation transcript:

James Howison What should scientific software learn from “the open source way”? CC Credit: XSEDE Communities Symposium 12 June 2015 Work supported by the NSF , 04–14468, and

“Let’s do this the open source way” What does that actually mean? How and when is it relevant for grant- funded scientific software developers? What does it mean to work in teams? Can we achieve together without the downsides of

CC Credit:

CC Credit:

Goal: An image of FLOSS production CC Credit:

Discovery through Participant

Task: The Container

How it was

BibDesk

CC Credit:

Task: “Web Groups” June 2003 ( ) 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

What didn’t happen Image Credit: TreeGrid.com marketing

Task: “Web Groups” June 2003 ( ) 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 ( 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!

Discovery Findings 1.Individual work with personal motivations 2.Superposition of layers 3.Productive Deferral CC Credit:

But that’s just one case! (and what’s the point of theorizing about idiosyncratic

To the Archives! The evidence is here, somewhere. CC Credit:

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

Tasks were

Evidence for

Deferral E.g. Fire Task 9: –March 2003 a user requests that the away message only be sent when it changes. one of the developers assigns the request to himself, indicating acceptance of this as a desirable feature. –October 2003 Different developer re-assigns the feature to himself and says, This is possible now with the `once' option for how often to send away messages. We just need to reset the message count when changing state.... I think I have a fix for this... probably will check it in the next week or so. Fix checked

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

Two kinds of interdependence Technical dependency –My code uses yours, yours uses mine Motivational dependency –The “payoff” for my work comes only when you have finished your work It’s possible to have technical dependency without motivational

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

Imagine trying to plan this 1.Identify desired outcomes (design) 2.Design a task sequence that reaches them 3.Find people who are: –Motivated to do each task –Able to do each task –At just the right time Crippling search

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

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

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

Contingencies for Open superposition Attributes of object of work –Layerability –Low instantiation costs –Low distribution costs Irrevocable openness

Layers vs Steps CC Credit: / CC Credit:

Irrevocable openness Free and Open Source Licenses prevent this. CC Credit:

Time == Money CC Credit: / This guy hates to

Takeaways for science gateways Orientation to your community –Are they users or potential contributors? Avoiding downsides of “teamwork” –Can you keep tasks small and motivationally independent? Does use search for the next step? –How are ideas retained? –When/how are ideas revisited? How long can we

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