Open Source has been taught at RPI since Fall of 2007 (taught jointly by Dr. William Shroeder and Dr. Luis Ibanez) as a 4000 level class, and then by Mukkai Krishnamoorthy as a 2000 level class. We will continue this tradition by offering it as a 4000 level course.
In the spirit of Open Source, all of the course notes are available online in Github: https://github.com/rcos/CSCI-4470-OpenSource.
-
Licensed under: CC-BY-SA 4.0 https://creativecommons.org/licenses/by-sa/4.0/
-
Our Lecture Slides have greatly benefited from the previous classes taught by Dr. William Schroeder and Dr. Luis Ibanez at RPI,
-
And by Professor Mukkai Krishnamoorthy who succeeded them in teaching the course
We are extremely thankful to RedHat for their generous support. Thanks to Mr. Tom Callaway and Ms. Gina Likins for their valuable advice and suggestions.
Wesley Turner
Amos Eaton 207
https://rensselaer.webex.com/meet/turnew2
Office Hours (subject to change): Tuesday 3:35-5:05pm (in person), Thursday 10:00-11:30am in my WebEx (above), or by appointment
Mohammed Shahid Modi
- Email: [email protected]
- WebEx: https://rensselaer.webex.com/meet/modim2
- Office Hours: TBD
Kelsey Rook
- Email: [email protected]
- WebEx: https://rensselaer.webex.com/meet/rookk
- Office Hours: TBD
Kate Vandermolen
- Email: [email protected]
- WebEx: https://rensselaer.webex.com/meet/vandek5
- Office Hours: TBD
Ariana Lissak
- Email: [email protected]
- WebEx: https://rensselaer.webex.com/meet/lissaa
- Office Hours: TBD
The course will meet in Sage 5510 on Tuesdays and Fridays from 10:30pm - 12:35pm. Class discussions are an important part of the lecture and the labs so attendance is required. If you are temporarily unable to attend because of quarantine or other health issues, please contact Prof. Turner and make alternate arrangements.
This course will not use the RPI Blackboard LMS. Instead, we will use Submitty a course management tool developed as an opensource project under RCOS and the creative and technical auspices of Prof. Barbara Cutler. If you are registered in the course, you may access it at https://submitty.cs.rpi.edu/courses/u22/csci4470. If you do not have access, please email the TA or the Professor.
- Familiarize students with open source software development
- Have them be familiar with and eager to learn new technology stacks
- Able to Read and Understand Good Code.
- Patch an existing open source project.
- Work on a team collaborative project.
- Become aware of and conversant in team project and diversity issues.
- Prepare a new RCOS project for the following semester.
The goal of this course is to provide a strong foundation in open source software development in preparation for jobs in industry or for more advanced courses. After completing this course, the student will be able to:
- Articulate the importance of open-source tools in the technology sphere along with the importance of community in generating understanding of Open Source Software Tools and Community
- Effectively use and communicate the different varieties of Open Source Licensing.
- Effectively establish and use Testing and Version Control in an open source project.
- Demonstrate competence with Common Open Source Software Stacks and common tools.
- Foundations
- History of Open Source
- Licensing
- Software Management Tools
- Version Control
- Documentation Tools
- System Build
- Specification and Testing
- Collaborative Development
- Software Development Tools and Paradigms
- Scientific Computing
- Statistical Computing
- Databases
- Software Applications
- Web Development
- Cloud Computing Platform
- Mobile Applications
-
Topics of interest (Open Hardware, Tensor Flow, etc.)
-
Projects
- 2 Quizzes (10 points each) - 20%
- Open Source Project Analysis Paper - 10%
- 9 Labs (3.75 points each/drop lowest) - 30%
- Project - 40%
- Quiz 1 1st July
- Quiz 2 9th August
- 24th June
- 93 and above A
- 90 and above A-
- 87 and above B+
- 83 and above B
- 80 and above B-
- 77 and above C+
- 73 and above C
- 70 and above C-
- 67 and above D+
- 60 and above D
Please join our discord server OSS-Summer2022 at https://discord.gg/5WEv84aGDz.
These will be designated by the instructor in advance to the student and will deal with the following issues.
Late submissions receive a penalty of 10% with an additional 10% penalty (20% total) for up to a week late. Assignments are not generally accepted more than one week late.
Regular attendance and participation is expected.
Regular attendance and participation is expected.
A formal excused absence is required to make up a missed assignment or to turn in an assignment after the due date.
Student-teacher relationships are built on trust. For example, students must trust that teachers have made appropriate decisions about the structure and content of the courses they teach, and teachers must trust that the assignments that students turn in are their own. Acts that violate this trust undermine the educational process.
In this course, collaboration in your project group (3 or 4 students) is allowed, but should not be abused. Do not copy blindly. Labs and Quizzes should be solved and written by individuals alone. If anyone is caught cheating, severe measures will be taken such as lowering the final grade, and the event will be reported to the appropriate authorities in the campus.
The Rensselaer Handbook of Student Rights and Responsibilities and the Graduate Student Supplement (For 6000 level and above courses) define various forms of Academic Dishonesty and you should make yourself familiar with these. All assignments that are turned in for a grade must represent the student’s own work. In cases where help was received, or teamwork was allowed, a notation on the assignment should indicate your collaboration. Submission of any assignment that is in violation of this policy will result in (1) an academic (grade) penalty and (2) reporting to the Dean of Academic Affairs and either the Dean of Students (for Undergraduates) or the Dean of Graduate Education (for Graduate students).
In this course, the academic penalty for a first offense is loss of a letter grade. A second offense will result in failure of the course. If you have any questions concerning this policy before submitting an assignment, please ask for clarification.