class: center, middle # CSCI-UA 480.10: OSSD ## Open Source Software Development
## Course Logistics .author[ Instructor: Joanna Klukowska
] .license[ Unless noted otherwise all content is released under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/). ] --- # Software __Software means computer instructions or data__. Anything that can be stored electronically is software, in contrast to storage devices and display devices which are called hardware. [from Webopedia article, retrieved Jan. 16, 2018](https://www.webopedia.com/TERM/S/software.html) --- # Open Source * what does _open source_ mean to you? -- * [_What is Open Source_](https://youtu.be/7c0IrsDsNaw) by a few Mozzillians (2:51 min)
--- # This Course This course prepares students to become active participants in open source projects. Topics to be discussed (order will differ): * collaborative nature of free and open source projects, * community structure, * a brief history of free and open source development, * an in-depth look at different types of free and open source projects, * the study of a few tools that are essential in free and open source development, * licensing and intellectual property, * types of contributions (programming and non-programming), -- .large[.centered_80[ __The students are expected to contribute to existing open source projects.__ ]] --- # This Course The students: * mostly independent work (often in groups) of exploring and learning * regular class discussions (participation matters a LOT) * regular reading and writing assignments (to document what you are working on) * regular contributions (small and large, code and not)
The instructor: * sets topics to be discussed (suggestions are welcome) * coordinates the class discussion * creates assignments * coordinates assessment * will not be able to answer many of students' questions --- # Course Website * URL: https://cs.nyu.edu/~joannakl/ossd_s20/ This page contains the syllabus and daily summaries as well as loads of links to all other resources and services you will need for this class. -- * Github repository: https://github.com/joannakl/ossd_s20 Throughout this semester, you will be active contributors to the course website: reporting and fixing problems, suggesting content, etc. --- # Weekly blogs / journals - Each student has a public repository for the course related blog. - General blog template repository: https://github.com/nyu-ossd-s20/weekly - General blog template site: https://nyu-ossd-s20.github.io/weekly/ - Each week (by Sunday night) a new post should be added - answer assigned prompts for that week - reflect on reading assignments, class discussions, invited talks, activities, etc. - list all (if any) contributions --- # Slack ## course message board / discussion / reporting / logging - not an open source tool, but handy for communication - you should sign up for the class workspace at https://nyuossd.slack.com/signup (use your NYU email) - ask questions in the __course__ channel - respond to questions in a thread, so that it is easy to see which posts go together - you will be using other channels for various group work throughout the semester --- # Contributions - non-code contributions to - non-code projects - code projects - non-code contributions - small (fixing a typo or rewriting something for clarity) - larger (adding paragraphs, redesiging/restructuring articles/documentation) - large (creating an article, adding instructions / documentation) - code contributions to - non-code projects (for example a website) - code project