About
Table of contents
Note: This page contains helpful information and resources, but is not the official syllabus. Please take a look at the class syllabus which also contains official university policies.
Overview
CS104 is an introductory class using the Python programming language, designed for students with no formal exposure to computer science or programming. The goal is to provide fundamentals that will prepare students to either take further computer science courses, or use computer science in their field of study.
Course Meetings
Lectures and office hours are the main ways in which you will interact with your professor and TAs. You can see the weekly schedule of course meetings on the course schedule page.
Lecture
You are expected to come to each class as there will be quizzes given at the start of class. Quizzes will be on Wednesday or Thursday. Please see the official syllabus for more information on the attendance policy.
Office Hours
We will hold a mixture of in-person and virtual office hours at a wide variety of times. Virtual office hours will contain a link in the event that can be found at the course schedule page. You are welcome to come for any reason, including course material questions, lecture clarifications, industry interview prep, career path discussions, or just to hang out.
If you are behind or confused, please reach out for help. The course staff will make themselves as available as possible to help you.
Policies
Please note this information is subject to change depending on various factors throughout the course of the semester.
Grades
Your final grade will be based on buckets of your overall score in the class that will be decided at the end of the semester based on attendance and the difficulty of the exams, quizzes, and homework.
Your overall grade will be calculated using the following relative weights:
Assignment Type | Weight in Overall Grade |
---|---|
Homework/Classwork | 40% |
Attendance/Participation | 10% |
Quizzes | 10% |
Midterm Exam | 10% |
Final Project | 10% |
Final Exam | 20% |
Your final letter grade will be determined using the following scale:
Percentage of points | Grades |
---|---|
>= 90% | A |
>= 80% | B |
>= 70% | C |
>= 60% | D |
<= 50% | F |
Assignments
There will homeworks due on Thursday at 10:00 PM, with the following homework released every Friday. Additional assignments may be given out during class, although they will typically be done together and for a participation grade.
Exams
There will be one midterm and one final exam.
Cheating
For all assignments in the course, you may discuss approaches to solving a problem or work in the same room on separate computers to individually solve a problem, but you may not copy and paste code or substantially copy ideas from another student. Instead of considering cheating, please reach out when you need help.
We will be using software to detect plagiarism. If we ask you how your code works and you do not know, it will be evident that you have copied it. Don’t take the risk.
Resources
This course website, cs104.com, will be a helpful resource for the schedule, lecture topics, and assignment links. Additionally, we will be using the following software:
EdStem We will use EdStem for class discussion as well as assignments and quizzes. You will receive a link to sign up when we begin class. You are highly encouraged to post questions regarding the class directly on EdStem.
Python Tutor is a helpful tool to visualize your code. You may use this to help debug homework assignments and understand concepts learned in class.
Blackboard Your official class grades will be published in Blackboard. Some students will also be using Blackboard Collaborate to join lectures virtually.
Material Attribution
Although some course material will be created by AD, I would like to acknowledge that I am heavily borrowing from past iterations of this course with advice from Ms. Miller, as well as intro courses at various schools taught by GIR instructors.
This website uses Just the Class as a foundation with inspiration from csci100.org and cs104.info (Fall Semester 2023 of this course)