Professor Contact Information | Dr. Kinga Dobolyi Office: Engineering Building, room 4440 Email: kdobolyi@gmu.edu (preferred; I usually check emails between 9am and 5pm on weekdays) Phone: 703–993–4198 http://www.cs.gmu.edu/~kdobolyi/sparc/ Office Hours: Thursdays noon-2pm, or by appointment. Please email me at least 48 hours in advance for an appointment. |
DASHBOARD | View your progress in the course |
Course Outcomes |
|
Prerequisite | C 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. |
TA Contact Information | GTA: TBA UTA: TBA You may visit any TA, not just the one assigned to you. |
Textbook | 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 Structure | This class will be very different from your prior high school classes and other university classes in several ways:
|
Discussion Board Use | All 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). The instructor reserves the right to make any post public, should it benefit the class. Note that the discussion board has been active for several semesters, so you may already find answers (and should ignore other ones that are not relevant) to your questions there. |
Practice Assignments | We 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 any place 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. |
Assessment Assignments | Labs 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). To encourage students to complete the course in a timely fashion, students will have up to 10% of their grade in the class reduced for missing to take an assessment every week. All students must sign up for an assessment slot every week (until you've passed all assessments or you're ahead of the schedule below); if there is room, you will be allowed to take additional assessments 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 one assessment per week, but you may take more assessments each 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 45 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 take another assessment(s). 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, or you will submit a scantron. 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). |
Grading | Your final grade will be determined as follows: 10% for class participation up to -10% of your final grade for NOT attempting an assessment each week 70% for the assessments 20% for the final exam Practice assignments do not count towards your grade, and the class has no exams besides the final. Final course grades are calculated as follows: 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 within five attempts in order to pass the course; failing any assessment will automatically result in a failing grade (F) in the course. You must also pass the final exam with a 60% or higher to pass the course. |
Honor Code | As 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. |
Office Hours | Office 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). |
Email Use | I occasionally send important announcements to your Mason email account, so please read it regularly. I also use Piazza to send important announcements through email. General class questions that might be useful or interesting to other students should be posted to the discussion board, not sent through email. |
Learning Disabilities | If 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. |
Other Useful Campus Resources | Counseling and Psychological Services (CAPS): (703) 993-2380 Writing Center: A114 Robinson Hall; (703) 993-1200 Ask a Librarian through the University Libraries |
Tentative Class schedule |
Class Number | Assignments | Labs This Week |
1 | Introduction to class and flipped classroom Syllabus crossword puzzle | Required assessment: Assessment 0 (start of semester survey) schedule ANY assessment(s) |
2 | work on Programming Project 1
| |
3 | Chapter 0: Introduction to Computing exercises
| Required assessment (if not completed): Assessment 0 (start of semester survey) schedule ANY assessment(s) |
4 | continue Chapter 0 exercises | |
5 | Chapter 2: Decision Making exercises
| Recommended assessment: Assessment 2 (basic expressions and decisions) schedule ANY assessment(s) |
6 | Work on sample assessment 2 | |
7 | Chapter 1: Testing exercises
| Recommended assessment: Assessment 1 (testing) schedule ANY assessment(s) |
8 | Continue Chapter 1 exercises | |
9 | Work on Programming Project 2
| Recommended assessment: none (you may skip this lab if you passed assessments 1-2 only) Use lab time as needed to work on project 3 schedule ANY assessment(s) |
10 | Continue to work on Programming Project 2 | |
11 | Chapter 3: Debugging and Printing exercises
| Recommended assessment: Assessment 3 (decision word problems) schedule ANY assessment(s) |
12 | Continue to work on sample assessment 3 | |
13 | Chapter 4: Looping exercises
| Recommended assessment: none (you may skip this lab if you passed assessments 1-3 only) Use lab time as needed to work on Chapter 4 exercises schedule ANY assessment(s) |
14 | work on Programming Project 3
| |
15 | Continue to work on Chapter 4 exercises and/or project 3 | Recommended assessment: none (you may skip this lab if you passed assessments 1-3 only) Use lab time as needed to work on project 3 schedule ANY assessment(s) |
16 | Begin Chapter 5: Lists and Strings exercises
| |
17 | Continue Chapter 5: Lists and Strings exercises Work on Programming Project 4 | Recommended assessment: Assessment 4 (one dimensional loop/list word problems) schedule ANY assessment(s) |
18 | Work on sample assessment 4 | |
19 | Work on sample assessment 5 | Recommended assessment: Assessment 5 (two dimensional loop/list word problems) schedule ANY assessment(s) |
20 | Chapter 6: Functions exercises | |
21 | Work on sample assessment 6 | Recommended assessment: Assessment 6 (lists and functions in memory) schedule ANY assessment(s) |
22 | Chapter 7: Maps and Complex Types exercises
| |
23 | Objects and classes exercises | Recommended assessment: Assessment 7 (classes word problems) schedule ANY assessment(s) |
24 | Work on sample assessment 7 | |
25 | Chapter 8: Exceptions exercises
| Recommended assessment: Assessment 8 (exceptions in code) schedule ANY assessment(s) |
26 | Work on sample assessment 8 | |
27 | Work on Programming Project 5 | Recommended assessment: Assessment 9 (building larger projects) schedule ANY assessment(s) |
28 | Finish Programming Project 5 Work on assessments 9 and 10 | |
FINAL EXAM | No lecture this week | Recommended assessment: Assessment 10 Final Exam. This exam will contain a live coding portion, and a written portion. The live coding portion will need to be taken during a lab. The written portion will be at most two hours long and will need to be taken the regular final day in the lecture hall, or earlier starting at 8:30am on a Friday or 1:30pm on a Monday during lab, space permitting. You may also take the final after the end of the semester (during posted labs). schedule ANY assessment(s) |