Course Syllabus
NOTE: Some links in this syllabus page may only be accessible to currently enrolled students.
Instructor Introduction
Meet the instructor this term, Dr. Maher Elshakankiri
Meet the instructor this term, Doshna Umma Reddy
Full Syllabus
Download the full CS 325 Syllabus
Introduce Yourself!
Hop on over to our first discussion and introduce yourself!
Communication Policy
For all class-wide questions, we encourage you to first post on Ed Discussions if you can't make to a help session. Only questions of a personal nature or related to your own grade should be emailed to a TA or Instructor.
If you are hesitant to ask a question on Ed Discussions, you can always post anonymously and no one including the Instructors will know who posted it :) Remember, there are no stupid questions!
When you email your TA or the Instructors, you should expect a response within 48 hours during business days (our response time is usually much less than that).
Please put the prefix [CS325] in the subject when you send emails to us so we can identify your emails quickly. Details of Teams & Ed Discussions is provided under the Tools Tab of this page.
Contact Information & Help Sessions Hours
Instructors:
- Maher Elshakankiri (Instructor): maher.elshakankiri@oregonstate.edu
- Doshna Umma Reddy (Instructor): doshna.ummareddy@oregonstate.edu
TAs:
- Jisoo Lee: leejis@oregonstate.edu
- Wadood Alam: alamw@oregonstate.edu
- Devon Miller: milldevo@oregonstate.edu
- Gregory Melsby: melsbyg@oregonstate.edu
- Spencer Wahlstrom: wahlstrs@oregonstate.edu
Help Sessions!
Help Sessions will be hosted on Teams, you can send a direct message to the Instructor/TA during their help sessions.
Mon | Tue | Wed | Thu | Fri | Sat | Sun | |
08:00 - 09:00 | Maher | ||||||
09:00 - 10:00 | Maher | ||||||
10:00 - 11:00 | Jisoo | Gregory | |||||
11:00 - 12:00 | Devon | Devon | Jisoo | Gregory | |||
12:00 - 13:00 | Devon | Wadood | Wadood | Wadood | Gregory | Gregory | |
13:00 - 14:00 | Doshna | Wadood | Wadood | Wadood | Gregory | Spencer | |
14:00 - 15:00 | Doshna | Spencer | |||||
15:00 - 16:00 | Spencer | Devon | Spencer | ||||
16:00 - 17:00 | Spencer | Devon | |||||
17:00 - 18:00 | |||||||
18:00 - 19:00 | Jisoo | Jisoo | |||||
19:00 - 20:00 | Jisoo | Jisoo |
Peer tutoring by the School of EECS
Note: This service is not available in Summer Term.
The School of EECS now offers free online CS peer tutoring via Zoom, and there are two ways you can use it:
- Drop-in Tutoring Hours: Regularly held tutoring hours where you can call into the existing session to engage with peer tutors about your questions.
- Click on the link titled "COE Undergraduate drop-in tutoring calendars" from https://engineering.oregonstate.edu/current-students/academic-support
- Scheduled Tutoring Appointments: Scheduled tutoring appointments with peer tutors.
- Click on the link titled "COE Undergraduate tutoring- schedule an appointment" from https://engineering.oregonstate.edu/current-students/academic-support
- Be sure to read the Tutoring Services guidelines from https://engineering.oregonstate.edu/sites/engineering.oregonstate.edu/files/resources/pages/advising/coe_tutoring_services_guidelines.pdf by clicking on the link titled "COE Tutoring services- Guidelines for online tutoring"
This is in addition to the TA/ULA and Instructor help sessions.
TutorMe - Online Tutoring Information
Tutoring is available for free through TutorMe and can be accessed through the TutorMe link in the course navigation menu. TutorMe tutors are available 24/7 and you’re able to communicate with them via chat, video or audio conferencing – it’s up to you! If you find a tutor that you like, you can continue to schedule tutoring sessions specifically with that tutor in the future.
Ecampus Resources
Ecampus Resources - These resources will be useful for all of your classes throughout the term... Library Information, Helpdesk Contact Info, Canvas Tech Support, etc...
Technical Questions on using Canvas
If you have a technical issue or question when using Canvas, 24/7 support is available in Canvas via chat, phone, or e-mail through the Help link in the menu on your left .
Additional technical support (use of software/browsers) can be accessed through the OSU Computer Helpdesk.
Academic or Student Support Services
For all other academic and student support services, refer to the Student Services link found in the course menu.
The following services are available to all Ecampus students:
- Ecampus Success Counseling
- Disability Access Services
- The Writing Center and Online Writing Lab
- The Valley Library and Ecampus Library Services
- Ecampus Enrollment & Student Services
- Check Your Computer test - ensure you have installed the minimum required technology for Ecampus courses.
Accessibility Tools for Canvas
The following tools are available within your Ecampus course.
ReadSpeaker - is a tool that reads text on Canvas course pages aloud.
TextAid - is an additional tool that allows users to have nearly any text highlighted and read aloud, including documents, Web sites, text composed by a user, and more. For more information, please visit ReadSpeaker Text Aid.
NOTE: Some links on this page may only be accessible to registered students.
Syllabus & Course Summary
Download the full syllabus file .
You can see the full schedule for the course below, and the assignment due dates at the end of this page.
Course Schedule:
Week | Topic | Reading Assignments | Learning Activities |
---|---|---|---|
1 | Asymptotic Notations and Correctness of Algorithms |
Readings and Videos in Canvas Practice problems and practice quiz questions on canvas |
Assignment and Discussion and Quiz |
2 | Recursion, Recurrence Relations and Divide & Conquer |
Readings and Videos in Canvas Practice coding problems and practice quiz questions on canvas |
Assignment and Quiz |
3 | Dynamic Programming |
Readings and Videos in Canvas Practice coding problems and practice quiz questions on canvas |
Assignment and Quiz |
4 | Dynamic Programming and Backtracking |
Readings and Videos in Canvas Practice coding problems and practice quiz questions on canvas |
Assignment, Discussion and Quiz |
5 | Greedy Algorithm & Midterm |
Readings and Videos in Canvas Practice coding problems and practice quiz questions on canvas Review material from week 1-4 Explorations, videos, quizzes and assignments. |
Midterm Exam and Quiz |
6 | Graph Algorithms & Portfolio Project |
Readings and Videos in Canvas Practice coding problems and practice quiz questions on canvas |
Assignment, Discussion and |
7 |
NP-completeness and Heuristic Algorithms |
Readings and Videos in Canvas Practice coding problems and practice quiz questions on canvas |
Assignment, Discussion and Quiz |
8 |
Finals Week |
Review material from all Explorations, videos, quizzes, midterm and assignments. |
FINAL EXAM and End of Course Discussion |
1. Communication Tools
a. Ed Discussions
There is a link to Ed Discussions in the left sidebar of Canvas. This ongoing Q&A forum is a valuable resource for getting official answers to your questions (and often helpful student responses also). It's good to use the search box before posting, to see if your question has already been addressed.
b. Teams
Teams is a forum for more informal interaction with your fellow students. It is also where TAs and the Instructors will hold help sessions.
You can download and install the desktop or mobile app from here or also use it from the browser.
Connecting to our class teams:
-
-
- You can find the ways to connect to our class on Start Here - Microsoft Teams and Ed Discussions page.
-
Here's how we'll use Teams:
- General
The landing channel when you first join. This is where help sessions will be held and where you can discuss course-related questions with other students. - #random
Random chat among course members (students and teachers)
On Teams you can:
- Create your own channels
For group-work or study-groups you can create your own (private or public) channels! - Create ad-hoc teleconference sessions
Click the "phone" icon next to the channel title and invite people to join you! - Engage with the TAs and Instructor during help sessions.
- Engage with each other
OSU's primary motivation in providing this Teams experience is to give you, the student, a built-in mechanism for building relationships and collaborations among yourselves.
2. Course Tools
a. PyCharm
PyCharm is the IDE (Integrated Development Environment) that you can use in this course to develop your assignments. There are a few steps you'll need to follow to get PyCharm set up on your computer:
- Download and install the current version of Python 3, found here.
- Download and install the Community edition of PyCharm, found here.
- Run PyCharm and answer the setup questions (accept the default if you aren't sure). When you reach the welcome screen, click on "Create New Project". You should now see this screen:
- In the "Location" path, replace "untitled" with "greeting". This will be the name of your project.
- Click on the little arrow to the left of "Project Interpreter". You should now see the following:
- Click on "Existing interpreter" and select whatever version of Python 3 you installed. PyCharm will remember this choice as the default for future projects (which is good, since Python 3 is what we'll use throughout the course). [If the Python 3 interpreter you installed doesn't appear, open the Settings/Preferences dialog, select Add. Next select System Interpreter and then select your installation of Python 3.] You should now see this screen:
lick the icon and select - Right-click anywhere on the document and select "Run 'greeting'" (which has a little green triangle icon to its left). This should make "Hello world." print to the output window. Congratulations - you've just created and run a program in Python!
b. Repl.it
Repl.it is the tool that was used to create the interactive exercises in the lessons. The exercises are embedded in the lesson pages in Canvas, but you will need to be logged into Repl.it in order to view them. You'll receive an invitation to join the Repl.it "classroom" around the first day of class.
c. GradeScope
For a few of the assignments you submit on GradeScope. The instructions will be provided in the assignment.
Course Policies
Discussion Participation
On alternate weeks there would be group work where students would form themselves into groups and discuss a strategy to solve an assignment problem. Late submission is not accepted on discussion posts.
Weekly Homework Assignments
A homework assignment is due every week of the term, at the indicated date and time (Pacific time). Each student must complete the assignments without referring to any other student's code. Online instructors and/or teaching assistants will generally be available to answer questions online during normal business hours on weekdays. Regrade requests will be considered within two weeks of releasing the grade. Grading TA should be approached first for any grading related clarifications for the assignments. Any submission requests outside of the due date will not be considered. It is advisable to double check the files that are being submitted as part of the assignment submissions.
Late Work Policy
The course material is for each week is released one week in advance with the intent to allow both full time and part time students to be able to complete the homeworks, quizzes, discussions well before the deadline. The quizzes and discussions will be closed post due date. Homeworks may be submitted late by 24hrs after this official due date, but they will be penalized at a rate of 10% of points. Later than that homework submissions will not be accepted. Online instructors and/or teaching assistants will generally be available to answer questions online during normal work hours on weekdays. They will not necessarily be available over the weekend. Plan ahead. If any extension is required it should be informed atleast 3 days before due date.
Proctored Exams
This course will use an automated online proctoring system called Proctorio, where your exam session is recorded for instructor review. You will not need to schedule proctoring appointments, and there is no cost to you to use Proctorio.
Please note that a functioning webcam and microphone are required for using Proctorio. If you do not have these, you will need to locate and submit an alternative proctor through the exams and proctoring form and pay for any associated proctoring fees.
Your security and privacy are important. You can read more about Proctorio’s privacy and data security policies on their website, and more information about using this tool can be found in the course site.
Makeup Exams
Makeup exams will be given only for missed exams excused in advance by the instructor. Excused absences will not be given for airline reservations, routine illness (colds, flu, stomach aches), or other common ailments. Excused absences will generally not be given after the absence has occurred, except under very unusual circumstances.
Incompletes
Incomplete (I) grades will be granted only in emergency cases (usually only for a death in the family, major illness or injury, or birth of your child), and if the student has turned in 80% of the points possible (which basically doesn't happen unless the student encounters a major problem during the final exam).
Establishing a Positive Community
It is important you feel safe and welcome in this course. If somebody is making discriminatory comments against you, sexually harassing you, or excluding you in other ways, contact the instructor, your academic advisor, and/or report what happened at https://studentlife.oregonstate.edu/studentconduct/reporting so we can connect you with resources.
Statement Regarding Religious Accommodation
Oregon State University is required to provide reasonable accommodations for employee and student sincerely held religious beliefs. It is incumbent on the student making the request to make the faculty member aware of the request as soon as possible prior to the need for the accommodation. See the Religious Accommodation Process for Students.
Guidelines for a Productive and Effective Online Classroom
(Adapted from Dr. Susan Shaw, Oregon State University)
Students are expected to conduct themselves in the course (e.g., on discussion boards, email) in compliance with the university’s regulations regarding civility. Civility is an essential ingredient for academic discourse. All communications for this course should be conducted constructively, civilly, and respectfully. Differences in beliefs, opinions, and approaches are to be expected. In all you say and do for this course, be professional. Please bring any communications you believe to be in violation of this class policy to the attention of your instructor.
Active interaction with peers and your instructor is essential to success in this online course, paying particular attention to the following:
- Unless indicated otherwise, please complete the readings and view other instructional materials for each week before participating in the discussion board.
- Read your posts carefully before submitting them.
- Be respectful of others and their opinions, valuing diversity in backgrounds, abilities, and experiences.
- Challenging the ideas held by others is an integral aspect of critical thinking and the academic process. Please word your responses carefully, and recognize that others are expected to challenge your ideas. A positive atmosphere of healthy debate is encouraged.
Expectations for Student Conduct
Student conduct is governed by the university’s policies, as explained in the Student Conduct Code (https://beav.es/codeofconduct). Students are expected to conduct themselves in the course (e.g., on discussion boards, email postings) in compliance with the university's regulations regarding civility.
Academic Integrity
Integrity is a character-driven commitment to honesty, doing what is right, and guiding others to do what is right. Oregon State University Ecampus students and faculty have a responsibility to act with integrity in all of our educational work, and that integrity enables this community of learners to interact in the spirit of trust, honesty, and fairness across the globe.Academic misconduct, or violations of academic integrity, can fall into seven broad areas, including but not limited to: cheating; plagiarism; falsification; assisting; tampering; multiple submissions of work; and unauthorized recording and use.
It is important that you understand what student actions are defined as academic misconduct at Oregon State University. The OSU Libraries offer a tutorial on academic misconduct, and you can also refer to the OSU Student Code of Conduct and the Office of Student Conduct and Community Standard’s website for more information. More importantly, if you are unsure if something will violate our academic integrity policy, ask your professors, GTAs, academic advisors, or academic integrity officers.
Course Summary:
Date | Details | Due |
---|---|---|