small medium large xlarge

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.

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 (26-Nov-15)
#79230
PDF page: 7
In Chapter 3 on the bottom page 7 (Streaming Lines with the -n Switch) of the free excerpt the text after the code snippet " $ printf "foo\nbar\n" | r...more...
  • Reported in: B4.0 (08-Jul-15)
#78578
PDF page: 13
Maybe put an inline reference to an URL where one can get this data? "The National Oceanic and Atmospheric Administration releases data "--James Se...more...
  • Reported in: P1.0 (10-Nov-15)
#79137
PDF page: 20
When having process ids with different digit numbers (ie 3003 and 12755), then using the cut with the space delimiter will not display the smaller num...more...
  • Reported in: P1.0 (08-Dec-15)
#79305
PDF page: 31
There seems to be some HTML mark up left at the bottom of the page (below the FOO/BAR) $ printf "foo\nbar\n" | ruby -ne 'puts $_.upcase' FOO BAR...more...
  • Reported in: P1.0 (18-Dec-15)
#79353
PDF page: 60
Paper page: 47

Second line of "Deleting Elements" section has "... is to to allow ...".

One to too many--Tony

  • Reported in: P1.0 (09-Aug-16)
#80598
Paper page: 85
The code example for LeagueTable#initialize is incorrect, as url as passed in as a method argument, but the first line uses @url ||= 'default' without...more...
  • Reported in: P1.0 (06-Mar-16)
#80051
Paper page: 99

In paragraph 2, 'detect_encoding' should be 'detect_encoding!' (i.e. with a '!' suffix). --Richard Willson

  • Reported in: P1.0 (09-Dec-15)
#79312
PDF page: 134
In chapter 5 (delimited data) there are a couple of places where you refer to $; as a record separator and others as a field separator - also there ar...more...
  • Reported in: P1.0 (02-Mar-17)
#81171
Paper page: 138
The text and code are out of sync and in conflict. - The text is talking about specifying the assignment token, but the code snippet starts with de...more...
  • Reported in: P1.0 (06-Mar-16)
#80052
Paper page: 162

In nlp/simple-search.rb: the return value of 'articles.select' should be assigned to the variable 'matches', not 'articles'.--Richard Willson

  • Reported in: P1.0 (06-Mar-16)
#80053
Paper page: 225
In erb/purchase-ledger-decorators.erb: 'Currency' doesn't match the class name defined in purchase-ledger-decorators.rb, which is 'Dollars'. [In t...more...
  • Reported in: B5.0 (15-Sep-15)
#78827
PDF page: 238
If you want to pipe the contents of a file, you have two options. The first is to use cat. The second is to have the shell pass the file as input, so...more...