CS112: Introduction to Computer Programming (Fall 2020)
All Sections

1 Course Basics


Socrates Dimitriadis sdimitr ENGR 4508 001
Shahnaz Kamberi kamberis ENGR 2706 002
Michael Neary mpneary ENGR 4417 003/005

Course Outcomes

Mason Core IT Learning Outcomes


C or better in MATH 104, 105, or 113 (or sufficient score on the math placement test).

1.1 Textbook

Required - zyBooks online textbook

Quite optional - The Practice of Computing Using Python, second edition. William Punch and Richard Enbody. This is for students who want extra reading resources. You might be able to view a copy for free at Fenwick Library.

1.2 In-class Participation

We will use online tools (e.g. Blackboard, Piazza) to interactively answer questions in class and get credit for the day.

1.3 Piazza

1.4 Blackboard

2 Grading

Category Sub-Category Percent Notes
In-Class Participation 5% Make sure to attend the synchronous online meetings every week
In-Lab Assignments (13 Total) 10% drop 2 lowest, average others evenly
Homework e-book reading (12 Total) 5% drop 2 lowest-completion assignments (not chapters)
Programming Assignments (13 Total) 40% drop one lowest
Tests Midterms (2 Total) 20% midterm replacement (see section on 2.4 on Exams)
Final Exam 20% must pass final to pass class (see section on 2.4 on Exams)


2.1 Individual Programming Assignments

Programming assignments are a significant portion of your grade. You should not expect to be able to finish them in one sitting. Each one will take multiple sessions of coding, with questions asked along the way. This is the practice you need to learn, master, and internalize various concepts of the course. Don't be surprised if you're spending 5-20 hours on each one. Each assignment will have a different number of points based on the level of difficulty.

2.2 Labs

2.3 e-book Readings

2.4 Exams

2.5 Contested Grades

If you feel points have been incorrectly deducted, contact the grader. For all homework assignments, and lab work, that is your GTA. For exams, that is your professor. Contesting of grades on any/all submissions must be requested within one week of receiving the grade (on BlackBoard). No grade changes will be considered subsequent to that deadline.

3 Office Hours and Discussion Board

There is substantial support available to you outside of lecture time in the form of office hours and and the online discussion board (Piazza). If you are having difficulty on a programming assignment or lab, we encourage you to reach out as early as possible. That said, to ensure fairness and facilitate learning, we have some basic rules for seaking help outlined below.

Please note that the is a discussion forum for you, the students, to discuss the course and the course material. There will be UTAs assigned to check on this forum regularly and try to moderate the discussion, but this is NOT a replacement for office hours, lecture with your professor, or labs.

3.1 Rules for Office Hours

3.1 Rules for the Discussion Board

4 Honor Code

5 University Policies