Official, updated version of syllabus always online at:

https://jameshowison.github.io/peer_production_course/pp_syllabus.html

Course INF 385T Peer Production (Open Source Software, Wikipedia, and Beyond)
Professor James Howison
Meeting Time Thursdays 9-11:45
Location Zoom
Semester Spring 2021
Unique No.  28405
Office Hours Definitely, by appointment (please email first, then can meet via Zoom
Contact Email

Objectives and Assignments

This course explores “peer production” which is a name for the open collaborations that produce things like open source software and Wikipedia. Perhaps not coincidentally the Wikipedia page on Peer Production is quite useful:

[A] way of producing goods and services that relies on self-organizing communities of individuals. In such communities, the labor of a large number of people is coordinated towards a shared outcome.

As we learn about peer production we’ll learn to distinguish it from different kinds of online collaborations, such as crowdsourcing, citizen science, question and answer sites, and mere sharing of code. Near synonyms for the way of working taught in this course are: “The open source way”, “Open collaboration”, “Open mass production”.

This is a course is about a sociotechnical phenomenon and it takes a sociotechnical approach. In practice this means that we’ll be learning both conceptual insight and practical skills. The course weaves together learning how to use key technologies of collaboration (e.g., git, github, travisCI, markdown) at the same time that we learn social and organizational theory about peer production (e.g., the role of copyright licenses, motivations of participants, governance models, coordination theory, models of collaboration risk, cultures of collaboration).

There are no pre-requistes for this course. While we will be discussing software development students will not be required to program. We will use the command line as we learn to use git and github everything will be covered in class. I try to build a set of analogies for git and github, going beyond teaching the commands to give ways to think about git.

Students will need access to a computer for classes, any version of Windows, Mac, or Linux will do. Students facing difficulties with their IT should contact the iSchool help desk (via ) who can refer on to other resources as available.

Learning Objectives

Students will be able to:

  • Conceptually distinguish peer production from other organizational forms or phenomena, such as corporations, crowdsourcing, open access publishing, and communities of practice.
  • Reason about how, why, and when peer production works (and when it does not!)
  • Engage critically with published research and popular discourse about peer production

Practically students will be able to:

  • Install and use git to manage versions in their own work
  • Participate in github hosted peer production (making and receiving pull requests)
  • Create and publish documents in markdown and wikitext format
  • Ask technical questions that people want to answer
  • Participate in a peer production project of their choice

Assessments

Assignment Percentage of Course Grade Due Date
Class Participation (discussion and activites) 25% Throughout course
Technical challenges 25% Weekly from Content Class 1 through Content Class 6
PP Participation Project: community identification 10% Prior to Content Class 4
Peer production adaptation paper 20% Start of Spring Break
PP Participation Project: experience report 10% Prior to Presentations
PP Participation Project: presentation 10% Presentations

There is no final exam for this course.

Grading will follow Texas Information School recommendations (including A, A-, B+, and so on).

Participation in class discussion and activities

Students are expected to attend class and to participate in discussion and activities. Students should email the professor prior to class if they cannot make it. Material throughout the course builds on earlier material (both technical and conceptual). If you cannot make class you should refer to the online materials first and then consult with your classmates. Office hours are not for personal replays of teaching, nor can they compensate for not participating in discussion.

Hints on participation:

  • Useful participation can come from asking questions if you don’t understand the point someone is making. If you have questions, very likely others do to.
  • You can also summarize discussion which helps everyone by giving them something to test their understanding of the discussion.
  • You can challenge or disagree with people, sometimes that can be introducing a counter-example or questioning whether evidence really means what the speaker originally thought.
  • I really welcome examples from your own experience. For example if there is an organization, movement, or line of thought (modern/traditional) in your culture that relates to peer production, I would love that to be part of the discussion.

Technical Challenges

The course will have assignments based on the technical topics we are learning, including use of the DataCamp course (see below).

Peer production adaptation paper

For this assignment students will write a 2,000 word scholarly essay describing and analyzing efforts to adapt peer production outside of software development and wikipedia. Examples could include open hardware, open governance, open culture, and everyone is encouraged to find a project relevant to their own interests. You are looking for ways of working inspired by peer production. The paper should draw on the conceptual literature to compare and contrast the challenge faced by these adaptation efforts to what we’ve learned about “the open source way”. Students will conduct at least one interview with participants (or former participants if the effort is no longer continuing). The paper will also describe the collaboration infrastructure used and compare it to the technologies we have learned in class).

The paper will be authored in Plain Text or Markdown and submitted via a pull request to the class github. Include your name in the filename and at the top of the document, and include a note at the top of the file telling me which formal citation approach you are using (e.g., APA, MLA, etc). Students are cautioned that as a scholarly paper proper citation and use of sources is required otherwise students will face academic misconduct proceedings. See “Academic Integrity” presentation if at all unsure.

Peer Production Participation Project

Students will identify and participate in an active peer production community of their choosing. The activity does not have to be software development and does not have to use git or github. For example, it could be reading and contributing a chapter of a book to LibriVox or working with a WikiProject. If you are already involved in a peer production project you may use that, but most will be entering afresh. All components should reference the insight readings that we do througout the course.

There are three graded components, each to be submitted via a pull request.

  1. Identifying and describing a peer production community. ~500 words. Authored in plain text or markdown (ensure file is encoded with Unicode UTF-8 encoding and Unix/LF-only line endings). This paper should clearly identify the community and argue for it being a peer production community. The paper should describe how the student thinks the peer production community works and their expectations about participation (including process and expectations of how you expect to feel during participation). Submit directly to Canvas assignment. Include your name in the filename and at the top of the document, and include a note at the top of the file telling me which formal citation approach you are using (e.g., APA, MLA, etc).

  2. Participating and describing that participation in an experience report of ~500-1000 words, authored in RMarkdown, using the citation features. Students should describe their experience in the project. At a minimum the paper should desribe the work done, how it was contributed, as well as whether and how the work was reviewed. Students should compare their experience with their expectations described in the first paper and use at least two references from our conceptual literature to reflect on their experience. Create a folder in assignment_submission/experience_report/your_name and all files in that folder. Submit via a pull request from a branch created just for this submission (i.e., not master), and post that URL to the Canvas assignment, ensure this is a separate PR from your slide submission.

  3. Creating and giving a presentation on their participation. Presentations are limited to 5 minutes, this should be approx 4-6 slides long and be authored using Markdown that produces slides. Presentations will occur in our final class meeting. Submit via a pull request from a branch created just for this submission (ie not master), and post that URL to the Canvas assignment.

Materials

There are no required texts for this course and no materials to purchase.

Readings, tutorials, and will be provided via pages linked from the class calendar below.

I have enrolled the class in DataCamp, giving students free access to the DataCamp courses (including their premium courses). In particular we will be using their interactive course on git during classes in the first half of the course. I encourage students to explore their other course options during the semester.

Course Outline

Course Schedule

Table below shows classes and topics planned. Each class has both an insight (aka theory, conceptual) and a skills (aka tech, practical) component. These will become links to materials for the class.

class_day class_name insight_topic skill_topic tech_commands
Thu Jan 21 Introductory activity and Syllabus Review none none none
Thu Jan 28 Content class 1 Peer production vs other organizational forms Tech setup workshop terminal, command line, git install, github account
Thu Feb 04 Content class 2 Peer production case studies Files. diffs, versions git diff, add, commit (locally)
Thu Feb 11 Content class 3 Licenses Commits, blobs, and tree git diff continued HEAD and HEAD~1
Thu Feb 18 Content class 4 Motivations Rewinding work revert, other undos, checking out old versions, rewriting history
Thu Feb 25 Content class 5 Coordination Branching git checkout, merge. See Local Branching
Thu Mar 04 Content class 6 Governance Sharing and conflicts github fork, git clone, push, pull request, pull upstream, merge, conflicts, mark resolved, collaboration workflows
Thu Mar 11 Content class 7 Agile and Test Driven Development Testing and Continuous Integration Test suites, Travis CI integration, github bots
Thu Mar 18 No meeting: Spring Break none none none
Thu Mar 25 Content class 8 Knowledge Sharing Release management Git exercises and github releases, git tag
Thu Apr 01 Content class 9 Bias and lack of diversity Documentation and Q&A github flavored markdown
Thu Apr 08 Content class 10 Peer production in Wikipedia Wikipedia Editing wiki syntax, referencing
Thu Apr 15 Content class 11 Peer production in Science Executable Papers rmarkdown, knitr, rstudio
Thu Apr 22 Content class 12 none Rewinding Git and additional exercises More Git exercises: git revert, rebase, cherry-pick. Also see Commits are Snapshots not diffs
Thu Apr 29 Presentations none none none
Thu May 06 NA none none none

Skills Readings

Files. diffs, versions
DataCamp Git Chapter 1 - Basic Workflow link
Commits, blobs, and tree
DataCamp Git Chapter 2 - Repositories link
Only the very first lesson of “Learning Git Branching” site (useful visualizations of trees) link
Rewinding work
Useful Blog on undo in git (keep for reference) link
DataCamp Git Chapter 3 - Undo link
Branching
DataCamp Git Chapter 4 - Branches link
Sharing and conflicts
DataCamp Git Chapter 5 - Collaborating link
Atlassian materials on git workflows (esp. forking workflow) link
Testing and Continuous Integration
TravisCI For Beginners link
TravisCI Getting Started link
Release management
Github Release Announcement link
Github Help on Releases link
Documentation and Q&A
Github Markdown link
Commonmark Markdown Tutorial link
Citations and references in Markdown link
Wikipedia Editing
Wikipedia Student Tutorial link
Executable Papers
Datacamp Rmarkdown - All 2 chapters link

Insight Readings

Often I can link directly to websites or PDFs, but sometimes I will provide links to articles in journals etc. You must be able to get the article through the library, generally speaking using the web VPN is the most convenient approach. Another option that can sometimes work is UnPaywall which works to find an open access article version when looking at a publisher’s page for the article.

Peer production vs other organizational forms
Benkler, Peer Production and Cooperation. link
Levine, S. S., & Prietula, M. J. (2013). Open Collaboration for Innovation: Principles and Performance. Organization Science, 25(5), 1414–1433. link
Eric Raymond. The Cathdral and the Bazaar link
Richard Millington. Types of online communities. link
Don Tapscott. Wikinomics. Chpt 3: “Peer Pioneers” (p. 77) link
Peer production case studies
Section “Discovery: Participation Observation” in Howison, J., & Crowston, K. (2014). Collaboration through open superposition: A theory of the open source way. MIS Quarterly, 38(1), 29–50. link
Chapter “Coordinating Collaboration” of Kelty, C. M. (2008). Two Bits: The Cultural Significance of Free Software. Durham: Duke University Press Books. link
Giving it Away: How Red Hat Software Stumbled Across a New Economic Model and Helped Improve an Industry. Robert Young (Founder of RedHat software) link
Freeing the Source: The Story of Mozilla (Jim Hamerly and Tom Paquin with Susan Walton) link
Geiger, R. S., & Ribes, D. (2010). The Work of Sustaining Order in Wikipedia: The Banning of a Vandal. In Proceedings of the 2010 ACM Conference on Computer Supported Cooperative Work (pp. 117–126). New York, NY, USA: ACM. link
Licenses
GNU General Public License v 3.0 link
Chapter “Writing Copyright Licenses” of Kelty, C. M. (2008). Two Bits: The Cultural Significance of Free Software. Durham: Duke University Press Books. link
The GNU Project link
Creative Commons v4.0 license BY-SA (read others if you have time) link
More background about the Cisco case, FSF blog link
FSF Settles Suit Against Cisco link
Black Duck Software: Open Source License Compliance link
The Legal Side of Open Source link
Broadening node.js contributions (Contributor Agreement) link
Amazon: NOT OK - why we had to change Elastic licensing. (2021, January 19). Elastic Blog. link
Cracks are showing in Enterprise Open Source’s foundations link
Motivations
Nov, O. (2007). What motivates Wikipedians? Communications of the ACM, 50(11), ACM New York, NY, USA. link
Introducing: Funds for Open Source link
Ryan, R. M., & Deci, E. L. (2000). Intrinsic and Extrinsic Motivations: Classic Definitions and New Directions. Contemporary Educational Psychology, 25(1), 54–67. link
Section on Motivations in: Crowston, K., Wei, K., Howison, J., & Wiggins, A. (2012). Free (Libre) Open Source Software Development: What We Know and What We Do Not Know. ACM Computing Surveys, 44(2), Article 7. link
Crowston, K., & Fagnot, I. (2018). Stages of motivation for contributing user-generated content: A theory and empirical test. International Journal of Human-Computer Studies, 109, 89–101. link
Coordination
Malone, T. W., & Crowston, K. (1994). The interdisciplinary theory of coordination. ACM Computing Surveys, 26(1), 87–119. link
Expectancy Theory (Wikipedia) link
Expectancy Theory (useful figure) link
Rest of Howison, J., & Crowston, K. (2014). Collaboration through open superposition: A theory of the open source way. MIS Quarterly, 38(1), 29–50. link
Slides for Open Superposition presentation link
Crowston, K., Saltz, J. S., Rezgui, A., Hegde, Y., & You, S. (2019). Socio-technical Affordances for Stigmergic Coordination Implemented in MIDST, a Tool for Data-Science Teams. Proceedings of the ACM on Human-Computer Interaction, 3(CSCW), 1–25. link
Lindberg, A., Berente, N., Gaskin, J., & Lyytinen, K. (2016). Coordinating Interdependencies in Online Communities: A Study of an Open Source Software Project. Information Systems Research, 27(4), 751–772. link
Governance
OSS Watch Governance Models link
Shah, S. K. (2006). Motivation, governance, and the viability of hybrid forms in open source software development. Management Science, 52(7), 1000–1014. link
Chapter 4 “Social and Political Infrastructure” from Fogel, Karl (2018) “Producing OSS: How to Run a Successful Free Software Project” link
Chapter 8 “Managing Participants” from from Fogel, Karl (2018) “Producing OSS: How to Run a Successful Free Software Project” link
Optional (except for Doctoral and aspiring doctoral students) Shaikh, M., & Henfridsson, O. (2017). Governing open source software through coordination processes. Information and Organization, 27(2), 116–135. link
Agile and Test Driven Development
Giddings, R. V. (1984). Accommodating Uncertainty in Software Design. Commun. ACM, 27(5), 428–434. link
Wikpedia on Continuous Integration link
Vasilescu, B., Yu, Y., Wang, H., Devanbu, P., & Filkov, V. (2015). Quality and Productivity Outcomes Relating to Continuous Integration in GitHub. In Proceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering (pp. 805–816). New York, NY, USA: ACM. link
Knowledge Sharing
Raymond, E. S., & Moen, R. (2001). How To Ask Questions The Smart Way. link
Lakhani, K., & von Hippel, E. (2003). How open source software works: “free” user-to-user assistance. Research Policy, 32(6), 923–943. link
Bias and lack of diversity
Albusays, K., Bjorn, P., Dabbish, L., Ford, D., Murphy-Hill, E., Serebrenik, A., & Storey, M.-A. (2021). The Diversity Crisis in Software Development. IEEE Software, 38(2), 19–25. link
Antin, J., Yee, R., Cheshire, C., & Nov, O. (2011). Gender Differences in Wikipedia Editing. In Proceedings of the 7th International Symposium on Wikis and Open Collaboration (pp. 11–14). New York, NY, USA: ACM. link
Hecht, B., & Gergle, D. (2010). The Tower of Babel Meets Web 2.0: User-generated Content and Its Applications in a Multilingual Context. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems (pp. 291–300). New York, NY, USA: ACM. https://doi.org/10.1145/1753326.1753370 link
Nearly All of Wikipedia Is Written By Just 1 Percent of Its Editors link
Wikipedia page on gender bias in Wikipedia (so meta) link
Inside Wikipedia’s Attempt to Use Artificial Intelligence to Combat Harassment link
A Code of Conduct for Open Source Projects (click through to markdown version) link
Peer production in Wikipedia
Kittur, A., & Kraut, R. E. (2008). Harnessing the Wisdom of Crowds in Wikipedia: Quality Through Coordination. In Proceedings of the ACM Conference on Computer-Supported Cooperative Work (CSCW 2008) (pp. 37–46). San Diego, CA. link
Butler, B., Joyce, E., & Pike, J. (2008). Don’t Look Now, but We’Ve Created a Bureaucracy: The Nature and Roles of Policies and Rules in Wikipedia. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems (pp. 1101–1110). New York, NY, USA: ACM. link
Baker, M. J., Détienne, F., & Barcellini, F. (2017). Argumentation and Conflict Management in Online Epistemic Communities: A Narrative Approach to Wikipedia Debates. In Interpersonal Argumentation in Educational and Professional Contexts (pp. 141–157). Springer, Cham. link
Should CC-Licensed Content be Used to Train AI? It Depends. (2021, March 4). Creative Commons. link
Peer production in Science
Stodden, V. (2010). The Scientific Method in Practice: Reproducibility in the Computational Sciences (SSRN Scholarly Paper No. ID 1550193). Rochester, NY: Social Science Research Network. link
Ince, D. C., Hatton, L., & Graham-Cumming, J. (2012). The case for open computer programs. Nature, 482(7386), 485–488. link
Prlić, A., & Procter, J. B. (2012). Ten Simple Rules for the Open Development of Scientific Software. PLOS Comput Biol, 8(12), e1002802. link
Gil Yolanda, David Cédric H., Demir Ibrahim, Essawy Bakinam T., Fulweiler Robinson W., Goodall Jonathan L., … Yu Xuan. (2016). Toward the Geoscience Paper of the Future: Best practices for documenting and sharing research from data to software to provenance. Earth and Space Science, 3(10), 388–415. link
Howison, J., & Herbsleb, J. D. (2013). Incentives and integration in scientific software production. In Proceedings of the ACM Conference on Computer Supported Cooperative Work (pp. 459–470). San Antonio, TX. link
Jupyter, Mathematica, and the Future of the Research Paper (Paul Romer, famous economist) link

Policies

Class Recordings

Class Recordings: Class recordings are reserved only for students in this class for educational purposes and are protected under FERPA. The recordings should not be shared outside the class in any form. Violation of this restriction by a student could lead to Student Misconduct proceedings. Guidance on public access to class recordings can be found here.

Academic Integrity

Each student in the course is expected to abide by the University of Texas Honor Code: “As a student of The University of Texas at Austin, I shall abide by the core values of the University and uphold academic integrity.” Plagiarism is taken very seriously at UT. Therefore, if you use words or ideas that are not your own (or that you have used in previous class), you must cite your sources. Otherwise you will be guilty of plagiarism and subject to academic disciplinary action, including failure of the course. In particular, students are reminded that proper citation requires mentioning sources when you use them, not just in a general list of references at the end of a document. You are responsible for understanding UT’s Academic Honesty and the University Honor Code which can be found at the following web address: http://deanofstudents.utexas.edu/sjs/acint_student.php

Student rights and responsibilities

  • You have a right to a learning environment that supports mental and physical wellness.
  • You have a right to respect.
  • You have a right to be assessed and graded fairly.
  • You have a right to freedom of opinion and expression.
  • You have a right to privacy and confidentiality.
  • You have a right to meaningful and equal participation, and to self-organize groups to improve your learning environment.
  • You have a right to learn in an environment that is welcoming to all people. No student shall be isolated, excluded or diminished in any way.

With these rights come responsibilities:

  • You are responsible for taking care of yourself, managing your time, and communicating with the teaching team and with others if things start to feel out of control or overwhelming.
  • You are responsible for acting in a way that is worthy of respect and always respectful of others.
  • Your experience with this course is directly related to the quality of the energy that you bring to it, and your energy shapes the quality of your peers’ experiences.
  • You are responsible for creating an inclusive environment and for speaking up when someone is excluded. In particular, you are responsible for ensuring that your participation does not exclude the participation of others. Office hours are available for in-depth further discussion of advanced topics or other interests that pursuing in depth during class would exclude others.
  • You are responsible for holding yourself accountable to these standards, holding each other to these standards, and holding the teaching team accountable as well.

Personal Pronoun Preference

Professional courtesy and sensitivity are especially important with respect to individuals and topics dealing with differences of race, culture, religion, politics, sexual orientation, gender, gender variance, and nationalities. Class rosters are provided to the instructor with the student’s legal name. I will gladly honor your request to address you by an alternate name or gender pronoun. Please advise me of this preference early in the semester so that I may make appropriate changes to my records.

Drop Policy

If you want to drop a class after the 12th class day, you’ll need to execute a Q drop before the Q-drop deadline, which typically occurs near the middle of the semester. Under Texas law, you are only allowed six Q drops while you are in college at any public Texas institution. For more information, see: http://www.utexas.edu/ugs/csacc/academic/adddrop/qdrop

International students must meet with the international office before dropping a class that would put them below full-time status. Although it is worth noting that there are legitimate reasons that allow International students to be below full-time status, so if you think you are failing a course (or just performing below your expectations) don’t make assumptions either way, speak with the international office to discover your options.

University Resources for Students

Your success in this class is important to me. We will all need accommodations at different times because we all learn differently. If there are aspects of this course that prevent you from learning or exclude you, please let me know as soon as possible. Together we’ll develop strategies to meet both your needs and the requirements of the course. There are also a range of resources on campus, detailed below.

Services for Students with Disabilities

This class respects and welcomes students of all backgrounds, identities, and abilities. Accomodations are a normal part of academic life. If there are circumstances that make our learning environment and activities difficult, if you have medical information that you need to share with me, or if you need specific arrangements in case the building needs to be evacuated, please let me know. I am committed to creating an effective learning environment for all students, but I can only do so if you discuss your needs with me as early as possible. I promise to maintain the confidentiality of these discussions. If appropriate, also contact Services for Students with Disabilities, 512-471-6259 (voice) or 1-866-329- 3986 (video phone). http://ddce.utexas.edu/disability/about/

Counseling and Mental Health Center

All of us benefit from support during times of struggle. You are not alone. There are many helpful resources available on campus and an important part of the college experience is learning how to ask for help. Asking for support sooner rather than later is often helpful.

If you or anyone you know experiences any academic stress, difficult life events, or feelings like anxiety or depression, we strongly encourage you to seek support. http://www.cmhc.utexas.edu/individualcounseling.html

The Sanger Learning Center

All students, including graduate students, are welcome to take advantage of Sanger Center’s classes and workshops, private learning specialist appointments, peer academic coaching, and tutoring for more than 70 courses in 15 different subject areas. For more information, please visit https://ugs.utexas.edu/slc/grad or call 512-471-3614 (JES A332).

Important Safety Information

If you have concerns about the safety or behavior of fellow students, TAs or Professors, call BCAL (the Behavior Concerns Advice Line): 512-232-5050. Your call can be anonymous. If something doesn’t feel right—it probably isn’t. Trust your instincts and share your concerns.

The following recommendations regarding emergency evacuation from the Office of Campus Safety and Security, 512-471-5767, http://www.utexas.edu/safety/

Occupants of buildings on The University of Texas at Austin campus are required to evacuate buildings when a fire alarm is activated. Alarm activation or announcement requires exiting and assembling outside.

  • Familiarize yourself with all exit doors of each classroom and building you may occupy. Remember that the nearest exit door may not be the one you used when entering the building.
  • Students requiring assistance in evacuation shall inform their instructor in writing during the first week of class.
  • In the event of an evacuation, follow the instruction of faculty or class instructors. Do not re-enter a building unless given instructions by the following: Austin Fire Department, The University of Texas at Austin Police Department, or Fire Prevention Services office.
  • Link to information regarding emergency evacuation routes and emergency procedures can be found at: http://www.utexas.edu/emergency