Instructor: Eugene Wallingford
- Office: 305 ITT (formerly known as the East Gym)
- Phone: 273-5919
- E-Mail: firstname.lastname@example.org
- WWW: http://www.cs.uni.edu/~wallingf/
- Click here for my my office hours and schedule
- Required text:
Introduction to Computing & Programming with Java: A Multimedia Approach,
Mark Guzdial and Barbara Ericson,
- Electronic resources:
- The course web page, http://www.cs.uni.edu/~wallingf/teaching/061/
- The course mailing list, email@example.com
Note that to send messages to the course mailing list, you must send from the mailing address from which you are subscribed. By default, that is your uni.edu e-mail address. If you'd like to be subscribed from some other address, just let me know.
This course has two primary goals. First, as its title indicates, the course introduces you to the study of computer science. We hope that you will leave this course with a sense of computer science is and what computer scientists do. We also hope that you leave with a sense of just how exciting and intellectually powerful the discipline is.
Second, the course aims to teach a bit about how to write computer programs. Programming is the way that computer scientists express their ideas and implement solutions to problems. Even if you never "program for a living", you will need to know how to program in order to appreciate the ideas you learn and to work in the induistry. We hope that you leave this course with a sense of what programs can do and of how you can use programs to express ideas.
We will use media computation as our primary theme to reach these goals. Computing with images, sound, and video offers a rich body of problems to solve that will bring us into contact with many of the fundamental ideas of computer science: representing and transforming data; design, analysis, and experimentation; and the thrill of solving problems in any domain of human thought.
By the end of the term, you should feel comfortable:
- writing basic Java programs to manipulate images, sound, video, and text.
- thinking about problems in terms of representing and transforming data.
- Class sessions -- Our class meetings will consist of a mixture
of lecture, discussion, and in-class exercises. We will also spend
time preparing for and reviewing lab sessions. Much of the
that we cover in class will expand upon what appears in your texts, so
attendance is essential. You will be expected to read assigned topics
prior to the class session and to participate actively in class.
-- There are fifteen scheduled laboratory sessions, beginning the first
week of class. Attendance of lab sessions is required -- you will
receive credit for a lab only if you attend. During each lab session,
you will do exercises that complement the topics being covered in class,
often that same week.
-- Over the course of the semester, you will complete somewhere between
six and twelve programming assignments. These assignments will involve
applying techniques learned in class and will occasionally involve
extending or modifying code originally developed in class or a lab
- Exams -- Finally, we will have two fifty-minute midterm examinations during the semester and a comprehensive final exam at the end. The exams will be "closed book", though sample code will usually accompany the exam as a part of the questions.
Item Number Weight Lab exercises 15 20% Programs 6-12 30% Midterm exams 2 30% Final exam 1 20%
Grades will be assigned using an absolute scale:
- 90% or above for an A,
- 80% or above for a B,
- 70% or above for a C,
- 60% or above for a D, and
- below 60% for an F.
This means that there is no curve.
I try to accommodate student needs whenever possible, but I can only do so if I know about them. If you ever have to make alternate arrangements for a class session, a quiz, or an assignment, contact me in advance. The safest way to make such arrangements is by notifying me via e-mail of your circumstances and of how you can be reached.
My regularly-scheduled office hours are times when I am committed to provide assistance to you. No matter how busy I may appear when you arrive, the office hours are for you. You are welcome -- and encouraged -- to make use of that time. I am also available by appointment at other times if you cannot make an office hour.
All assignments are due at their assigned date and time. In order to receive partial credit, always submit your best effort at that time. Late work will not be accepted.
Working together is encouraged for programming assignments, to help you understand the problems and to encounter different points of view. Acknowledge by name any person with whom you collaborate in the documentation of the program you submit. However, any work you submit must be your own. Undocumented or unacceptable collaboration, including the sharing of code, will be considered a form of academic dishonesty.
UNI has an established policy of academic integrity. Plagiarism and other forms of academic dishonesty will not be tolerated in this course. See the UNI catalog for details on the university's policy.
Most course materials will be made available on the course web page during the semester. I also frequently send e-mail to inform you of breaking news and to answer common questions.
Our laboratory sessions will be held in 112 Wright Hall, which contains 20 or so computers that boot to Linux and Windows. We will be using Linux as our primary operating system this semester. You will do your lab exercises and programming assignments using Dr. Java, a lightweight development environment for Java. Dr. Java and many of the programs we use this semester are avilable on a CD that comes with your textbook.
You may choose to do programming assignments on any platform you like, such as a Mac or a Windows PC. Dr. Java is available for both of these platforms.
This schedule gives a rough sketch of the topics we will cover and the distinguished dates this semester. This is the first time we have taught CS I using this approach and text, so I may want to make adjustments as we go along. If we need to re-schedule an exam, I will notify you at least one week prior to the exam date.
|1||08/22 - 08/24||Introduction to the course||1-2||.|
|2||08/29 - 08/31||Picture encoding, manipulation||3-4||.|
|3||09/05 - 09/07||Picture manipulation||4-5||.|
|4||09/12 - 09/14||Picture manipulation||5||Thu off?|
|5||09/19 - 09/21||Picture manipulation||6||.|
|6||09/26 - 09/28||Picture manipulation||7||.|
|7||10/03 - 10/05||Sound manipulation||8||Exam 1 (Tue)|
|8||10/10 - 10/12||Sound manipulation||8-9||.|
|9||10/17 - 10/19||Sound manipulation||10||.|
|10||10/24 - 10/26||[to be announced]||.||Week off?|
|11||10/31 - 11/02||Sound manipulation||10||.|
|12||11/07 - 11/09||Objects and classes||11||.|
|13||11/14 - 11/16||Text encoding and generation||12||Exam 2 (Tue)|
|.||11/21 - 11/23||Text manipulation||13||Exam 2 (Tue)|
|14||11/28 - 11/30||Text manipulation||12-13||.|
|15||12/05 - 12/07||Movies; Course wrap-up||14||.|
The FINAL EXAM is Thursday, December 14, from 3:00 PM - 4:50 PM.