layout |
---|
default |
|| [{{ site.book_opt_7 }}]( {{ site.book_opt_7_link }}) {{ site.book_opt_7_edition }}
{{ site.book_opt_7_author }}
{{ site.book_opt_7_note }} |
|| [{{ site.book_opt_1 }}]( {{ site.book_opt_1_link }}) {{ site.book_opt_1_edition }}
{{ site.book_opt_1_author }}
{{ site.book_opt_1_note }} |
|| [{{ site.book_opt_5 }}]( {{ site.book_opt_5_link }}) {{ site.book_opt_5_edition }}
{{ site.book_opt_5_author }}
{{ site.book_opt_5_note }} |
|| [{{ site.book_opt_6 }}]( {{ site.book_opt_6_link }}) {{ site.book_opt_6_edition }}
{{ site.book_opt_6_author }}
{{ site.book_opt_6_note }} |
|| [{{ site.book_opt_2 }}]( {{ site.book_opt_2_link }}) {{ site.book_opt_2_edition }}
{{ site.book_opt_2_author }}
{{ site.book_opt_2_note }} |
|| [{{ site.book_opt_3 }}]( {{ site.book_opt_3_link }}) {{ site.book_opt_3_edition }}
{{ site.book_opt_3_author }}
{{ site.book_opt_3_note }} |
|| [{{ site.book_opt_4 }}]( {{ site.book_opt_4_link }}) {{ site.book_opt_4_edition }}
{{ site.book_opt_4_author }}
{{ site.book_opt_4_note }} |
-
OpenSource.com publishes stories about creating, adopting, and sharing open source solutions. It provides many resources for and about open source and the "open source way", as well as various other useful resources. The open source way is about applying the principles of open source software development beyond software
-
OpenHealthNews.com publishes news, information and resources related to open health
-
foundation.mozilla.org is the website of the Mozilla Foundation, a non-profit organization that is the sole shareholder in the Mozilla Corporation, the maker of Firefox and other open source tools. Mozilla is involved in many initiatives to keep the Internet free and open.
-
linuxfoundation.org is the website of the Linux Foundation, which is "dedicated to building sustainable ecosystems around open source projects to accelerate technology development and industry adoption."
-
code.gov is the U.S. Government's Code.gov portal to the open source projects maintained by the federal government. As they put it, it "leverages the power of code sharing and collaboration to help the U.S. Government cut down on duplicative software development and save millions of taxpayer dollars for the American people."
-
up-for-grabs.net is a platform that lists open source projects specifically tagging issues as "good first issues". It can be very helpful for finding good personal code contributions.
-
goodfirstissue.dev is a repository that picks out good introductory issues from popular open source projects with low bar to entry.
- official: passing CSCI.UA.0201 with a grade of C or better
- interest in learning about open source culture, history, licensing and development models
- willingness to share and collaborate
- willingness to participate in class discussions (you cannot go through this class by sitting quietly in a corner and never voicing any opinions)
Your grade will be based on:
- preparedness / attendance / engagement: 10%
- blogs / reflective writing: 20%
- activities / exercises / homework: 10%
- individual contributions to open source projects: 20%
- group project (individual's contributions to the group project): 30%
- in-class assessments: 10%
Here are the details of how each category is going to be assessed.
Grades will be determined using the following scale:
A 95-100
A- 90-95
B+ 87-90
B 83-87
B- 80-83
C+ 76-80
C 72-76
D 65-72
F less than 65
The grade of Incomplete is reserved for students who, for legitimate and documented reason, miss the final exam. The grade of Incomplete will not be given to student who started falling behind in class. Those students should withdraw from the class or switch to Pass/Fail option.
Topics Covered (exact list of topics and their order subject to change, for detailed/current schedule, see the Daily tab of this page. )
- Context, History, and Overview
- Principles of open source
- The Open Source Definition and the Free Software Definition and their ramifications
- History and background of open source software
- Open source culture and community
- Open-ness in general: Open source software and hardware, open data, open organizations (government, education, etc.)
- Humanitarian open source software
- Evaluating and Assessing Projects and Communities
- Measures of open source projects and communities: maturity, level of activity, friendliness, welcomeness and codes of conduct, size of code base
- Understanding and interpreting project metadata
- Evaluating the suitability of a project for the purpose of contributing to it
- Studies of selected projects
- The Business of Open Source
- Business models: how money is made from open source software
- The role of open source software in the software industry
- Careers in open source
- Contributing to Projects
- Types of contributions to open source projects (not only code)
- Ways of getting involved in projects
- Early non-coding contributions:
- Contributing to OpenStreetMap
- Contributing to Wikipedia
- Project guidelines: How to Contribute documents
- Behavior of the community: Codes of Conduct
- Tools and Technology
- Programming tools and technology
- Document preparation
- Markdown languages
- Documentation tools
- Collaborative software engineering tools
- Version control systems (Git)
- Issue tracking
- Software engineering tools for distributed collaboration
- Communication tools (e.g., blogs, Slack, IRC)
- Remote, distributed version control platforms (e.g., GitHub, GitLab)
- Online, web-based issue trackers: Bugzilla, GitHub's issue tracker, others
- Project Selection/Assignment
- Getting involved in the community
- Setting up project development environment
- Creating issues and identifying issues on which to work
- Resolving issues and submitting pull requests
- Intellectual Property Rights and Licensing
- Intellectual property
- Copyrights, patents, and trademarks
- Types of software and non-software licenses
- Interpreting and choosing licenses
- Team and Individual Reports
I follow the department's academic integrity rules.
The nature of open source is based on collaborative work. But that work is still performed by individuals. Your name should not be associated with a contribution that is not your own or that you have not put significant amount of work into.
-
Check the school email address on a regular basis. You can simply forward its content to another email account that you use regularly.
-
Use your school's email account to send emails to professors, instructors, TA's, graders, administrators, etc. OR make sure that your email address contains your true name, not "[email protected]", "[email protected]" or some other cool alias.
-
Start your email with proper salutations! Use the correct titles (Professor, Dr., etc.) and spell first and last names correctly. If you are on the first name basis with your instructors, use their names, not "Hey". For example: "Dear Professor Drummer" or "Dear Robert", not "Hey Bob".
-
Sign your name under the body of your email, otherwise you expect people to read emails from anonymous.
-
Do not write everything in upper-case letters. Do not write everything in lower-case letters.
-
Make sure you included everything you wanted before hitting send. Don't send three emails one after another because you forgot something in the first one.
-
Proofread the text in your email before sending it. Most of the email clients check for typos, but they cannot tell if your email makes much sense. Read it, before you send it.