IT 212 Applied OO Programming

Craig Miller

Office: CDM 745
Spring 2020-2021
Class number: 30407
Section number: 610
OLASY NCHOP Online Campus


Course Overview

IT 212 offers an introduction to Object-Oriented Programming. Students will use object-oriented programming to integrate systems and applications on multiple platforms, developing and understanding basic distributed applications and how they communicate.

IT 212 mainly uses the Python programming language; it introduces the Java programming language at the end of the course.

Course Goals

  • Students will be able to implement algorithms from pseudocode using the Python language
  • Students will be able to find and correct errors in Python programs
  • Students will be able to design and implement classes in Python
  • Students will be able to write simple programs in Java


Allen B. Downey, Think Python, How to Think Like a Computer Scientist, O'Reilly, 2016. A PDF and html version are available online.


Assignment Weight
Eight scripting assignments (10 points each) 45% (90 points, best 9 of 10)
Two quizzes (10 points each)
Midterm Exam 20% (40 points)
Final Exam 35% (70 points)

Students receiving more than 90% of possible points are guaranteed at least an A-, more than 80% at least a B-, more than 70% at least a C-, and more than 60% at least a D.



IT 211 is the official prequisite. In general, students are expected to have successfully completed an introdutory programming course using Python.

Course Policies

Students are expected to either attend each Zoom session or view the recording created from the Zoom session. Attending the live Zoom session is highly recommended. Attendance will be kept even though it is not a part of the course grade.

To complete this course, students will need the following:

  • Reliable internet access
  • A computer that can run Python 3.8 (freely available)
  • A computer equipped with speaker (or headphones), microphone and video camera

Students without internet access and an appropriately equipped computer will need to drop the course.

Exams are scheduled at the beginning of the quarter and students should plan on having internet access during the scheduled times. Students who cannot be available at the scheduled time may make alternate arrangements, typically on the same day as the scheduled exam. Exams might include online quizzes and asking students to video-record explanations of code.

When completing exams and quizzes, students may not collaborate with any other person. Collaboration with others on exams and quizzes will be considered a violation of the university's policy on academic integrity. Violators will receive a zero for the corresponding exam and will be reported as required by the policy.

Tests and quizzes can be made up with a serious documented excuse (e.g. illness, death in the family) and must be arranged as soon as possible. Arrangements involving other excuses require prior permission from the instructor.

The goal of assignments is to practice the concepts taught in class. You are expected to do your own assignments. However, some collaboration with other students is allowed for assignments and is even encouraged. The following types of collaboration are allowed:

  • Discussing strategies for solving a problem
  • Explaining why a script does not work
  • Reviewing and testing someone else's programming script
  • Using Python code provided by the instructor and texts

The following types of collaboration are not allowed:

  • Copying someone else's Python code
  • Literally telling someone what code to write

Engaging in these last two types of collaboration will be considered a violation of the university's policy on academic integrity. Violators will receive a zero for the corresponding assignment and will be reported as required by the policy.

Late assignments will be accepted up to three days late with a one point penalty. Assignments submitted more than 3 days after the due date will not be accepted without an excused absence cleared by the dean of students office.

Additional assignments for extra credit will not be offered.

All grade challenges must be submitted in writing and include an explanation why the given score or grade should be reconsidered.

Tentative Schedule

Tentative Schedule

Week Topic Reading Lab E Assignment
Mar 29 & 31 Review IT 211 basics: decision structures, composite types, functions Ch. 1-10    
Apr 5 & 7 Review dictionaries, files, formatting, using predefined classes Ch. 11, 14   Assn 1
Apr 12 & 14 Testing and Debugging Ch. 20 Quiz 1 Assn 2
Apr 19 & 21 Defining Classes Ch. 16 & 17   Assn 3
Apr 26 & 28 Inheritance Ch. 18   Assn 4
May 3 & 5 Reading and Parsing Files Class notes Midterm (Monday)  
May 10 & 12 Regular expressions Ch. 4.4   Assn 5
May 17 & 19 Database access Ch. 5 Class notes Assn 6
May 24 & 26 Java introduction Class notes Quiz 2 Assn 7
Jun 2 Advanced Java Class notes No class on Monday (Memorial Day) Assn 8
Nov 18       Final Exam (Wednesday)

The final exam is scheduled for Wednesday June 9 11:30 AM to 1:45 PM.

School policies:

Changes to Syllabus

This syllabus is subject to change as necessary during the quarter. If a change occurs, it will be thoroughly addressed during class, posted under Announcements in D2L and sent via email.

Online Course Evaluations

Evaluations are a way for students to provide valuable feedback regarding their instructor and the course. Detailed feedback will enable the instructor to continuously tailor teaching methods and course content to meet the learning goals of the course and the academic needs of the students. They are a requirement of the course and are key to continue to provide you with the highest quality of teaching. The evaluations are anonymous; the instructor and administration do not track who entered what responses. A program is used to check if the student completed the evaluations, but the evaluation is completely separate from the student’s identity. Since 100% participation is our goal, students are sent periodic reminders over three weeks. Students do not receive reminders once they complete the evaluation. Students complete the evaluation online in CampusConnect.

Academic Integrity and Plagiarism

This course will be subject to the university's academic integrity policy. More information can be found at If you have any questions be sure to consult with your professor.

Academic Policies

All students are required to manage their class schedules each term in accordance with the deadlines for enrolling and withdrawing as indicated in the University Academic Calendar. Information on enrollment, withdrawal, grading and incompletes can be found at

Students with Disabilities

Students who feel they may need an accommodation based on the impact of a disability should contact the instructor privately to discuss their specific needs. All discussions will remain confidential.
To ensure that you receive the most appropriate accommodation based on your needs, contact the instructor as early as possible in the quarter (preferably within the first week of class), and make sure that you have contacted the Center for Students with Disabilities (CSD) at:
Lewis Center 1420, 25 East Jackson Blvd.
Phone number: (312)362-8002
Fax: (312)362-6544
TTY: (773)325.7296