Syllabus

1/15 - Updated the hyperlink to Ed 1/8 - Added one teaching assistant
1/7 - Original version of syllabus

Scope, Objectives, Prerequisites

This is an introductory programming course in the Python programming language. This course assumes zero prior programming experience.

Course Learning Outcomes

  1. Demonstrate familiarity with key concepts in a procedural programming language such as: variables, control structures, functions, input and output.
  2. Demonstrate the ability to use programming to solve problems appropriate to a beginning class in programming.
  3. Acquire familiarity with how programming can be applied to solve problems.

Required Textbooks

Allen Downey’s Think Python, Second Edition, available for free under CC license from the author. (Please take care to use the second edition, not the first, not the third).

Wes McKinney’s Python for Data Analysis, Third Edition, online version is free from the author, also available at GWU library.

Instructors

Professors

  • Prof. Joseph Goldfrank
  • Prof. Kasia Hitczenko

Teaching Assistants:

  • Amal Alqahtani
  • Marlee Alvino
  • Vik Becker
  • Petra Chuenarrom
  • Alexander Frolov
  • Lydia Ko
  • Talia Novack
  • Lauren Schmidt
  • Tabitha Shaw
  • Lexi Sun
  • Chloe Truong

Contact info:

  • Our main method of communication is an Ed discussion board.
  • Post questions to Ed:
    • Never publicly post source code for any homework problem to Ed.
    • Ed allows private posts, where you can share homework code and error messages with course staff only.
  • We use a shared mailbox: cs4all@gwu.edu
    • Please do not email professors or TAs directly, ever.
  • Please use email only for issues impacting your ability to commit to the course, and for grading concerns.

Course Website: This course is principally organized on this website, including the syllabus, lecture materials, exercises, and assignments.

Grading and Submission Server: You will submit work (and receive grades) on our submission server. You must use the submission server to submit your homework.

Schedule & Office Hours

Schedule

Office Hours

Examinations & Assessments

There will be weekly in-person quizzes in lab and two in-person midterm exams. There will be an optional final exam during the exam period. By enrolling in this course, you acknowledge the schedule and agree to be present for these assessments.

Exhaustively, your understanding of the material will be evaluated via:

  • 12 Homework Assignments
  • 12 Quizzes (given in lab)
  • 2 Midterm Examinations
  • Final Examination (optional)

There may be extra credit opportunities in addition to what is listed here.

Grading

Grading in this course reflects that the only way to learn programming is by doing, and recognizes that this process includes many mistakes and errors. If you do the work and learn the material, you will earn a good grade at the end of the semester.

If Unit 1 is a higher grade than Unit 2:

  • Unit 1: 50%
  • Unit 2: 50%
  • Participation: 3% bonus

If Unit 2 is a higher grade than Unit 1:

  • Unit 2: 75%
  • Unit 1: 25%
  • Participation: 3% bonus

For Each Unit:

Homework is 25%. Quizzes are 15%. The exam is 60%. If the exam grade is higher than this average, it replaces this average.

Final Exam:

The final exam is optional and will have a maximum score of 70%. The final exam grade will replace any exams and quizzes that it is higher than.

Grading Scale

Grading Scale

The following grading scale will be applied at the end of the semester to calculate letter grades:

Numerical Average Letter Grade
90-100 A
85-89 A-
80-84 B+
75-79 B
70-74 B-
65-69 C+
60-64 C
55-59 C-
45-54 D
0-44 F

Grades are rounded to the nearest integer, e.g., 0.4 rounds to 0 and 0.5 rounds to 1.
D+ and D- are not assigned.

Multiple Submissions

This course uses a grading and submission server for homework. After you submit homework, the server will grade the correctness of your code and return a grade, typically within a few minutes.

Each assignment will permit you to resubmit your homework multiple times for full credit– which means you can see how you did, and then make changes and resubmit.

After you are out of full-credit attempts, you may make one more attempt for 50% credit. However: if you bring your code to a TA or professor to review before submitting this attempt, you will get full credit for it.

Conduct

Credit (up to 10% of your final grade) can be lost for actions that disrespect other students and course staff, such as being disruptive in class or lab, lack of polite behavior toward course staff, asking for solutions during office hours, or requesting grading accommodations other than those outlined in this syllabus.

The environment of this class will be respectful of age, race, ethnicity, country of origin, language, religion, spiritual practice, sexual orientation, gender identity or expression, introversion/extroversion personality dimensions, and socioeconomic and mental/physical status. The instructional team is committed to supporting all members of the class in fostering a respectful, charitable, and professional academic environment.

You must also do your part to make this course inclusive.

Late and Missed Work

Late work is not accepted, with the following exceptions:

  1. Each student will have ten “grace days” to use on homework assignments. These grace days intentionally accommodate both time management difficulties and brief illnesses. We recommend saving a few grace days for brief unexpected disruptions in your schedule. No more than two grace days may be used on any one homework assignment.

  2. Extensions will be granted should there arise circumstances beyond your control that substantially impede your ability to complete coursework. Notify your professor as soon as feasible in these cases. Examples of such circumstances include (but are not limited to) long-term illness and loss of housing. To ensure fairness toward all students, we will request documentation of such circumstances.

Drop Policy:

For each Unit:

  • The lowest quiz grade will be replaced by the subsequent quiz (or the exam, for the last quiz of each unit)
  • The lowest homework grade will be replaced by the subsequent homework grade (the last homework of each unit cannot be dropped)

Attendance & Particiation

We do not take attendance. However, we do track lecture participation via in-class exercises. If you turn at least 7 (of 11) participation exercises, you’ll earn the participation bonus. If you turn in fewer than seven, you won’t get the bonus. We won’t accept excuse notes for the participation exercises.

Quizzes and exams are in person, and failure to be present for a quiz or exam will result in failure (grade of 0) of that assessment. Quizzes failed due to absence are eligible for the drop policy; the drop policy exists to accommodate brief illnesses and disruptions in schedule.

For long-term disruptions in schedule such as serious illness or loss of housing, we will make accommodations after being provided with documentation through the Office of Student Support or from your Dean. For illnesses impacting either midterm exam, we will also require such documentation. Missed exams will typically be made up via a coding interview.

Absence to represent GWU in an official capacity (such as at an athletic event) is always excused, however such excused absence will require confirmation from a faculty sponsor or athletic official, and must be arranged in advance.

Time Commitment

There is one 75-minute class meeting per week and one 75-minute lab per week. Students are expected to spend at least 5 hours per week independently learning outside of class meetings for this course.

Introductory programming comes more easily to some students than to others. It is possible that you will need to commit substantially more- or substantially less- than 5 hours per week. If you find yourself routinely burdened with more than 15 hours per week of work for this course, please contact the course staff to discuss your study habits. Let your professor know of circumstances that may impact your academic commitments if and when such circumstances arise, or before the semester begins, as is appropriate.

Collaboration Policy

The collaboration policy applies to all homework assignments for this course. Don’t cheat in this class; if you do, you will fail the assignment in question and your final course letter grade will be reduced by one full letter grade (“A” becomes “B”, “B+” becomes “C+”, etc.).

This policy exists because students who do not complete their own homework very often fall behind, and ultimately do not successfully complete the course.

University Policies

Academic Integrity Code

Academic integrity is an essential part of the educational process, and all members of the GW community take these matters very seriously. As the instructor of record for this course, my role is to provide clear expectations and uphold them in all assessments. Violations of academic integrity occur when students fail to cite research sources properly, engage in unauthorized collaboration, falsify data, and otherwise violate the Code of Academic Integrity. If you have any questions about whether or not particular academic practices or resources are permitted, you should ask me for clarification. If you are reported for an academic integrity violation, you should contact the Office of Conflict Education & Student Accountability (CESA) to learn more about your rights and options in the process. Consequences can range from failure of assignment to expulsion from the university and may include a transcript notation. For more information, please refer to the CESA website, email cesa@gwu.edu, or call 202-994-6757.

University Policy on Observance of Religious Holidays

Students must notify faculty during the first week of the semester in which they are enrolled in the course, or as early as possible, but no later than three weeks prior to the absence, of their intention to be absent from class on their day(s) of religious observance. If the holiday falls within the first three weeks of class, the student must inform faculty in the first week of the semester. For details and policy, see “Religious Holidays” at Provost Policies, Procedures, and Guidelines.

Use of Electronic Course Materials and Class Recordings

Students are encouraged to use electronic course materials, including recorded class sessions, for private personal use in connection with their academic program of study. Electronic course materials and recorded class sessions should not be shared or used for non-course related purposes unless express permission has been granted by the instructor. Students who impermissibly share any electronic course materials are subject to discipline under the Student Code of Conduct. Please contact the instructor if you have questions regarding what constitutes permissible or impermissible use of electronic course materials and/or recorded class sessions. Please contact Disability Support Services at https://disabilitysupport.gwu.edu if you have questions or need assistance in accessing electronic course materials.

Academic Support

Writing Center

GW’s Writing Center cultivates confident writers in the University community by facilitating collaborative, critical, and inclusive conversations at all stages of the writing process. Working alongside peer mentors, writers develop strategies to write independently in academic and public settings. Appointments can be booked online at https://gwu.mywconline.

Academic Commons

Academic Commons provides tutoring and other academic support resources to students in many courses. Students can schedule virtual one-on-one appointments or attend virtual drop-in sessions. Students may schedule an appointment, review the tutoring schedule, access other academic support resources, or obtain assistance at https://academiccommons.gwu.edu.

Support for Students Outside the Classroom

Disability Support Services (DSS)

Telephone: 202-994-8250

Any student who may need an accommodation based on the potential impact of a disability should contact Disability Support Services to establish eligibility and to coordinate reasonable accommodations.

Counseling and Psychological Services

Telephone: 202-994-5300

GW’s Colonial Health Center offers counseling and psychological services, supporting mental health and personal development by collaborating directly with students to overcome challenges and difficulties that may interfere with academic, emotional, and personal success.

Safety and Security

  • Monitor GW Alerts and Campus Advisories to Stay Informed before and during an emergency event or situation
  • In an emergency: call 911 or GWPD/EMeRG 202-994-6111
  • For situation-specific actions: refer to GW’s Emergency Response Handbook and Emergency Operations Plan
  • In the event of an armed intruder: Run. Hide. Fight.