From e6ef2080fadc1d9cc837c18630c7bcb8db715f43 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Juan=20V=C3=A1squez?= Date: Mon, 5 Oct 2026 16:59:40 -0600 Subject: [PATCH] Fix stale and redirecting links in the README The SitePoint "Unraveling String Key Performance in Ruby 2.2" URL now redirects to an unrelated article, so point it at the archived original on the Wayback Machine. Update links that only worked through redirects to their final URLs: - derailed_benchmarks moved from schneems to zombocom - tenderlovemaking.com post moved to a trailing-slash path Switch the remaining http links (ruby-doc.org, Rails 5.1 guides, SitePoint) to https. --- README.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 235ff3b..91b565a 100644 --- a/README.md +++ b/README.md @@ -196,7 +196,7 @@ delegated method: 2228579.5 i/s - 2.55x slower ##### `raise` vs `E2MM#Raise` for raising (and defining) exceptions [code](code/general/raise-vs-e2mmap.rb) [custom exception code](code/general/raise-custom-vs-e2mmap.rb) -Ruby's [Exception2MessageMapper module](http://ruby-doc.org/stdlib-2.2.0/libdoc/e2mmap/rdoc/index.html) allows one to define and raise exceptions with predefined messages. +Ruby's [Exception2MessageMapper module](https://ruby-doc.org/stdlib-2.2.0/libdoc/e2mmap/rdoc/index.html) allows one to define and raise exceptions with predefined messages. ``` $ ruby -v code/general/raise-vs-e2mmap.rb @@ -1250,7 +1250,7 @@ Comparison: ##### `Hash#[]` vs `Hash#fetch` [code](code/hash/bracket-vs-fetch.rb) If you use Ruby 2.2, `Symbol` could be more performant than `String` as `Hash` keys. -Read more regarding this: [Symbol GC in Ruby 2.2](http://www.sitepoint.com/symbol-gc-ruby-2-2/) and [Unraveling String Key Performance in Ruby 2.2](http://www.sitepoint.com/unraveling-string-key-performance-ruby-2-2/). +Read more regarding this: [Symbol GC in Ruby 2.2](https://www.sitepoint.com/symbol-gc-ruby-2-2/) and [Unraveling String Key Performance in Ruby 2.2](https://web.archive.org/web/20151222034748/http://www.sitepoint.com:80/unraveling-string-key-performance-ruby-2-2/). ``` $ ruby -v code/hash/bracket-vs-fetch.rb @@ -1275,7 +1275,7 @@ Comparison: ##### `Hash#dig` vs `Hash#[]` vs `Hash#fetch` [code](code/hash/dig-vs-[]-vs-fetch.rb) -[Ruby 2.3 introduced `Hash#dig`](http://ruby-doc.org/core-2.3.0/Hash.html#method-i-dig) which is a readable +[Ruby 2.3 introduced `Hash#dig`](https://ruby-doc.org/core-2.3.0/Hash.html#method-i-dig) which is a readable and performant option for retrieval from a nested hash, returning `nil` if an extraction step fails. See [#102 (comment)](https://github.com/fastruby/fast-ruby/pull/102#issuecomment-198827506) for more info. @@ -1308,7 +1308,7 @@ Comparison: ##### `Hash[]` vs `Hash#dup` [code](code/hash/bracket-vs-dup.rb) -Source: http://tenderlovemaking.com/2015/02/11/weird-stuff-with-hashes.html +Source: https://tenderlovemaking.com/2015/02/11/weird-stuff-with-hashes/ > Does this mean that you should switch to Hash[]? > Only if your benchmarks can prove that it’s a bottleneck. @@ -1818,7 +1818,7 @@ Comparison: ##### `Regexp#===` vs `Regexp#match` vs `Regexp#match?` vs `String#match` vs `String#=~` vs `String#match?` [code ](code/string/===-vs-=~-vs-match.rb) `String#match?` and `Regexp#match?` are available on Ruby 2.4 or later. -ActiveSupport [provides](http://guides.rubyonrails.org/v5.1/active_support_core_extensions.html#match-questionmark) +ActiveSupport [provides](https://guides.rubyonrails.org/v5.1/active_support_core_extensions.html#match-questionmark) a forward compatible extension of `Regexp` for older Rubies without the speed improvement. @@ -2316,7 +2316,7 @@ Feel free to talk with me on Twitter! <3 ## Also Checkout -- [Derailed Benchmarks](https://github.com/schneems/derailed_benchmarks) +- [Derailed Benchmarks](https://github.com/zombocom/derailed_benchmarks) Go faster, off the Rails - Benchmarks for your whole Rails app