4002-231-02 Syllabus
Programming II for New Media
Spring 20073 Course Syllabus

The information presented in this syllabus is subject to expansion, change, or adjustment during the quarter.

Instructor:

Name: Christopher A. Egert
Office: Bldg. 70, Room 2515
475 - 4873
cae (*at*) it.rit.edu

Office Hours:

T.B.A.
and by appointment

Teaching Assistant:

Aaron Beechler

Course Text and Materials

Required Books
• Required text: Foundation ActionScript for Flash 8. Kristian Besley, et al, Friends of ED, 2006.
ISBN:1590596188
Additional Materials
• Additional readings will be provided as handouts or web URLS.

Important RIT Deadlines

Last day of add/drop is Monday, December 11, 2006. The deadline for withdrawing from a course with a W grade is the end of the 8th week of the quarter. The withdraw process must be completed online before the deadline.

Last day to withdraw with a grade of "W" is Friday, January 26, 2007. Forms for withdrawing from a course may be obtained from your department office and need your instructor's signature.

NOTE: IT department policy states that a student has one quarter to challenge any grade. After that, grades cannot be challenged

Course Description

As the second course in programming for New Media students, this course continues an object-oriented approach to programming for interaction. Topics will include reusability, arrays and other data structures, strategies for event-driven programming, object design and inheritance, and control of 3D environments. Emphasis is placed on the development of problem-solving skills as students develop moderately complex applications. Programming projects are required.

Course Goals and Objectives

Learning Outcomes
By the end of the course, students should be able to:

•Write programs that demonstrate an understanding of the event-driven environment and that utilize the event hierarchy.
•Develop classes of objects, and instantiate and control instances of these objects.
•Utilize data structures provided by the instructor to manage complex sets of information.
•Create data structures of moderate complexity to support a variety of programming goals.
•Use debugging techniques to discover the cause and cure of a variety of program errors.
•Invoke external code modules such as components to provide additional functionality, such as interface widgets.
•Read XML data into applications for initialization and data presentation.
•Use callbacks to communicate between programming environments.

Course Organization

This class is designed to be very hands-on. Class meets twice a week in a computer classroom. In most classes, we will discuss a topic, then give you a brief exercise to complete. We will often go back and forth between lecture and exercise mode.

Grading
Grading will be based upon a combination of attendance and participation. You must be present and active in the classroom to succeed in this course.

Keeping your Work
Each week there will be one or more hands-on exercises. An important part of your grade is your participation in these classroom activities. Make certain to keep all of the files, as they will serve as references for your later work. Whether you store your files on a flash drive, on the network, or elsewhere, have all class work available each day in class.

We want you to create a record of your progress, so we will give you personal storage space in our myCourses conference where you can save your work at the end of each class. Note: zip (compress) all of the day's files together before uploading.

Projects
We will have three major projects during the quarter that will provide opportunities to apply concepts covered in class. They will be completed outside of class time.

Readings and Homework
These will regularly be assigned. Check myCourses for specific assignments and due dates.

Exams
We will have both a midterm and a final exam.

Participation
Getting actively engaged in classroom activities helps you to learn, and we want to encourage your participation. You can increase the participation portion of your grade by always attending and coming on time, by consistently contributing to classroom discussion, and/or by helping others in class when you've finished your own work.

Computer Accounts
You are required to have both an RIT computer account, including a web site on the grace server, and an IT department account for this course.

myCourses. We will use the myCourses for class discussion, communication, posting and turning in of assignments, and grades. If you have any problems accessing your account, contact ITS (475-HELP or http://www.rit.edu/~wwwits/).

• An IT department account. You need this to log into the machines in our classroom. To get your IT account, go to a lab assistant in one of the IT labs. You will need your RIT ID card and your class schedule.

• RIT account. This is where you will post your work online for this class. All students have this account, and if you have taken 4002-320 (IMM), you should already have at least one web page up on this account. If you have any problems with this account, contact the ITS office
(475-HELP or http://www.rit.edu/~wwwits/).

Grading

The grading scale used along with the grading criteria is as follows:

Component Weight
Projects (3) 50
Midterm, Final, Quizzes 35
Participation, Classroom Exercises, Homework, and Attendance 15
Range Grade
>= 90.0% A
>= 80.0% & < 90% B
>= 70.0 % & < 80.0% C
>= 65.0 % & < 70.0% D
< 65.0% F









Hand in your projects and assignments on time!
Project grades will be reduced by 1/2 letter grade for each day they are late.

Getting Help

General Course Goals We want each of you to succeed in this class, and we do our best to provide you with support you may need. This course introduces a lot of new ideas and it's not uncommon to have questions. When you find that you need help:

1. First check the myCourses discussion area. This is a great place to share insights and get help from classmates. Also, I check in frequently to answer questions.

2. 1.If you have more questions than can easily be answered in myCourses, try a tutor. The IT department has graduate assistants who work as Multimedia Tutors in the main IT Lab, with regular posted hours. Their job is to help you in understanding programming concepts, understanding the statements in the language, understanding the intent of the projects, and locating and solving bugs in your projects. The Multimedia Tutors will not write the code for the projects, but they will help you to figure out how to do it yourself. The tutors' hours are posted in all of the IT labs and online at
http://it.rit.edu/it/people/tutors.maml.
3. 1.Stop by my office. I am available during my posted office hours and by appointment. Or just stop by - if I'm free, I'll be happy to help you.

Course Topics

• Review of programming concepts
• Scope of variables and functions
• Parameters
• Return values
• Structuring data using arrays
• Design of class structures
• Using and customizing components
• Intro to XML
• Importing and interpreting XML
• Additional advanced concepts to be determined

Cheating

Academic dishonesty is misrepresenting someone else's work as your own. Academic dishonesty is a serious matter, and can result in an automatic F for the course. Please review the IT department's policy on cheating, located online at http://www.it.rit.edu/policies/dishonesty.html. If, during the quarter, you ever have any questions about what does or does not constitute academic dishonesty, please come and talk to me.

Finally...

Any or all of the previous information is subject to change or adjustment during the quarter.

bunny by Asa Tse turtle by Asa Tse flowers by Asa Tse psp guy by Asa Tse blow fish by Asa Tse shapes to cat by Asa Tse dinosaur by Asa Tse cute girl by Asa Tse bee by Asa Tse frog by Asa Tse dog by Asa Tse cat by Asa Tse canvas face by Asa Tse duck face by Asa Tse