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

New
johnp
Hi Brian, Looks like the api for tinydb has changed a little. Noticed while working on chapter 7 that the .purge() call to the db throws...
New
GilWright
Working through the steps (checking that the Info,plist matches exactly), run the demo game and what appears is grey but does not fill th...
New
yulkin
your book suggests to use Image.toByteData() to convert image to bytes, however I get the following error: "the getter ‘toByteData’ isn’t...
New
JohnS
I can’t setup the Rails source code. This happens in a working directory containing multiple (postgres) Rails apps. With: ruby-3.0.0 s...
New
patoncrispy
I’m new to Rust and am using this book to learn more as well as to feed my interest in game dev. I’ve just finished the flappy dragon exa...
New
AndyDavis3416
@noelrappin Running the webpack dev server, I receive the following warning: ERROR in tsconfig.json TS18003: No inputs were found in c...
New
jskubick
I think I might have found a problem involving SwitchCompat, thumbTint, and trackTint. As entered, the SwitchCompat changes color to hol...
New
New
gorkaio
root_layout: {PentoWeb.LayoutView, :root}, This results in the following following error: no “root” html template defined for PentoWeb...
New

Other popular topics Top

AstonJ
What chair do you have while working… and why? Is there a ‘best’ type of chair or working position for developers?
New
Exadra37
Please tell us what is your preferred monitor setup for programming(not gaming) and why you have chosen it. Does your monitor have eye p...
New
AstonJ
There’s a whole world of custom keycaps out there that I didn’t know existed! Check out all of our Keycaps threads here: https://forum....
New
AstonJ
Just done a fresh install of macOS Big Sur and on installing Erlang I am getting: asdf install erlang 23.1.2 Configure failed. checking ...
New
PragmaticBookshelf
Build highly interactive applications without ever leaving Elixir, the way the experts do. Let LiveView take care of performance, scalabi...
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
First poster: bot
The overengineered Solution to my Pigeon Problem. TL;DR: I built a wifi-equipped water gun to shoot the pigeons on my balcony, controlle...
New
First poster: bot
zig/http.zig at 7cf2cbb33ef34c1d211135f56d30fe23b6cacd42 · ziglang/zig. General-purpose programming language and toolchain for maintaini...
New
sir.laksmana_wenk
I’m able to do the “artistic” part of game-development; character designing/modeling, music, environment modeling, etc. However, I don’t...
New
AnfaengerAlex
Hello, I’m a beginner in Android development and I’m facing an issue with my project setup. In my build.gradle.kts file, I have the foll...
New

Sub Categories: