CSC 111: Computer Science I

Judy Franklin

Fall 2006

Office: 210 McConnell

Office Hours:

Phone: ext. 3858 (office)

Tuesday 12:30 - 2:00

email: jfrankli@scinix.smith.edu

Wednesday 12:30 - 2:00 or by appointment


Lectures: Tues, Thurs 9:00 - 10:20, room McConnell B15
Lab Sections: Thursdays 1:00 - 2:50 or 3:00 - 4:50, Engineering 203.

Course Content: An introduction to computer science and computer programming. The programming language Python will be taught and used to introduce programming techniques, and students will gain proficiency with the UNIX operating system. This is the first course in the Computer Science major. No previous experience is assumed.

Required Textbook: Python Programming: An Introduction to Computer Science, by John Zelle, Franklin, Beedle, and Associates, 2004.

Reserve Textbook: Introduction to Computing and Programming in Python, A Multimedia Approach, by Mark Guzdial, Prentice Hall, 2004.

Both texts are on reserve in the Young Science Library, Bass Hall

Additional Web links:
1) www.python.org
2) Beginner's Guide to Python (http://www.python.org/topics/learn/)
3) Python Tutorial (www.python.org/doc/current/tut/tut.html)
4) Python Library Reference (www.python.org/doc/current/lib/lib.html)

Course Work: Weekly labs and programming projects and bi-weekly quizzes. You will work in pairs on the programming assignments, and take the quizzes and exams on your own..
Two exams: 1) an open-book midterm during lab on Thursday Oct 26 2) an open-book exam given during final exam period.
On-line Quiz dates: Sept 19, Oct 3, Oct 17, Nov 7, Nov 21, Dec 12
Quizzes will be available on-line on Monday a.m. and must be taken by midnight on the Tuesday that they are scheduled.

Course Grade: The programming projects are 60% of your course grade, quizzes are 15%, the midterm exam is 12.5%, and the second exam is 12.5%. Attendance in both class and lab, as well as class participation is also a factor and may supercede these percentages by plus or minus 5%.
There is a whole grade penalty for each day that a project is late. Programs that are not interpretable by Python will not receive any credit.

You will be able to do some work on your own computer. However, some of the projects that are run in the Linux operating system use graphics and audio and so need to run on a Linux station.

To use SSH on your own computer,

Teaching Assistants:
  • Stephanie Gibbons (sgibbons@email.smith.edu)
  • Astride Charles (acharles@email.smith.edu)
  • Amanda Bergman (abergman@email.smith.edu)
  • Hannah Bier (hbier@email.smith.edu)
  • Sara Smith (sbsmith@email.smith.edu)
      Lab Assistants:
  • Section 01 - Stephanie Gibbons
  • Section 02 - Sara Smith
Grader:
  • Nasheeta Sarwar (nsarwar@email.smith.edu)

Help Sessions: RoomTA
Sun 2-5pm Burton B01 and Burton 209 Astride Charles
Mon 8-10pm Burton B01 Allie Bellew
Tues 7-9pm Burton B01 and Burton 209 Astride Charles and Hannah Bier
Wed 7-9pm Burton B01 and Burton 209 Stephanie Gibbons and Amanda Bergman

Syllabus Table: may be updated during semester

Topic

Reading

Lab Assignment

Lab Date

Homework

Distributed On

Due Date

What is CS?,
Pair Programming,
Binary Numbers,
Python

Zelle: Ch1
Guzdial: Ch1
Article: Pair programming

IBM Chip pic

ASCII Table

1

Sept. 7

1

Sept. 7

Sept. 13

expressions,
numbers and types,
reserved words,
input/output,
definite loops

Zelle: Ch2, and Ch3 sections 3.1 and 3.6

2

Sept. 14

2

Sept. 14

Sept. 20

Linux,
pictures and sounds,
definite loops,
beginning functions
(Quiz1: submit by midnight Sept20)

Guzdial: Ch2 pages 22-29, 31-35
Guzdial: Ch7 pages 167-171, 173-178

Stanley and Stella ala 1987

Diebold: Stealing Votes

3

Sept. 21

3

Sept. 21

Sept. 27

More Numbers and types,
Decision Structures,
Strings

Zelle: ch3, ch7, ch4
Pair Programming
Review

4

Claudio personality bot

2) Kismet robot
Roger Dannenberg, accompanist program

Sept. 28

4

Sept. 28

Oct. 4

More
Strings

Lists,
Matrices or 2D Arrays,
RGB, pixels

(Quiz2: submit by midnight Oct 3)

Zelle: Ch4

Zelle: Ch 11 pgs 340-353
Guzdial: Ch 3

5

3) Roger Dannenberg - CMU - In Transit


Oct. 5

No hw over fall break

 

 

More on Lists,

File Processing,
Function definitions

Zelle: Ch 4 pp. 102-114
Zelle: Ch 6 pp. 167-171 and 173-178, 180-187

6


Oct. 12

Hw6 = Lab6


Oct. 12

Oct. 18

Files, Functions,
While loops
(Quiz 3: submit by midnight Oct 17)

Zelle: Ch4 106-114, Ch 8

7

Oct. 19

Hw7==Lab7

Oct. 19

Tues Oct. 24

ALL READING
assigned up to this
point

October 24
start graphics (not on exam)

Class on Oct. 26 is help session

Oct. 26

MIDTERM EXAM DURING LAB

Oct. 26

Nov. 1

Graphics
Objects and classes

Zelle: Ch5

Presentation of
Computer Science Major
noon, Oct 31
McConnell Foyer

8

Experiential Extremism
2) Motu 828 firewire audio
3) Teleo System

Nov. 2

8

Coburn and Smith's music from satellite images

Nov. 2

Nov. 8

graphics
math module
try-except
(Quiz 4: submit by midnight Nov 7)

Zelle: Ch5, Ch7

No Lab: Otelia Cromwell Day

Nov. 9

no HW this week

Nov. 9

 

Top-Down Design,
Designing (object) classes

Zelle: Ch 9, Ch 10

9

1) Industrial Light and Magic's use of python

2) interactive dance install

Nov. 16

Hw9 == Lab9

Nov. 16

Mon Nov. 20

Sound Manipulation


(Quiz 5 due Nov21 midnight)

Guzdial Ch 6, 8

No Lab, Thanksgiving break

Nov. 23

selsort sound with sine waves

selsort sound with flute wavetable

 

 

Searching,
Sorting,
Recursion

Zelle: Ch 13

10

Nov. 30

10

Nov. 30

Dec. 6

Programs that
Write Programs
(Quiz 6 due midnight Dec 12)

 

Lab11 == Hw11


"GuitarBotana" by Mari Kimura

Dec. 7

Hw11 == Lab11

Eric Singer of Lemurbots

Dec. 7

Dec. 13

quicksort.au

Final Exam

All reading, lecture material, and lab and homework material.

Registrar's Info Site

Dec. 19-22

 

Good luck