CS112 – Fall 2015
Office: Engineering Building, room 4440
Email: firstname.lastname@example.org (preferred)
Office Hours: Tuesday 12:00pm—2:00pm, Thursday 12:00pm—1:00pm, or
by appointment. Please email the professor at least 48 hours in advance when
seeking an appointment.
- An ability to use procedural
programming language concepts including expressions, decision
statements, simple data types, Boolean logic, input/output, loop
constructs, and procedures.
- An ability to combine
programming techniques to solve problems of varying degrees of
- An ability to refine computer
programs through testing and debugging to ensure proper operation.
- An ability to find and
understand programming language documentation to learn new information
needed to solve programming problems.
or better in MATH 104 or MATH 105 or specified score on math placement test,
or MATH 113 with a C or better. Prerequisite enforced by registration system.
Required: CS112 class workbook:
available on Amazon
Optional: free Python wiki: available wiki (simpler
than a python textbook, but contains more syntax than we will cover)
Optional: The Practice of Computing Using Python by
William Punch & Richard Enbody © 2011 (an eText version is available). This is optional;
we will not refer to any specific chapters or material from the textbook this
semester. There are also plenty of free online resources for Python that you
can google (like the wiki above).
class will be very different from your prior high school classes and other
university classes in several ways:
- This class is self-paced,
and therefore we will spend very little time lecturing in the classroom
(if any). Instead, you will explore online videos, slides and readings before coming
to class, and we will practice programming together in class. (This is
called the flipped
- We will have two types of
programming assignments: practice and assessment. You can work on
practice assignments at any time, and do as many as you want. We
encourage you to work with your classmates or anyone
else that can help, and use online resources that you can find. Practice
assignments will not count towards your grade, but will prepare you for
assessments. When you are ready, you will schedule an assessment for
your lab section, to be taken in lab. These will be done individually on
a lab computer, and graded on a pass/fail basis. You are allowed to try
each assessment up to five times.
- This class is self-paced in the
sense that you can take assessments whenever you are ready.
You can complete several assessments in the same week, or use several
weeks to complete and assessment. If it takes longer than the semester
to complete all the assessments, that is okay (although you cannot begin
CS 211 until completing all CS 112 assessments).
- You must attend class to work on
practice assignments until you have completed all assessments.
Attendance (while you still need to pass assessments) will be taken and
is worth 10% of your overall grade. As a minimum, you must attend 27 of
the 30 class meetings to earn this 10%; an exception is that if you
complete all assessments before the end of the semester, you are
automatically marked as attending all remaining class meetings. An
additional 5% of your grade is earned through extra-credit
participation. These points can be earned by helping other students
during class meetings (this help must be observed by the instructor or a
TA, and be acknowledged by the students you help), by asking questions
on the class discussion board that help you and other students, and by
correctly answering questions on the class discussion board.
students will be enrolled in the discussion forum for CS 112 on Piazza. You will receive
a free invitation to this resource via your Mason email. We will all use the
discussion board throughout the semester to ask and answer questions and to
disseminate information. We will make every effort to answer questions within
24 hours, but usually sooner (often two hours during adult working hours).
offer several practice assignments to prepare for each assessment. Practice
assignments should be done collaboratively; you can and should work on these
assignments during class meetings (where the instructor and TA will be
available), at home, or with your classmates at anyplace and anytime.
Although we will track how many practice assignments you are working on and
will complete, they will not be graded. If you are struggling with
assessments, your best solution is to work more practice assignments.
will be offered weekly, and used for automated, online student assessments.
Please request an appointment for an assessment in lab Students must
attempt at least one assessment a week (until you've passed all assessments).
10% of your grade will be based on attempting assessments; you earn that 10%
by attempting at least one per week. As with class attendance, if you
complete all assessments, you automatically earn the full 10% (and can stop
showing up to lab).
There are sixty students in this class this semester, with 25 seats in each
lab section. There are 4 lab sections, yielding 100 possible assessment slots
each week. All students must sign up for an assessment slot every week (until
you've passed all assessments); if there is room, you will be allowed to
schedule additional assessment slots each week on a first-come, first-served
basis. Out of fairness to other students, you must show up for an assessment
slot you schedule; failing to do so will count as failing that assessment
(this way we can prevent a handful of students using up all assessment slots
without showing up to take them). You may schedule up to four assessment
slots a week, assuming slots are available. In addition, you may take as many
assessments in an assessment slot as you like; if for some reason you already
know python/programming and you want to finish this course in a week or two,
this is entirely possible. We budget 50 minutes for each assessment, but
you're free to do them faster, and if there are free assessment slots later
in the day (you won't know these until the day-of, however), then you can
stay later and go beyond the 50 minutes if you need to.
Assessments will be graded in terms of percentage passing tests/questions.
You must score at least a 70% to pass the assessment, and you have up to five
chances to pass each assessment. Only the highest scoring assessment will
count towards your final grade, and you may not make additional attempts
after passing an assessment. All grading is automated so you will receive the
score the computer tells you. We will not grade any assignments by hand,
however, we reserve the right to reduce the grade on an assessment if we find
evidence of soft-cheating (such as coding so that
your answer only passes certain inputs) or hard-cheating (such as copying off
your neighbor during an assessment).
final grade will be determined as follows:
for class attendance
10% for attempting an
assessment each week
5% for extra-class
participation (in person or online)
75% for the assessments
Practice assignments do not count towards your grade, and the class has no
Final course grades are based on cumulative assessment scores and calculated
A+ (>= 98.0%) A (>= 92.0%) A– (>= 90.0%)
B+ (>= 88.0%) B (>= 82.0%) B– (>= 80.0%)
C+ (>= 78.0%) C (>= 72.0%) C– (>= 70.0%)
D (>= 60.0%)
F (< 60.0%)
Please note that you must pass all assessments in order to pass the course;
failing any assessment will automatically result in a failing grade (F) in
with all Mason courses, CS 112 is governed by the GMU Honor Code. Practice
assignments may be done collaboratively with any resources, so there are no
honor code restrictions. However, graded assessments carry with
them an implicit statement that it is the sole work of the student.
hours are times that I commit to being in my office, door open, first come,
first served. You do not need an appointment, and no appointments are made.
If office hours are very busy, I will limit the amount of time I spend with
each student to try and see all students for at least a little bit. If you
cannot make my office hours, then I will suggest you visit the office hours
of any of our TAs (unless it is a specific question a TA would be unable to
answer, such as a course policy question not answered on the syllabus.
occasionally send important announcements to your Mason email account, so
please read it regularly.
General class questions that might be useful or interesting to other students
should be posted to the discussion board, not sent through email.
you are a student with a disability and you need academic accommodations,
please see the instructor and contact the Office
of Disability Services (ODS). All academic accommodations must be
arranged through ODS.
Useful Campus Resources
Counseling and Psychological Services (CAPS):
Writing Center: A114 Robinson
Hall; (703) 993-1200
Ask a Librarian through the