Bryn Mawr College
CS 110: Introduction to Computing
Spring 2011 - Section 001
Syllabus and Schedule | Course Information | Text and Software |
Course
Policies |
Links |
Wk | Date | Topic | Reading | Examples | Assignments | Comments
|
---|---|---|---|---|---|---|
1 | 1/18 | Course Introduction: What
is computing? |
Ch
1: Pixels Ch 2: Processing Ch 3: Interaction |
Download and install Processing on your computer Assignment 1 out |
||
1/20 |
Drawing primitives: point,
line, shapes, color |
Week 1 Examples | Submission Instructions Code Formatting Standards Grading Policy |
|||
2 |
1/25 |
Variables
&
Control
Structures
|
Ch
4:
Variables Ch 5: Conditionals |
Assignment
1
due Assignment 2 out |
||
1/27 |
Ch 6: Loops | Week 2 Examples |
||||
3 | 2/1 |
Functions |
Ch
7: Functions |
|||
2/3 |
Tracing Function Calls & Random Numbers | Week 3
Examples |
Assignment 2 due Assignment 3 out |
|||
4 | 2/8 |
Objects & Top-Down Design | Ch 8: Objects | Week 4 Examples |
||
2/10 |
No
Class
--
Prof.
Eaton
out
of
town |
|||||
5 | 2/15 |
Objects & Top-Down Design (continued) | Week 5
Examples |
|||
2/17 |
Arrays |
Ch 9: Arrays | Assignment 3 due Assignment 4 out |
|||
6 | 2/22 |
Sorting and Searching | ||||
2/24 |
Structures
and
Structure
Design |
The
Ground Defense game we
created in class |
||||
7 | 3/1 |
Review |
Assignment 4 due | |||
3/3 |
Exam 1 |
|
||||
8 | 3/8 |
No
Class -- Spring Break |
||||
3/10 |
||||||
9 | 3/15 |
Recursion
and Algorithm Design |
Week 9
Examples |
Assignment 5 out |
Useful tools, including the arc and bezier editor |
|
3/17 |
Debugging |
|||||
10 | 3/22 |
Transformations
and
Modeling
Motion
|
Ch 14: Translation and Rotation | |||
3/24 |
Assignment
5
due Assignment 6 out |
|||||
11 | 3/29 |
Images and Image Processing |
Ch 15: Images | Week
11 Examples |
||
3/31 |
Strings and
Text, Text Formatting |
Ch 17: Text | ||||
12 | 4/5 |
File
Input, Lists |
Ch
18: Input (excluding 18.7-18.8) |
Week 12 Examples |
Assignment 7 out | |
4/7 |
Data
Visualization,
Time
Series |
|||||
13 | 4/12 |
Data
Structures, Advanced Algorithms |
Ch
22.1-22.3: Adv. OOP |
Week
13 Examples |
Assignment 6 due | |
4/14 |
Assignments 6 due Assignment 7 (Part 1) due |
|||||
14 |
4/19 |
Transitioning
to
Java |
Ch
23: Java |
|||
4/21 |
||||||
15 |
4/26 |
Review |
Assignment 7 (Part 2) due | |||
4/28 |
Exam 2 |
Optional Assignment 8 |
||||
Instructor: | Eric Eaton, Ph.D. |
E-Mail: | (When
you
e-mail
me,
make
sure
you
put
"CS110"
at
the
start
of
the
subject
line
to
ensure
a
quicker response.) E-mail is the best way to reach me, and I make a concerted effort to respond to all e-mails within 24 hours on weekdays and 48 hours on weekends (often, much less!). |
Office
Hours: |
1-2pm Tuesday/Thursday and by
appointment |
Website: | http://cs.brynmawr.edu/Courses/cs110/spring2011/section01/ |
Lecture: |
Tuesday/Thursday 2:15 pm to 3:45 pm |
Room: | Park 337 |
Lab: | Thursdays 10am-12pm in Park Room 231 (Computer Science
Lab). |
Teaching Assistants: | TBA |
Course Description: An
introduction to the nature, subject matter and branches of computer
science as an academic discipline, and the nature, development, coding,
testing, documenting and analysis of the efficiency and limitations of
algorithms. Also includes the social context of computing (risks,
liabilities, intellectual property and infringement).
This semester, we will be exploring the creative aspects of coding as a
context for learning the above concepts. You will exercise your
creativity by desiging programs in the Processing language.
Processing is a new language/environment built upon the programming
language Java. Processing was created by artists, designers, and
computer scientists to explore ideas of creative coding sing computer
algorithms. The passage below from Shifman's text is an excellent
description of what we will be doing this semester:
This book tells a story. It’s a story of liberation, of taking the first steps towards understanding the foundations of computing, writing your own code, and creating your own media without the bonds of existing software tools. This story is not reserved for computer scientists and engineers. This story is for you.
- Daniel Shiffman, Learning Processing, page ix
Learning Processing: A Beginner's
Guide to Programming Images, Animation, and Interaction by Daniel
Shiffman, Morgan Kaufmann Publishers, 2008. Available at the Campus
Bookstore. |
|
Processing Software
(http://www.processing.org) This software is already installed in the Computer Science Lab. It is also available for your own computer from Processing web site listed above. |
Communication
Attendance
and
active
participation
are
expected
in
every
class.
Participation
includes
asking
questions,
contributing
answers,
proposing
ideas,
and
providing
constructive
comments.
As you will discover, I am a proponent of two-way communication and I
welcome feedback during the semester about the course. I am available
to answer student questions, listen to concerns, and talk about any
course-related topic (or otherwise!). Come to office hours! This helps
me get to know you. You are welcome to stop by and chat. There are many
more exciting topics to talk about that we won't have time to cover
in-class.
Whenever you e-mail me, be sure to use a meaningful subject line and
include the phrase "CS110" at the beginning of that line. Your e-mail
will catch my attention and I will respond quicker if you do this. I
make an effort to respond to e-mails within 24 hours on weekdays and 48
hours on weekends.
Although computer science work can be intense and solitary, please stay
in touch with me, particularly if you feel stuck on a topic or project
and can't figure out how to proceed. Often a quick e-mail, phone call
or face-to-face conference can reveal solutions to problems and
generate renewed creative and scholarly energy. It is essential that
you begin assignments early, since we will be covering a
variety of challenging topics in this course.
Grading
There will be seven assignments, weighted
equally in the final grading.
Assignments must be submitted according to the Assignment
Submission instructions. You should pay careful attention to the Code Formatting Standards and Grading Policy when doing your
assignments. The
grading
structure for individual assignments is broken down in the Grading
Policy.
At the end of the semester, final grades will be calculated as a
weighted average of all grades according to the following weights:
Exam 1: | 20% |
Exam 2: | 24% |
Assignments: | 56% (8% each) |
Total: | 100% |
Incomplete
grades
will
be
given
only
for
verifiable
medical
illness
or
other
such
dire
circumstances.
All graded work will receive a percentage grade between 0% and
100%. Here is how the percentage grades will map to final letter
grades:
Rounded Percentage |
Letter grade |
Rounded Percentage | Letter grade | |
97% -100% |
A+ (4.0) |
77% - 79% | C+ (2.3) | |
93% - 96% | A (4.0) | 73% - 76% | C (2.0) | |
90% - 92% | A- (3.7) | 70% - 72% | C- (1.7) | |
87% - 89% | B+ (3.3) | 67% - 69% | D+ (1.3) | |
83% - 86% | B (3.0) | 60% - 66% | D (1.0) | |
80% - 82% | B- (2.7) | 0% - 59% | F (0.0) |
Submission and Late Policy
All
work
must be turned in either in hard-copy or electronic submission,
depending on the instructions given in the assignment. E-mail
submissions, when permitted, should request a "delivery receipt" to
document time and date of submission. Extensions will be given
only in the case of verifiable medical excuses or other such dire
circumstances, if requested in advance.
Late submissions will receive a penalty of 10% for every 0-24 hours it is past the due date and time (e.g., assignments turned in 25 hrs late will receive a penalty of 20%). Submissions received more than one week late will not be accepted.
Exams
There will be two exams in this course. The exams will be
closed-book and closed-notes. They
will cover material from lectures, homeworks, and assigned readings
(including topics not discussed in class). So, keep up with those
readings!
Study Groups
I want to encourage you to discuss the material and work together
to
understand it. Here are my thoughts on collaborating with other
students: