small medium large xlarge

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

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

If you've found a new error, please submit it.

  • Typo
  • Tech. error
  • Suggestion
  • Maybe next edition
  • Not a problem
  • Reported in: P1.0 (30-Jul-11)
PDF page: vi
Copyeditor is listed as Kim Wimpsett. I thought Molly McBeath was the copyeditor for this one. (The number of people who care might be countable on on...more...
  • Reported in: P1.0 (12-May-12)
PDF page: 5

The image of Figure 1 on the iPad only show the bars in blue and green. No labels or legend. They are blacked out.--Jonathan Lim

  • Reported in: P1.0 (13-Feb-12)
PDF page: 17
There is a typo at the top of the page, in the Joe Asks box, so this: "the test/ directory, refixed with test_, to similarly named files in the lib...more...
  • Reported in: P1.0 (19-Oct-11)
PDF page: 19
In the initial creation of the user2.1_spec.rb, the line: require 'user' should be used just after the the spec_helper require line, in order fo...more...
  • Reported in: P1.0 (12-May-12)
PDF page: 20
Of course, the User class doesn’t exist yet, so the failure of this test will drive us to create it: There is no test yet - we have only written a ...more...
  • Reported in: P1.0 (12-May-12)
PDF page: 26

But it’s essential that we not leave the test in this state.

s/this/that/--Jonathan Lim

  • Reported in: P1.0 (19-Nov-11)
PDF page: 31

Refixed. -> prefixed--Brian maltzan

  • Reported in: P1.0 (20-Oct-11)
PDF page: 45
Three lines from the bottom on page 45 there is the commnad line to create the gem: $ jeweler --rspec --gemcutter --create-repo autotest-stats w...more...
  • Reported in: P1.0 (20-Oct-11)
PDF page: 47

On line 4 from the top the line:

...Firing up autospec ...

shouldn't that be:
...Firing up autotest ...--Kosmas Chatzimichalis

  • Reported in: P1.0 (12-Nov-11)
PDF page: 81
You write the following: ":But first, we have to add it to our Gemfile: $ gem install watchr" Probably meant add it to the GemFile and then u...more...
  • Reported in: P1.0 (24-Oct-11)
PDF page: 82
As the watcher script file can be named everything we want, wouldn't it be a better idea to have the watchr script file (rails.watchr), named with .rb...more...
  • Reported in: P1.0 (24-Oct-11)
PDF page: 88
Would it be a good idea to replace the Spork + Watchr automation with Spork + Guard automation, as Guard seems to be more recently updated? It also u...more...
  • Reported in: P1.0 (22-Jul-11)
Paper page: 88
At the bottom of the page in the "Automating Spork with Watchr", you say "To start out, let's add some watch() for RSpec specs:" and you don't give an...more...
  • Reported in: B4.0 (30-May-11)
PDF page: 91
"So if we restart Watchr and make a change to one of our specs (say, gro- cery_list_spec.rb), we get output that looks like this: Finished in 0.00239...more...
Ben Rady says: The watch('^spec/(.*)_spec\.rb') { |m| run_test_matching(m[1]) } call in the rails.watchr file is intended to handle this case. Is there a problem with that call?

Stuff To Be Considered in the Next Edition

  • Reported in: B2.0 (10-Feb-11)
PDF page: 0

It will be better using "bundler" instead of "jeweler".

  • Reported in: B2.0 (07-Dec-10)
PDF page: 16
I am a newbie to ruby which means I have to follow your book step by step. From page 16, I execute the below two commands with no problem: % gem ...more...
  • Reported in: B1.0 (02-Oct-10)
PDF page: 89
"One great way to create a feedback loop for views in our web application is to turn over responsibility for refreshing the browser to our continuous ...more...