
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”
Popular Prag Prog topics

Whilst the author has been careful to provide exact results for the tests elsewhere in the book (such as surds with the transformation te...
New

Running the examples in chapter 5 c under pytest 5.4.1 causes an AttributeError: ‘module’ object has no attribute ‘config’.
In particula...
New

Following the steps described in Chapter 6 of the book, I’m stuck with running the migration as described on page 84:
bundle exec sequel...
New

Page 28: It implements io.ReaderAt on the store type.
Sorry if it’s a dumb question but was the io.ReaderAt supposed to be io.ReadAt?
...
New

The book has the same “Problem space/Solution space” diagram on page 18 as is on page 17. The correct Problem/Solution space diagrams ar...
New

Hi, I have just acquired Michael Fazio’s “Kotlin and Android Development” to learn about game programming for Android. I have a game in p...
New

Is there any place where we can discuss the solutions to some of the exercises? I can figure most of them out, but am having trouble with...
New

On page 78 the following code appears:
<%= link_to ‘Destroy’, product,
class: ‘hover:underline’,
method: :delete,
data: { confirm...
New

Hi, I’ve got a question about the implementation of PubSub when using a Phoenix.Socket.Transport behaviour rather than channels.
Before ...
New

Title: Agile Web Development with Rails 7: (page 70)
I am running windows 11 pro with rails 7.0.3 and ruby 3.1.2p20 (2022-04-12 revision...
New
Other popular topics

Which, if any, games do you play? On what platform?
I just bought (and completed) Minecraft Dungeons for my Nintendo Switch. Other than ...
New

Why, if your answer is yes?
New

On modern versions of macOS, you simply can’t power on your computer, launch a text editor or eBook reader, and write or read, without a ...
New

Think Again 50% Off Sale »
The theme of this sale is new perspectives on familiar topics.
Enter coupon code ThinkAgain2021 at checkout t...
New

Intensively researching Erlang books and additional resources on it, I have found that the topic of using Regular Expressions is either c...
New

Large Language Models like ChatGPT say The Darnedest Things.
The Errors They MakeWhy We Need to Document Them, and What We Have Decided ...
New

Author Spotlight:
Sophie DeBenedetto
@SophieDeBenedetto
The days of the traditional request-response web application are long gone, b...
New

A Ruby-Centric Chat with Noel Rappin @noelrappin
Once you start noodling around with Ruby you quickly figure out, as Noel Rappi...
New

This is cool!
DEEPSEEK-V3 ON M4 MAC: BLAZING FAST INFERENCE ON APPLE SILICON
We just witnessed something incredible: the largest open-s...
New

A new Kubuntu blog post/announcement has been posted!
Get the full details here: https://kubuntu.org/news/kubuntu-25-04-plucky-puffin-r...
New
Latest in PragProg
Latest (all)
Categories:
Popular Portals
- /elixir
- /rust
- /wasm
- /ruby
- /erlang
- /phoenix
- /keyboards
- /js
- /rails
- /python
- /security
- /go
- /swift
- /vim
- /clojure
- /java
- /haskell
- /emacs
- /svelte
- /onivim
- /typescript
- /crystal
- /c-plus-plus
- /tailwind
- /kotlin
- /gleam
- /react
- /flutter
- /elm
- /ocaml
- /vscode
- /opensuse
- /ash
- /centos
- /php
- /deepseek
- /zig
- /scala
- /html
- /debian
- /nixos
- /lisp
- /agda
- /sublime-text
- /textmate
- /react-native
- /kubuntu
- /arch-linux
- /ubuntu
- /revery
- /manjaro
- /django
- /spring
- /diversity
- /lua
- /nodejs
- /julia
- /c
- /slackware
- /neovim