Bryn Mawr College
CS 110: Introduction to Computing
Spring 2009
Course Materials
Prof. Dianna Xu

Texts  Important Dates  Assignments  Lectures  Grading Links

General Information

Instructor: Dianna Xu, 246A Park Hall, 526-6502
E-Mail: dxu at cs dot brynmawr dot edu

Lecture Hours: Tuesdays & Thursdays, 2:30 p.m. to 4 p.m.
Room: Park 338
Lab: Thursdays 4-6pm in Room 231 (additional lab hours will also available, see below)

Lottery results: final classlist


Lab Assistants: The following Lab assitants will be available during the week for assistance on lab assignments.

  1. Emily Bushway: Tuesdays & Thursdays 10a to 12 noon
  2. Marissa Mocenigo: Tuesdays 8a to 10a and Sundays 8p to 10p (starting from the week of February 2)
  3. Rebecca Rebhuhn-Glanz: Mondays and Wednesdays 3p to 5p
  4. Melanie Shafer: Wednesdays 4p to 6p and Sundays 2p to 4p
  5. Leila Zilles: Mondays 11a to 1p and Thursdays 4p to 6p

These are the hours when the Lab will not be available: Mondays and Wednesdays 1-2:30p

CS110 Lab Schedule (RED means Lab is unavailable)

MM (8-10)
MM (8-10)
EB (10-12)
EB (10-12)
DK (10-12)
LZ (11-1)
EB (10-12)
EB (10-12)
DK (10-12)
LZ (11-1)
MS (2-4)
RRG (3-5)
RRG (3-5)
MS (2-4)
RRG (3-5)
RRg (3-5) MS (4-6)
LZ, DX(4-6)
MS (4-6)
LZ, DX(4-6)
MM (8-10)
MM (8-10)

EB (Emily Bushway), DK (Deepak Kumar), MM (Marissa Mocenigo),
RRG (Rebecca Rebhuhn-Glanz), MS (Melanie Shafer), DX (Dianna Xu), LZ (Leila Zilles)

For a printable version of this schedule click here.

Texts & Software

Learning Computing With Robots: by Deepak Kumar, Institute for Personal Robots in Education (Fall 2008 Edition). Available at the Campus Bookstore.

Python Software + IDLE + Myro (This software is already installed in the Computer Science Lab). The software is also available for your own computer from the CD included in your text.

Scribbler Robot Kit: These will be handed out to you in Week#2.


Important Dates

January 20: First lecture
March 5: Exam 1
April 28: Last Lecture
April 30: Exam 2

Assignments+Robot Videos

  1. Assignment#1: (Due on Thursday, february 5): Do the following exercises:
    Chapter 1: Exercise 9 (Hand in the drawing)
    Chapter 2: Exercise 2 (Hand in the written answer)
    Chapter 2: Exercise 3 (Hand in the program as well as the drawing)
    Chapter 2: Exercise 7 (Hand in the program). If possible, post a video of your robot's performance on YouTube (send link to me). You can use any music from an external source as background for the dance. When posting on YouTube make sure you enter the tags "Bryn Mawr". "Scribbler robot", "CS110" to enable easy searches.

    videos: Van Nguyen's Funky Town, Pamela Burt's Technological dance, Chuck dances to Britney (Aliza Rothstein), Night on Bald Mountain (Maggie Murphy)
    Jon Horn and Michelle Zauner, Woo Hoo (Bethie Azuma), In the mood (Stephanie Trott), robot dance (Melissa Carn), howard (Sophie Balis-Harris)

  2. Extra Credit Assignment E1: (Due on Tuesday, February 10): Attend Prof. Bernard Chazelle's talk and write a short (3-4 page) essay/critique of it.

    Prof. Bernard Chazelle (Princeton University) will be giving a talk this Friday, February 6, 4:00-6:00p (Tea at 3:30p) in Room 338, Park Science Building. His talk should be of interest to all in this course and is titled, "What an iPod, a Flock of Birds, and Your DNA have in Common". This is part of the Fantastic lectures in Computer Science (see here for more details).

  3. Assignment#2 (Due on Tuesday, February 17): Write a program for your Scribbler to draw the bluetooth logo. Your program should include a function called, drawBTLogo(height), so that you can use it over and over again to draw logos of different sizes. Write a main program to use drawBTLogo to draw at least 3 logos (use a loop) of different sizes (say 5, 10 and 12 inches tall) on the same sheet of paper. In the spirit of Valentine's Day, can you write a program for your Scribbler to draw a heart? Alternately, write a program for your Scribbler to create some abstract art. Hand in the two programs, and sheets that show your robot's drawings. For the second program, try and be creative, include repetition, use different colors etc. HINT: For how to write general scribbler commands for turning a specific amount and traveling a specific distance, you may want to read the first 5 pages of Chapter 4.

  4. Assignment#3: (Due on Tuesday, February 24): Write Python programs to make the following population projections: (1) What will the US population be in the year 2050? (2) In which year will the US Population exceed 1/2 billion? (3) In which year will the US population double?

    Write a separate program to answer each of the questions posed above. You may use the example program in Chapter 4 (page 90) as your starting template.

    Your program should input the Current population, growth rate, and the current year (if needed), and any other input required to answer the questions. You can use the figure: 305,529,237 as the population of the United States on January 1, 2009. Use a growth rate of 0.9%. Additionally, show the outputs of all three programs if the growth rate changed to: 0.8% and 1.0%.

    Hand in: A print out of the three programs, along with a print out showing the inputs and outputs from each program. Write a short (less than 1 page) essay on your experiences with this program describing what you learned, how you feel about the concepts you learned, and any known issues that you may have encountered along the way.

  5. Assignment#4: (Due on Thursday, March 5): Implement Braitenberg vehicles 1, 2a, and 2b as discussed in Chapter 6 of your text. Additionally, implement any one of the suggested vehicles/robot applications from Chapter 6 (Choose from: Refrigerator detective, burglar alarm, Hallway cruiser, follower, Timid, Indecisive, Paranoid). Hand in all the programs you wrote. Also, write a short (1-page) essay on designing insect-like behaviors based on the robots you designed. Extra Credit: Make a video of your robot's behaviors and either send it to Dianna and/or post it on You Tube.

  6. Assignment#5: (Due on Tuesday, March 31): Click here for details
  7. Assignment#6: (Due on Thursday, April 9): Click here for details
  8. Assignment#7: (Due on Thursday, April 23): Click here for details

How to Install Myro on your own computer?

Myro 2.8.14 download: Click Here.

For MACOS users: Click Here.

For Windows XP users: Click Here.

For Windows Vista users: Click Here. Also, see the handout (click here) for establishing a Bluetooth connection.

Robot Videos and other demos from out there!

  1. SONY Robots dancing
  2. Another humanoid robot dance
  3. SONY Rolly Dance
  4. Dancing Penguin robots
  5. A Penguin robot (sort of dancing)
  6. Sync. Dance: Sarcoman Robot
  7. Keepon Dance
  8. A kid dancing with a robot
  9. A Robot Ballet (Nutcracker)
  10. Dabcing Vacuum Cleaner Robots
  11. Dancing Hexapod robots
  12. Robot Artist (3:21)
  13. Hektor: The graffitti drawing robot: Several videos
  14. AARON The Cybernetic Artist (visit the web page and even download a version for your computer)
  15. An interactive Scribbler



All graded work will receive a grade, 4.0, 3.7, 3.3, 3.0, 2.7, 2.3, 2.0, 1.7, 1.3, 1.0, or 0.0. 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: 25%
Labs & Written Work: 55%
Total: 100%


A database of color names


Created on January 14, 2009.