CS222-001 Course Description, Fall 2010

Course Information

Course Title
Advanced Programming
CS222 Section 001
Tuesdays and Thursdays at 9:00 in RB104
CS121 and CS124
Paul Gestwicki, Ph.D.


Project-intensive study of advanced topics and best practices in software development, including advanced language features, modular decomposition, and development tools.

The following major concepts are covered in this course:

Required Books

Course Website

The course will be managed through Moodle, which can be found at http://www.cs.bsu.edu/moodle. You will need to create a Moodle account as soon as possible if you do not have one already.


There will be in-class activities and discussions almost every meeting. These may not be "made up" if they are missed. In the event that you miss a class meeting, you are responsible for the material that was discussed. This is one of many reasons to form a study group.


Assignments must be turned in before the start of class on the day that they are due. For assignments with tangible artifacts, these should be stacked on the table at the front of the room so that I can collect them immediately at the start of class. Late work is worth no credit.


Exam dates will be announced in class at least a week ahead of time. Conflicts should be brought to the instructor's attention as soon as possible. Exams may not be made up except in the case of documented emergency.


A student's grade in this course will be determined according to the scale provided below. The instructor reserves the right to adjust the weights as deemed appropriate.

You should familiarize yourself with my general grading rubric, on which all of my grading is based.


Office Hours and Appointments

Students who come to office hours are helped on a first-come, first-served basis; no appointment or prior contact is required. If a student wishes to make an appointment to meet outside of office hours, he or she should email the instructor the request along with several possible meeting times. Appointments can generally be made within two working days of the request.


All email communication to the instructor should be from a BSU-affiliated address. This policy ensures that senders can be correctly identified and protects your privacy. Email sent from other domains may not be answered.

The instructor may access email through services not affiliated with the University. Please note that such messages necessarily pass through the campus firewall in an unencrypted format, and they may be stored on servers not owned or managed by Ball State University. It is therefore advisable to restrict confidential information to office hours or appointments.

If you are emailing regarding questions in a computer program, it is recommended that you send a copy of the code in question in your email. The preferred method is to copy the code into the body of your message, using plain text and following standard formatting conventions.


Although instructor's office telephone numbers may be provided for reference, email communication is the most reliable means of contact.

Academic Integrity

Students and faculty are bound by the Student Academic Ethics Policy of the Code of Student Rights and Responsibilities.

Notice for Students with Disabilities

If you need adaptations or accomodations because of a disability, if you have emergency medical information to share with the instructor, or if you need special arrangements in case the building must be evacuated, please make an appointment as soon as possible.