CS 105: Introduction to Game Programming using Alice

Course Syllabus – Fall 2007

Course Instructor

Dr. Jeff Gray

Email: gray@cis.uab.edu

Web: http://www.cis.uab.edu/gray

Office: CH 126

Phone: (205)-934-8643

Office Hours: I can set aside a larger span of time if you send me an email to request an appointment time.

Teaching Assistant

Dixon Shuttleworth (dixons@uab.edu)

Course Session

Wednesday   04:00 PM – 05:15 PM    Room CH 430

Lab Section

Monday         03:30 PM – 05:20 PM    Room CH 430

Course Homepage

http://www.cis.uab.edu/cs105         also, see y:\cs105

Lab Homepage

http://www.cis.uab.edu/cs105/lab

Prerequisite

No course pre-requisites; general familiarity with Windows assumed

Description

This course provides an introduction to computer programming for students with no previous programming experience. Topics include simple data types, control structures; an introduction to array and string data structures and algorithms; recursion; event driven-programming; multimedia and simple animation; basic software development and modularity. Laboratory component in context of object-based programming language. One hour per lecture. Two hours per laboratory.

Objectives

1.     Basic process of writing a computer program (requirements, design, implementation)

2.     Terminology of object oriented programming: objects, methods, properties, and inheritance.

3.     Fundamentals of algorithm design: functions, control structures, if/else, loops, recursion, basic concurrency

4.     Elements of interactive programming: event handling

5.     Basic data structures: lists, arrays

Grading Policy

Attendance                 5% overall

Homework                20% overall

Term Project             20% overall

Lab Exams (2)          10% each

Tests (2)                   10% each

Final Exam               15% 

 

All tests, lab exams and final exam are mandatory. All travel should be scheduled around projected exam dates.


 

Late Submission

1.     All assignments are due at the beginning of class on the due date. Any assignment turned in after this deadline is considered late. Late assignments will lose 10% for every 24-hour period, up to a maximum of 50% (weekends and holidays count as one 24-hour period).

2.     All assignments must be turned in even if they are late. Failure to submit any assignment will result in a grade of ‘F’.

Lab Policy

1.      The lab class will start meeting on August 27, 2007.

2.      Attendance is mandatory for the lab. Attendance for lectures and labs will count as 5% of your overall grade.

3.   Students must attend the lab during lab exams. There will be NO make-up lab exams.

4.      The laboratory instructor will provide the laboratory policy and procedures.

5.      A separate web page with laboratory syllabus and example programs will be provided on the lab web page.

Class Conduct

1.     Students are expected to conduct themselves in a professional manner.

2.     Laptops will be allowed only for the purpose of the class.

3.   During a lecture, students may not log into a machine and do work that is not directly related to the topic of the current lecture.

4.     Students must turn their cell phones/pagers OFF during the class.

Class Attendance

1.     Attendance is mandatory for the lecture portion of this course. If you know you will be absent for a legitimate reason, let the instructor know. If you are sick, bring a doctor’s excuse or a written university excuse to resolve the absences. An absence has to be resolved as soon as possible - otherwise it will be treated as an unexcused absence. Students will receive a penalty of two percentage points on the final grade for each unexcused absence beyond the third absence (excused or unexcused).

2.     Students auditing this course are expected to attend the lectures. Auditing students with more than three unexcused absences will receive a failing grade.

3.     There will be NO make-ups for tests. If you miss a test for a legitimate reason, your final exam grade will replace that test grade. If the absence is unexcused, you will be assigned 0 for the test. A student anticipating an excused absence for the final exam should make arrangements in advance to take the exam at another time.


 

Academic Honesty

Students who plagiarize a computer program (or parts of a program), get others to write a program (or parts of a program), or are found cheating on an exam, will be reported for academic dishonesty. Anyone who is caught cheating will receive a 0 on a given test or assignment. If a second offense occurs, the student will receive an F in the class. This includes both the provider of the information as well as the receiver of the information. Any student who violates the university's academic honesty policy will be reported for academic discipline. All university and department policies related to students are included here by implication.

Add/Drop Policy

1.     A student can add/drop the course through August 29, 2007

2..   A student can withdraw with a “W” by October 22, 2007.

3.     For more details about add/drop policies check with Registration/Academic Records.

E-mail

Every student will be required to use his/her official email address (that is, blazerid@uab.edu). New students must login and configure their email addresses. For more details on obtaining a blazerid and configuring email, please see: http://www.uab.edu/blazerid. All email communications will be made using this address. Additional instructions or announcements will be sent by e-mail, so check your mail often – at least twice a day (once in the morning and once at night). Also, check the course webpage for up-to-date information and announcements. The instructor will check email frequently; e-mail is often the best way to contact the instructor.

 


Tentative Schedule for Lectures
(Lab Schedule Separate)

Updated August 22, 2007

Date

Topics

Comments

August 22

Introduction to Course

Why Study Computer Science?

Example Alice Movies and Games

 

August 29

1: Introduction to Alice and Objects

Tour of CIS Department

September 5

2: Programming in Alice

HW-1 Assigned

September 12

3: Variables, Functions, Math and Strings

Jeff in France

September 19

4: Decision and Repetition Structures

HW-1Due

September 26

5: Methods, Functions, and More Variables

HW-2 Assigned

October 3

Exam 1

Jeff in Nashville

October 10

6: Events

HW-2 Due

October 17

7: Lists and Arrays

(Jeff in DC?)

October 24

8:Recursion

HW-3 Assigned; Jeff in Canada

October 31

Catchup time

 

November 7

Exam 2

Jeff in Atlanta

November 14

Advanced Topics in Alice

HW-3 Due; HW-4 Assigned

November 21

THANKSGIVING BREAK

NO CLASS

November 28

Introduction to Media Computation

 

December 5

Introduction to Lego Robots

HW-4 Due

 

 

 

December 12

Final Exam – 7:00 - 9:30