Oli0li

Oli0li

Programming Ruby 3.2 (5th Edition):B3.0 Typos ("the the", "covert" and others)

First of all, thank you so much @noelrappin for writing this book, I am just starting with Ruby and this book is very helpful.
I just wanted to report some typos I came across on several pages in the book. Here they are:

“the the” → “the”

  • p 23: The username is not in any way connected to your Windows account—it’s a brand new account for the the Linux distribution you’ve installed using WSL.
  • p 98: In this case, we’ve attached separate methods to each of the the two instances, so calling introduction on each instance behaves differently.
  • p 117: The require call is at the the file level, and loads the module into the Ruby application as whole, the include call is at the class level, and adds the module’s behavior to the class in which it is included.
  • p 229: We can run our tests at this point with the same command, and we’ll see the test fail because the the TennisScorer class doesn’t exist.
  • p 255: You can find a list of the the tasks implemented by a Rakefile
  • p 314: Here’s what the the Finder class looks like with Sorbet annotations added:
  • p 455: For the three-dot form of a range, if the flip-flop is unset and expr1 is true, the flip-flop becomes set and the the flip-flop returns true.
  • p 468: If the object prefixed by a block responds to to_proc, then to_proc is invoked and the resulting proc passed to the the method
  • p 497: The sibling log methods log10 and log2 are also available and return the the log of the argument in the base of the method name.
  • p 518: The method delete! does the same thing, but mutates the receiving string and returns the the mutated string.
  • p 533: The block is then called with that 7 as the first argument and the the third element of the list—9—as the next argument.
  • p 547: The greater then/less than behavior is based only on the relationship between the the two sets, not the values of the elements.

“covert” → “convert”

  • p 491: The strptime method uses the format string to interpret the string and covert it to a Time.
  • p 502: Any other type as the first value, and Ruby attempts to convert it to a string using to_str and parses that string (per the documentation, it does not appear that Ruby attempts to covert to a number).

Other

  • p 104: In the previous example, we’d might want to make the helper methods private,
    because they shouldn’t be called from outside the InvoiceWriter class
    → I believe it should be either “would” or “might”

  • p 109: Now that we have methods, we need to talk about how different classes can share functionality defined by there methods, it’s time to talk about inheritance and modules.
    → should read “their methods”

  • p 114: The is a common idiom when using subclassing.
    → should read “This is”

First Post!

noelrappin

noelrappin

Author of Modern Front-End Development for Rails

Thanks! This is very helpful!

Where Next?

Popular Pragmatic Bookshelf topics Top

brianokken
Many tasks_proj/tests directories exist in chapters 2, 3, 5 that have tests that use the custom markers smoke and get, which are not decl...
New
jesse050717
Title: Web Development with Clojure, Third Edition, pg 116 Hi - I just started chapter 5 and I am stuck on page 116 while trying to star...
New
cro
I am working on the “Your Turn” for chapter one and building out the restart button talked about on page 27. It recommends looking into ...
New
jskubick
I’m running Android Studio “Arctic Fox” 2020.3.1 Patch 2, and I’m embarrassed to admit that I only made it to page 8 before running into ...
New
jskubick
I’m under the impression that when the reader gets to page 136 (“View Data with the Database Inspector”), the code SHOULD be able to buil...
New
jskubick
I found an issue in Chapter 7 regarding android:backgroundTint vs app:backgroundTint. How to replicate: load chapter-7 from zipfile i...
New
brunogirin
When installing Cards as an editable package, I get the following error: ERROR: File “setup.py” not found. Directory cannot be installe...
New
dsmith42
Hey there, I’m enjoying this book and have learned a few things alredayd. However, in Chapter 4 I believe we are meant to see the “>...
New
taguniversalmachine
Hi, I am getting an error I cannot figure out on my test. I have what I think is the exact code from the book, other than I changed “us...
New
kolossal
Hi, I need some help, I’m new to rust and was learning through your book. but I got stuck at the last stage of distribution. Whenever I t...
New

Other popular topics Top

PragmaticBookshelf
Instantly view the changes you make to an app with stateful hot reload, and define a declarative UI in the same language as the app logic...
New
New
PragmaticBookshelf
Write Elixir tests that you can be proud of. Dive into Elixir’s test philosophy and gain mastery over the terminology and concepts that u...
New
AstonJ
Do the test and post your score :nerd_face: :keyboard: If possible, please add info such as the keyboard you’re using, the layout (Qw...
New
AstonJ
Continuing the discussion from Thinking about learning Crystal, let’s discuss - I was wondering which languages don’t GC - maybe we can c...
New
PragmaticBookshelf
Author Spotlight: Peter Ullrich @PJUllrich Data is at the core of every business, but it is useless if nobody can access and analyze ...
New
New
PragmaticBookshelf
A concise guide to MySQL 9 database administration, covering fundamental concepts, techniques, and best practices. Neil Smyth MySQL...
New
PragmaticBookshelf
This book forgoes the abstract and instead provides concrete examples to help you better leverage the unique properties of Elixir, Erlang...
New
PragmaticBookshelf
As digital systems increasingly run the world, mastery of the recurring patterns of software development risk is the key to fast and effe...
New

Sub Categories: