Summer 2013

INF2303: Special Topics
Understanding Open Source Software


Course Objectives

The course will explore the production of free / open source software (“F/OSS”) — that is, software that users are allowed to modify and redistribute without paying royalties. In the recent years such software has grown in prominence. Today it includes both popular end-user software such as Mozilla Firefox and Google Chrome, as well as back-end software that today dominates in many domains of IT infrastructure (e.g., the Apache web-server and the GNU/Linux operating system). Availability of such software presents both opportunities and challenges to today’s IT professionals. Is F/OSS really a “free lunch” or does it present hidden costs? Why do many practitioners insist that choosing royalty-free F/OSS products should not be about saving money on royalties? When does it make sense for an organization to adopt a F/OSS solution over a proprietary one? When would it make sense to develop a software solution in house and offer it to the world with a F/OSS license? To answer such questions it becomes important to understand what F/OSS is (and what is the difference between “free” and “open source”), and where it comes from. We would also need to understand who makes such software and why they do so. We will ask why individuals and organizations contribute time and money to F/OSS and how they coordinate their activities. We will also ask whether the open source software model can be applied to other goods, e.g., “open source textbooks” or “open source pharmaceuticals”? In addressing those questions we will draw on a range of social science theories, looking at F/OSS from economic, political and cultural sides. We will also ask questions about the technical infrastructure used by F/OSS projects.

Student Learning Objectives

The students will develop an understanding of free / open source software ecosystem, including its history and current practices. They will also learn to draw on their understanding of F/OSS to analyse the opportunities and challenges that such software presents in specific contexts faced by information professionals. Finally, they will learn how to extend their observations about free / open source software to other information products.

Relationship to Program-Level Master of Information Student Learning Outcomes

The course will help students understand and become conversant with an important set of information practices: production of free / open source software. It will also provide them with a foundation for analyzing peer production of other information products. (Outcome 1.)

Students will develop knowledge and values that will help them exercise leadership when it comes to making software choices that broader access to information services for all. (Outcome 2.)

The students’ work on the term paper will help them develop their research abilities and to apply course material to a specific domain of information studies. (Outcome 3.)

The students will gain knowledge of a range of social science theories relevant to understanding production of information goods. (Outcome 4.)

Student learning outcomes for the MI program: http://www.ischool.utoronto.ca/studies/learning-outcomes/

Course Structure

This course will be taught as a seminar. While the instructor will at times present material to complement the readings, much of the time will be spent discussing and analyzing the readings. Students are expected to take responsibility for their learning of the material through active engagement with the assigned readings, through participation in course discussion, and through their individual work on a research paper.

Deliverables and Evaluation

Grades will be based on the following components:

Contribution to Class Discussion — 15%

As the course will be taught in the form of a seminar, students will be graded for their contribution to the class discussion. Please be advised that contribution does not mean attendance. (Of course, you cannot contribute without being present.) Students who attend the class but remain silent will earn no credit. Nor, however, does it mean simply speaking a lot. Rather, students are expected to come to class prepared, actively listen to what is being said by others and then make contributions to the discussion that take advantage of their own understanding of the readings and of what has been said up to that point. Class discussion will follow a structure that will be described in a handout. Each student will be asked to serve as one of the “chairs” for one week’s discussion and as a “panelist” on several other ones. Students who have difficulty speaking in public should see the instructor early in the semester, so that we could discuss possible remedies.

Memos — 15%

For all classes other than the first and the last, the students will prepare “memos” on the readings assigned for that class. Each memo should be no longer than 1 page and should be formatted in accordance with this template: memo_template.pdf, memo_template.odt, memo_template.doc, memo_template.rft.

The purpose of the memos is to help you make better sense of the readings and to increase the quality of the in-class discussion by ensuring that all students arrive to class having done the readings and having spent some time thinking about them.

Each memo should consist of four sections.

The memos are due by email, by 8 am of the day of each class. (Please see below on the late policy for memos.) Please email your memo as a PDF attachment to all members of your team and the instructor. Please put “INF2303 memo for date class” for subject. (Subsitute the correct date of the class, e.g., “INF2303 memo for July 10 class.”) Students responsible for chairing each class will be tasked with reading and summarizing submitted memos in writing.

Term Paper and Presentation - 50%

A major component of the course is a term paper exploring a specific topic related to the content of the course.

There are three deliverables related to this term paper, including:

The proposal, the presentation, and the final paper will be graded together and will be jointly worth 50% of your grade.

It is recommended that students work on their papers in teams of two. However, they can opt to work individually or in groups of three.

Students can pick paper topics that best align with their professional interests, as long as there is a clear relationship to the topics discussed in the course and as long as the topic is discussed in appropriate depth. Here are some examples of appropriate topics:

The list above is meant to exemplify appropriate topics and is not exhaustive.

Due to the short duration of the course, students should start working on their papers very early, ideally not later than the second week of the course.

Paper Proposal

Prior to developing the paper, each team will prepare a paper proposal. The teams will share their paper proposals with the rest of the class to receive feedback from other students.

The main text of the proposal should be up to 2 pages long and should answer the following questions:

Your proposal should also include a 2 page annotated bibliography of the sources you intend to use. Each source should be accompanied by a brief description, stating what it is about and how you plan to use it.

Paper proposals will not receive individual grades, but will be graded together with the final paper.

Final Presentation

Each team will make a short (5-10 minutes) presentation about their research on the last day of class.

Final Term Paper

The final deliverable is a paper of 5,000–7,000 words, due at the end of the semester. The papers will be shared with other students and will be evaluated by the instructor according to the following criteria:

The final grade for the paper will also incorporate an assessment of your original proposal and the presentation.

Paper Proposal Reviews — 10%

Each student will receive three proposals from other teams and will then be asked to write a review of each proposal. The reviews should be constructive in their focus and aim to help the author of each proposal improve their paper. Each review should be 1–2 pages long and can include a bibliography if appropriate. (If you include a bibliography, do not count it towards the page limit.)

A Course “Patch” — 10%

Each student will be asked to submit a “patch” (modification) to the course. The “source files” for the course syllabus are available on Github at https://github.com/yuri/inf2303. The patches will be submitted via Github, which will include the actual modification and a brief summary. Additionally, a one-page justification should be submitted via email.

Readings and Resources

The course will rely on readings that fall roughly into two categories.

Availability of the Readings

Inforum:
The reading is a provided in the form of a photocopy, available at the Inforum. (This should be available after June 18.) Those are primarily readings that allow royalty-free redistribution.
Reserve:
The reading is a selection from a book and will be available on reserve at the library (typically Robarts). Use the provided link to find the call number and to see whether the book is currently checked out. Please make sure you read the right pages.
Online:
The reading is available electronically (either freely or through the library).

Many readings come from the following books, which are shown in the schedule with abbreviations:

“FSFS”: Richard Stallman (2002). Free Software, Free Society: Selected Essays of Richard Stallman. Edited by Joshua Gay. Boston, MA: GNU Press.
    Inforum: yes
    Reserve: http://go.utlib.ca/cat/4765433
    Online: http://bit.ly/fsoftfsoc

“Two Bits”: Chris Kelty (2008). Two Bits: The Cultural Significance of Free Software., Duke University Press.
    Inforum: yes
    Reservehttp://go.utlib.ca/cat/6466551
    Onlinehttp://twobits.net/

“Open Sources”: Chris DiBona, ed. (1999). Open Sources: Voices from the Open Source Revolution. Sebastopol, CA: O’Reilly.
    Inforum: yes
    Reserve: n.a.
    Online: http://bit.ly/osvoices

Schedule

Week 1

Monday, July 8, 2013
An Introduction

What is free software? What is open source software? (What is the difference?) Why do we care? (Who uses it anyway?) What do we know about those phenomena and what do we want to learn about them? How will we go about understanding free and open source software in this course? Bonus: A quick introduction to the history of computing.

Wednesday, July 10, 2013
Hackers

Free software is often associated with "hackers". Who are hackers?

Week 2

Monday, July 15, 2013
Intellectual Property: Theory and History

To properly contextualize free / open source software, we must first understand why software is protected as intellectual property in the first place. In this class we look at the history and theory behind intellectual propertly generally. What are “public goods”? (Specifically, what does it mean for something to be “nonrival” and “non-excludable”?) In what sense are ideas and software “public goods”? Why might it make sense to limit the use of information goods? What are some of the other ways of supporting production of such goods? What would be some of the alternatives to intelletual property?

Wednesday, July 17, 2013
Software as Intellectual Property

How did software get to be protected by intellectual property laws? And where did the idea of selling software as a “product” come from?

Week 3

Monday, July 22, 2013
The GNU Project

How did the free software movement arise in the 1980s? What is “copyleft”? In what sense is the free software movement a “movement”? How does it work? What is its ideology and why is it important? What is the role of non-profit foundations?

Wednesday, July 24, 2013
From Linux to Open Source

How did Linux start? How was it different from GNU? Was it really written “just for fun”? How did “free software” become “open source”?

Paper proposals due at the beginning of class.

Week 4

Monday, July 29, 2013
User Innovation Networks

Can production of free software be somehow more efficient?

Proposal reviews due at the beginning of class.

Wednesday, July 31, 2013
Infrastructure

But how do free / open source software projects actually get anything done? What tools do they use? And how do they manage material resources?

Week 5

Monday, August 5, 2013
No Class: Civic Holiday

Wednesday, August 7, 2013
Open Source and Open Source 2.0

Has open source gone corporate? If so, what are the implications?

Week 6

Monday, August 12, 2013
No Class: Yuri at ASA in New York

Wednesday, August 14, 2013
Adoption Case Studies

In this class we'll be looking at a few specific cases of FOSS adoption.

Week 7

Monday, August 19, 2013
Student Presentations

Students present their work. No readings.

An electronic submission of the paper is due through TurnItIn by 8 am on Monday, August 26.

An electronic submission of the “course patch” is due through TurnItIn by 8 am on Monday, September 2.

General Expectations and Procedures

The students are expected to come to class prepared and submit assignments strictly on time.

Late Assignments and Extensions

You are expected to complete assignments on time. Assignment not submitted by the exact time when their are due will be considered late. (E.g., “17:00” means “17:00”, not “17:05.”)

Late Policy for Memos

Late memos will recieve half of the credit if submitted before the beginning of class. Memos not submitted by the time the class begins will not be accepted at all. Students who have missed a memo should focus their efforts on memos for the next class. However, each student will be entitled to skipping one memo.

Late Policy for Other Deliverables

For all other assignments there will be a penalty of half a grade (e.g. from A to A–) for any assignment not submitted on time, with an an additional half-grade penalty deducted for any further 24 hours that the assignment is late. Work that is not handed in one week (168 hours) after it was due will not be accepted.

TurnItIn

Normally, students will be required to submit the term paper to TurnItIn for a review of textual similarity and detection of possible plagiarism. In doing so, students will allow their essays to be included as source documents in the Turnitin.com reference database, where they will be used solely for the purpose of detecting plagiarism. The terms that apply to the University’s use of the Turnitin.com service are described on the Turnitin.com web site.

Students who do not wish to use TurnItIn for submitting their work should approach the instructor to discuss alternative ways to establish the originality of the paper. This discussion needs to happen before the student begins working on the paper.

For information on how to use TurnItIn, please see this handout: turnitin_instructions.pdf.

Students with Special Needs or Health Considerations

All students are welcome in this course and we will make every effort to ensure a meaningful, respectful and positive learning experience for everyone. If there are special considerations that you require to help you successfully fulfill the requirements of the course, please see the instructor, the Faculty of Information Student Services, and / or contact the Accessibility Student Office as soon as possible so we can ensure you are able to successfully meet the learning objectives for this course.

Writing Resources

Please review the material you covered in Cite it Right, familiarize yourself with the How Not to Plagiarize site and UofT’s policy, and consult the Office of English Language and Writing Support as necessary.