We try to keep our books accurate, but sometimes mistakes creep in. This page lists the errors submitted by our astute readers. If you've found a new error, please submit it.

The latest version of the book is P1.0, released about 2 years ago. If you've bought a PDF of the book and would like to upgrade it to this version (for free), visit your home page.

Key: Typo Tech. Error Suggestion Not a problem Next edition

By default this page displays the errata for the latest version of the book. If you have a previous version, select it here:  

(To find out what version you have, look at the copyright page, a few pages in from the front of the book. If it says (say) 'Second Printing', then here it'll be P2.0. If there are interim PDF releases in that printing, they'll be 2.1, 2.2, and so on.)

PDF Paper Description Found in Fixed in
xiii
#50185: In the third paragraph, last sentence, you have used the word "discovering" when you wanted to use the word "discover". It should say, "... a...more...
P1.0
20-Nov-12
7
#48972: Under "1.2 Building the Reminder Application," the three methods of the Reminder class are listed: "It has three methods: Add, delete, and to_...more...
P1.0
22-Mar-12
9
#48975: My "r = DRbObject.new_with_uri('druby://localhost:12345')" call hung, but using a --noreadline option to irb didn't fix it (and I didn't need ...more...
P1.0
22-Mar-12
33

#76595: In the page 33, IDL is explained as Interactive Data Language, instead Interface Definition Language.

--Aaron

P1.0
01-Apr-14
34-39
#49296: code examples miss "require 'Date'" statement at the top, otherwise error ".../shipping_notify.rb:60:in `<main>': uninit ialized constant Dat...more...
P1.0
09-May-12
53

#49338: In the code example, it says "oops", though other lines has "oops," and "oops.". These comma and period are not necessary.--Makoto Inoue

P1.0
17-May-12
63

#49246: change:
>> str.__id__
=&gt; 358800978
to:
>> str.__id__
=> 358800978
--you_ssk

P1.0
02-May-12
69

#49339: From
=&gt;&gt; #<IO:0x007ffe7206fd10>

To

=> #<IO:0x007ffe7206fd10>--Makoto Inoue

P1.0
17-May-12
71

#49366: In the second-to-last paragraph, "When you want to include it in a instance, " should read "...an instance".--RR

P1.0
23-May-12
73

#49340:
From

DRBUnknown#reload

To

DRbUnknown#reload--Makoto Inoue

P1.0
17-May-12
74

#49367: Last paragraph: "Why do we need such functionalities?" should read "... functionality?"--RR

P1.0
23-May-12
81

#49368: Should the run state have double quotes around it?--RR

P1.0
23-May-12
82
#49341: exit - Terminate the thread. wakeup - Change the thread in running mode. run - Get the thread into running mode. Switch thread. raise - Rai...more...
P1.0
17-May-12
86

#49348: Explanation about Thread.exclusive and Thread.critical is wrong
forums.pragprog.com/forums/198/topics/10553--Makoto Inoue

P1.0
17-May-12
129

#49179: Duplicated sentence on second and third paragraph:

"Consider a program ... completed phase n."--Romeu

P1.0
22-Apr-12
130

#49342: At tsstruct.rb

From

ensure @ts.write(tuple) if tuple

To

ensure
@ts.write(tuple) if tuple--Makoto Inoue

P1.0
17-May-12
136
#49013: The figure 36 description is reversed. It should say down is equivalent to take and up is equivalent to write. Text currently says: Figur...more...
P1.0
29-Mar-12
162

#49343: From

Rwiki (a dRuby-powered wiki)

To

RWiki (a dRuby-powered wiki) --Makoto Inoue

P1.0
17-May-12
162

#49344: From

similar to Rail’s view helper)

To

similar to Rails' view helper)--Makoto Inoue

P1.0
17-May-12
173

#49345: # fork.rb

result = 0
pid = fork do
result += 1
end Process::waitpid(pid) p result

Missing indentation

--Makoto Inoue

P1.0
17-May-12
221

#48999: Page 221 - CG instead of GC -- from customer feedback.--Ellie @ Support

P1.0
27-Mar-12
235

#49346: From

>> >osx[:msg] = 'linux box to osx'

To

>> osx[:msg] = 'linux box to osx'

--Makoto Inoue

P1.0
17-May-12
239

#49347: From

Changes URI to become method call to GW and W rap

To

Changes URI to become method call to GW and Wrap--Makoto Inoue

P1.0
17-May-12