Susan Harkins (344) [Avatar] Offline
Please share post-publication errors here. We'll compile and publish a comprehensive list for everyone's convenience. Thank you!

Susan Harkins
Errata Editor
Susan Harkins (344) [Avatar] Offline
331889 (3) [Avatar] Offline
Looks like bottom of p196 needs "@text." to precede "reverse":

class Banner
  def !

Otherwise "reverse" has nothing to act on and !banner on p197 gives an error.

331889 (3) [Avatar] Offline
I don't know if it's a version thing but defining a method that returns false is evaluating to nil (p. 208 says should evaluate to a symbol matching method name, a truthy value).

>> if (def m; return false; end)
>> puts "Method definition is true!"
>> else
?> puts "Method definition is false!"
>> end
Method definition is false!
=> nil

$ irb --version
irb 0.9.6(09/06/30)
$ ruby --version
ruby 2.0.0p643 (2015-02-25 revision 49749) [x86_64-darwin14.1.0]
341041 (2) [Avatar] Offline
Post Publication Errata - Chapter 4 - Page 109 - My Error
This section was a bit confusing to me. I typed what I thought was an error that might not be after a few more readings. It needs clarity regarding the 'gears' instance variable in both classes though
361815 (1) [Avatar] Offline
Nevermind. My Mistake
331889 (3) [Avatar] Offline
Simple typo p. 323.

...for this kind of compression or optimizationEven if an enumerable...

needs a period and a space after 'optimization'.

393530 (1) [Avatar] Offline
On page 21 paragraph 3

require "/home/users/dblack/book/code/loadee.rb"

should be

require "/home/users/dblack/book/code/loadee"

because the author specifically indicates the intent to use "the more abstract syntax of the feature at the end of the path:"
393582 (1) [Avatar] Offline
i'm sorry
ogirginc (1) [Avatar] Offline
Susan Harkins wrote:Current list is available at

This page needs to be updated...
duanjingjing (6) [Avatar] Offline
In the Figure 4.1 on page 102, the module M is included in class D. However, the Listing 4.6 on page 100 has module M included in class C. They don't match!
465989 (1) [Avatar] Offline
In the 2nd edition, page 80, in Table 6.1, row 1, column 3, I believe that "Raise" should be all lowercase "raise." The capitalized version results in "NameError: uninitialized constant Raise"
524672 (4) [Avatar] Offline
p.293 "The dominance of the array"

results of the 'drop_while' line includes "blue" but it should have been dropped as "red" was (since size < 5)

p.320 last line NOTES array is missing "g#" (trivial, but hey...)

Errata list itself:

Page 55:
In the long code sample, delete everything after the following line:

def say_goodbye

this appears to be the wrong instruction in order to make sense of the printed text. Looks like you should delete the five lines above def say_goodbye