Errata for Fall 2009 (current) version
This is a list of errors or clarifications for the book Learning Computing With Robots. Feel free to add to this list. Please indicate the error/issue/comment and the page number printed on the page (not the page number in the PDF).
- Page 107: getObstacle() Returns a list containing the two values of all IR sensors. Clearly copied from the definition of getIR() on the previous page. The definition of the parameterized version of getObstacle() is correct, but the two-valued definition is made more believable because the picture on p.108 would suggest that there are indeed only two obstacle sensors.
- Page 123: Previous getObstacle error is propagated in the summary on p.123
The following are very minor typos that don't really affect the content of the book:
- Page 6: Add a comma in the fist sentence of the last paragraph on the page ("The Scribbler robot, shown here, is..").
- Page 26: In the 5th sentence of the first paragraph, change "than" to "that" ("... there are several other factors that can contribute...").
- Page 44: Add a comma to the first sentence of the second paragraph ("... as you have seen so far, is intricately...").
- Page 89: In the fourth sentence of the first full paragraph, change "an" to "a" ("There is also a similar LED...");
- Page 107: In the last sentence of the first paragraph change "places" to "placed" ("... sensors are placed far enough apart...").
- Page 114: In the last sentence of the first full paragraph change "is" to "in", and "picture on previous page" to "above picture" ("Game pads come in all...", and "... shown in the above picture.").
- Page 132: The indicated range of sensor values is wrong. On my scribbler the go upwards of 65,000. The last paragraph on this page should be reworded to reflect this.
- Page 139: Parentheses are missing in the equation for standard deviation formulas. In the formula there should be parentheses around 2*sigma squared, and in the return statement parentheses should be similarly added ("return exp(-(v-mean)**2/(2*(stddev**2)))" ).
- Page 202: All occurrences of "refraction" should be replaced with "rarefaction".
- Page 228: The first full sentence should have "pixels" instead of "pixel" ("... value of each of the pixels in the new image...").
- Page 301: In the second sentence of the "Space and Time Complexity" section, change "lets" to "let's" and remove "us" ("To make things interesting, let's add a restriction...") .
Errata for Fall 2008 version
Error code: 127
- Pages 14, 114
- Please replace the Gamepad Controller image with the one shown here on the right. You can click on the image to get a larger, full-page printable version to keep. or you can [click here] for an image the same size as in the text (almost) so it can be cut and pasted in the text.
- Page 15
- In 4. Explore a little further: Fix font of SPEED in SPEED can be.
- Page 26
- line 3: replace backwards(1) by backward(1).
- Page 27
- def yoyo(): There should be a call to stop() after the two statements in the function definition
- Page 29
- def yoyo(): There should not be a call to stop() in the definition (see correction for page 27 above)
- Page 68
- Exercises restart numbering back at 1 (rather than continuing with 6).
- Page 74
- line 5 of last paragraph: replace tranalate(1.0) by translate(1.0).
- Page 77
- on line 2 of second paragraph: replace randrange by randint.
- Page 81
- last code example on this page should read:
forward(1.0) wait(3.0) stop()
- Page 82
- Add the stop() command at the end of first two examples on this page:
while timeRemaining(3.0): forward(1.0) stop()
startTime = currentTime() while (currentTime - startTime) < 3.0: forward(1.0) stop()
- Page 92
- replace dfinition of randrange by that of randint. Also fix the paragraph spacing in the definition of random just above.
- Page 94
- moth will have should be month will have.
- Page 114
- See correction for Page 14 above.
- Page 116
- last line of section: replace See Exercise YY by See Exercise 6.
- Page 147
- In the code, the comment after turnSpeed wraps onto the next line
- Page 190
- In a graphics window with width, W and height H (i.e WxH pixels) the pixel
(0, 0) is at the top _left_ corner and the pixel (199, 299) will be at the bottom right corner. That is, x-coordinates increase as you go right and y-coordinates increase as you go left.
- Pages 210-211
- Add definitions of getP1 and getP2. These return the end points (Point object) of the Line object.
- Page 213
- Fix the font of all the beep examples.
- Pages 238-239
- Add definition of getBlob in Myro Review.
- Page 246
- Fix page number in footer to appear on the left corner.
- Page 251
- Description on how to play Tic Tac Toe is missing. For now see here.
- Page 256
- first line of text on the page: replace write a two more by write two more.
- Page 266
- The following sentence in the largest paragraph on this page:
"Since the relationship between the choices is cyclical the strategy
can be implemented by picking the thing that beats the opponent’s pervious
"Since the relationship between the choices is cyclical the strategy can be implemented by picking the thing that beats the opponent’s pervious move."
- Page 270
- last line of Exercise 2 has a typo: "pr0ogram" should be "program".
- Page 303
- Italicize the font of polynomial time on last line of second bullet item.
- Page 303
- line 3 of first paragraph: replace speed on the by speed of the.
- Page 304
- line 1 of third paragraph: replace vocabulary of by vocabulary for.
- Page 304
- line 7 of third paragraph: replace in a an equivalence class by in an equivalence class.
- Page 318
- Last three lines of the second paragraph should be italicized: In the morning paper...Thanks!.
- Page 324
- Under Chapter 4 replace definition of randrange with randint.
- Page 337
- Fix font for definition of getPixel(<picture>, x, y).
Errata for June 2008 version
Thank you all for sending these corrections. We have incorporated these (and others) in the Fall 2008 version of the text.
This is a list of errors or clarifications for the book Learning Computing With Robots.
- p.228, Chapter 9: takePicture) should be takePicture() [missing paren]
- p. 64, Chapter 3: The link to American Scientist no longer works; the page seems to have been taken down.
- p. 50, Chapter 3: January spelled wrong in comments of program.
- p. 29, Chapter 2: backward, waitTime) should be backward(speed, waitTime)
- p. 92, Chapter 5: TakePicture(“gray”) should be takePicture("gray") [incorrect capitalization]
- p. 134, Chapter 6:
# decide how to act based on sensors values if (L - R) > thresh: # left is seeing less light than right so turn right turnRight(1.0) elif (L - R) < thresh: # right is seeing less light than left, so turn left turnLeft(1.0) else: # the difference is less than the threshold, stay put stop()
Should the elif statement be elif (R-L)>thresh: or elif (L-R)<-thresh:?
- p. 158, Chapter 7: no periods in top paragraph
- p. 182, Chapter 8: In Main and in the pictured graphics window, "Cicrles" should read "Circles".
- p. 192, Chapter 8: The second tone is exactly one octave above middle C. should read The second tone is exactly one octave above the first. .
- p. 193, Chapter 8: C#4/Db4 = 261.63* 2^(1/2) = 277.18 should say 2^(1/12) instead of 2^(1/2), with the same correction for D#4/Eb4.
- p. 194, Chapter 8: The last note in the scales should be the C with the octave number increased by one. Also, the scales are chromatic (rather than major or minor).
- p. 179, Chapter 8: In the image on the page, the title of the Graphics Window should be "My Masterpiece".
- p. 201, Chapter 8: I do not understand exercise 5.