Short Ruby News - Edition #97
You can jump directly to a section:
๐ย All about Code and Ruby: ๐ป Code, ๐Code Design,๐กAround, โค๏ธ Why Choose Ruby
๐งฐย Gems, Libraries, and Updates: ๐ New, ๐งฐ Updates and ๐ Keep an eye on
๐ค Related (but not Ruby-specific)
More content: ๐ ๐ ๐ง ๐ฅ โ๐พ (articles, podcasts, videos, newsletters)
๐ Launches and discounts
๐ย Rinasย launched WhatWentWellToday.com:
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff31d796e-1b54-4085-952f-085889cf2b80_1222x678.png)
๐ With days left to ship 37signals Writebook, Jason Fried shares The Writebook Manual published with Writebook. Take a look.
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08113be0-c252-4ca0-91ea-5c94f59d8309_996x796.png)
๐ Pragmatic Programmers released High Performance PostgreSQL for Rails
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4e7bf44-6d3b-43d3-a69d-1e698db48664_994x1434.png)
๐ Aaron Francis has his video course on High Performance SQLite live!
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F675a1a92-9e99-4591-a988-4dddf26c460d_974x1130.png)
๐
Events
๐ ย Ruby Confย sharedย about early bird tickets mailing list: RubyConf 2024 โ Chicago, IL โย November 13โ15, 2024: Sign-up to learn when more information about RubyConf is available!
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd1bb52eb-3068-4798-ad39-dd456fa043e4_1222x678.png)
๐ A series of meetups will take place this week all around the world:
๐ All about Code and Ruby
๐ J Ruby Dev Team announced a new version v9.3.15.0
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F54c98694-34a7-4312-a38f-bdc5a5f01ffc_1022x466.png)
๐ฅณย Redmine.Jpย sharedย that Redmine is now 18 years old:
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F80c1d827-9c44-4b8c-9f0b-fdc966dff1e4_1218x430.png)
๐ป Code Samples
๐ป Joel Drapper shows us how he models Postmark emails with Literal which highlights the DX(Developer Experience) benefits to using a dynamic type-checker for object properties in Ruby.
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8d74b925-1fef-46c2-a61e-73d7516f75ff_1002x1022.png)
He also shared a benchmark about the Literal:
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9a037cc-b11f-47ea-bd25-27195710a409_1216x290.png)
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2de68f53-4f44-4d85-9758-18b2aa66839b_3192x1208.png)
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83faed00-893d-4a76-a5f0-6dafa59f71cc_3228x3080.png)
๐ป Prabin Poudel shared a tip on how to use Rails alongside Tailwind CSS elegantly
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d2897d8-0e5e-4a0a-9b82-7c6fb3ae4fda_1012x714.png)
๐ป Chris Oliver shared his newly found knowledge on when to use __FILE__ or __dir__ to get a directory
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08163443-ac9f-44c9-9331-9155aa34214f_1002x376.png)
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8785ae37-f9cd-4ef3-bcff-0766babc6e12_2170x1594.png)
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fea1ef154-2def-4459-969d-4b4abf8d9ade_1970x1564.png)
๐ป Ruby Cademy shared a tip on how to use ActiveSupport::Duration to convert seconds to user friendly format.
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7bd55d2-ade9-4e9a-8912-26f7f5404af8_1000x732.png)
They shared another tip on how to find records using signed IDs safely:
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1cb08d4-2600-4775-80ec-aeaf63541ec3_994x914.png)
๐ป Greg Navis shared a detailed thread explaining how Rails makes it trivial to select records without a corresponding association. Go through the thread to get more context, but here is a gist of it.
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3056f5aa-d519-43ef-92b5-76f44f58e534_1000x426.png)
If a Summary belongs to a job ad and a JobAd
has at most one summary,
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4071f55f-6998-4071-b788-3040a5f58391_1000x952.png)
But instead of the above-said approach, you can easily attain the same result using where.missing
:
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa8028a8b-14e7-4e93-bc84-0448e1de56e9_968x562.png)
๐ปย Nate Berkopecย asked about a way to check if has_many relation contains any unpersisted records without trying to load the relation from the DB:
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe5748f48-32f6-40ca-a8fc-3d02a095a5db_1222x678.png)
Keygenย replied, proposing target as the solution
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7c3f409-ad50-4429-9870-85a5fe727a66_1222x296.png)
๐ปย Ruby Cademyย sharedย about using pick instead of pluck:
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f68b598-6d1e-4575-9570-5316ea4f0d6a_1226x1034.png)
๐ปย Juraj Kostolanskรฝย sharedย a code sample about disabling CSP for ActiveStorage:
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc7d774e-a83c-4bc3-afdb-21e5a00dfb6b_1224x928.png)
๐ปย Ismael Celisย sharedย about composable structural validation in Ruby:
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0b23a0e7-84e6-4896-a67c-ccab04752e25_1230x1854.png)
๐ปย Nate Hopkinsย sharedย a code sample about running Falcon with Rails:
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d5d4b5a-0723-4da5-8c1e-b6251e007b5e_1212x604.png)
Samuel Williamsย sharedย a link to Browser Configuration for localhost
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3009e1fd-11fc-4a5d-b012-2e7879c14aa2_1224x434.png)
๐ปย Igor Alexandrovย sharedย about Rails method upcase_first:
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F67beafa8-5a73-43dc-b8c1-54309f2385e1_1216x952.png)
๐ปย Brad Gesslerย sharedย about defining a method on the object:
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6075ce40-4ffa-41e7-b034-8d4a9d4f8489_1216x1148.png)
Here are some interesting discussions about this:
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6bfd1c26-53a5-4aa5-bd88-e4c559f6cd06_1222x340.png)
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1b2ef019-0be0-4c47-8e76-eeb4b8c7552e_1230x922.png)
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ad06830-be1d-4021-9ddd-3e2dee479733_1236x520.png)
๐ปย Josef Strzibnyย sharedย that Rails now supports Cache-Control immutable:
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffed2db34-e3c9-4988-a159-c4f458d3fd2d_1238x910.png)
๐ปย Michael Koperย sharedย about service objects:
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F24bf4401-94cc-434a-8be2-a7e29f9bd968_1226x1324.png)
๐ปย Dima Fatkoย sharedย about sidekiq-iteration gem being merged into Sidekiq:
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2f09225-1e2b-47d2-b29a-4791d39a9dd6_1226x1560.png)
๐ปย Maciej Mensfeldย sharedย about implementing stateful, complex workflows as code in Karafka:
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdab7122a-d18d-4758-8b42-1024f3f84bd4_1222x1286.png)
๐ปย Ruby Cademyย sharedย a reminder of some of the most popular naming conventions in Ruby:
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faeb626ff-1f1e-4720-a799-0d822668ca4b_1224x1792.png)
๐ Thinking about Code Design
๐ ย Koichi Sasadaย posted research of how many times each and map was called in all Ruby gems:
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d2e6823-0190-45f1-88b6-5b1773bdec33_1222x694.png)
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F11df96a9-667b-4808-83e1-56fe3c7b95e8_1220x472.png)
He alsoย sharedย Top 1000 longest method names and the most used variable names.
ย ๐ย Nate Hopkinsย sharedย an idea that ActiveSupport::Cache::Memory store is under utilized pattern:
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F588856b2-5b4d-47cb-a5cd-aaa607a0fb74_1220x288.png)
He gave an example:
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faa123fda-b7bb-430e-80d2-f309764dec36_1224x860.png)
ย ๐ย Nate Berkopecย sharedย rails/activerecord/lib/active_record/relation.rb at 19eebf6d33dd15a0172e3ed2481bec57a89a2404 ยท rails/rails
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa813a174-8d06-4226-bc35-cc0d09258450_1218x390.png)
ย ๐ Mike Coutermarshย sharedย about Github Architecture:
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0842571f-033d-4d5d-98e3-829189c86514_1224x796.png)
๐ก Around code (news, findings, books, and more - all about Ruby)
๐ก Ruby On Rails shared a Rails 7.1 command to find unused routes, which may speed up boot time or help remove dead code
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F836d6082-e681-4a26-bbdf-e99e9d1bd212_1012x842.png)
๐ก Lucian Ghinda shares his finding on how Ruby had a dotenv gem before Javascript and that the concept originated from Heroku which was first adopted in the Ruby community.
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd64fe0d2-946a-496a-af65-65170b68dc2f_1002x824.png)
๐ก Chris Oliver shares a new update to noticed, which adds a recipients feature for defining recipients inside the notifier.
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fd6c982-5151-48a6-ba50-a52556ac5fec_1206x1160.png)
๐กย Jason Friedย sharedย about using Writebook:
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe19d56c-ef0b-49e4-844c-4779edb2a9f4_1222x1054.png)
โค๏ธ Why Choose Ruby
โค๏ธย Igor Alexandrovย sharedย about Rails being the most efficient tool in terms of speed and final results:
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1941b891-24c6-4b6c-aeb9-cb15c1415023_1216x438.png)
โค๏ธย Haseeb sharedย about how fast prototyping is with Rails:
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feff35b63-a6ef-4924-83e2-0f3e22dfc404_1218x390.png)
๐งฐ Gems, Libraries, Tools and Updates
๐ New Gems and Repos
๐ Jacapo Beschi announced a new gem Homographic Spoofing: a new Ruby toolkit
๐ Hiroshi SHIBATA published a new project called gem-codesearch - Set up a full text code search engine for rubygems mirror
๐ Mike Perham welcomes contributions to his new background job benchmark suite job_roundup.
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee03f1c4-3da8-492e-868f-a53bac3efb3b_1234x378.png)
๐ Kuba Suder shared his project remindbot - a Simple Mastodon command line bot for sending single DMs
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe94c3aa3-24ee-49d7-ac6d-1dc55d92b1fc_1260x830.png)
๐งฐ Updates
๐งฐ Postmodern announced the release of Ronin 2.1.0 open beta that includes a lot of changes. Here is a list of new libraries supported:
๐งฐ Andrei Kaleshka announced a new version of actual_db_schema gem with new task to manually roll back phantom migrations.
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd827b6a-5f04-445e-aa3d-fa73b1dd91ac_1006x746.png)
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F289ced79-f87f-479c-b8b7-b6f03a8d21ad_992x380.png)
๐งฐ Jeremy Evans announced a new version Tilt 2.4.0
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8848b8b-56d1-434e-a792-1531ffbeb08a_1004x864.png)
๐งฐย Kasper Timm Hansenย announced a new version ofย oaken - A fresh blended alternative to Fixtures & FactoryBot for dev and test data - version 0.7.0
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F93b64b53-636a-4e93-a2b2-0a678b967cb8_1222x528.png)
๐ Keep an eye on
๐ Valentino Stoll is building RubyLang.ai: A fine-tuned LLM for Ruby
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa200f805-5827-4f99-a4c3-ceb5faf2b0ef_1002x266.png)
๐ Stan Lo has a new PR open tpo Provide code navigation features to erb files in Ruby LSP
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F83dbed37-ecb2-44ea-ab91-7b3706c09480_1256x1090.png)
๐ค Related (but not Ruby-specific)
๐ค Yaroslav Shmarov shows us how to make credentials diff readable in Git
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57d3d347-d793-419f-b883-31372b7c1a66_1010x1314.png)
๐ค Jason Fried talks about The Golden Path and how his favorite thing about designing software is designing the defaults
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff6a60779-3210-4dff-8359-d6fc4f592f9f_1016x1522.png)
๐ค Justin Jackson discussed the marketing strategy employed by Aaron and Steve in selling their new course. Listen to his interesting analysis:
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ba7cb3f-9732-4727-bcf1-c6b453454932_1010x1072.png)
๐คย Jon Yongfookย sharedย about focusing on what to build:
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8193b98f-b4c4-4e36-93fa-6b891a33d0d1_1220x620.png)
More content: ๐ ๐ ๐ง ๐ฅ โ๐พ
Marco Rothย sharedย their slides from Brighton Ruby The Hotwire Landscape After Turbo 8 @ Brighton Rubyย 2024
๐ Newsletters
๐ This Week in Rails published a newsletter on Immutable Rails Cache Header, Local Assigns in Strict Local Templates, Threaded Active Storage Mirror Service
๐ Ruby Weekly published a new edition about In Ruby, a method without side effects should be public
๐ Awesome Ruby Newsletter published Awesome Ruby Newsletter - Issue 423
๐ย Hotwire Weeklyย published a new edition aboutย Week 26 - Hotwire Voting and Flash Messages, Django Components with Stimulus, and more!
๐ง Podcasts
๐ง The Rails Changelog published a new podcast episode 024: Structuring Rails Apps with Matt Swanson
๐ง Tune in to The Ruby on Rails Podcast Episode 518: Live From The Rails Conf Hallway Track!
๐ง Listen to the Bike Shed podcast The Bike Shed: 430: Test Suite Pain & Anti-Patterns
๐ง Jason Swett published a new podcast Matthew Kaliara, CTO and Co-Founder at Rescale - The Code with Jason Podcast
๐ง Remote Ruby published a new episode about Desks, Deployments, and Databases
๐ฝ๏ธ ๐ฅ Videos
Screencasts
๐ฅย Pascal Lalibertรฉย published a new video aboutย Hotwire's Morph has a small gotcha. If nothing changes on the page as you click a button or submit a form, you might have to remove a turbo frame.
๐ฅ Ben Curtis shared Debugging a slow Rails controller with Honeybadger Insights
๐ฅ Dean De Hart published a new video about Inertia JS on Rails Made Easy with React and Tailwind
๐ฅ Yaroslav Shmarov published Sell access to a Github Repository. Sell your code! and about Add a "Sign in with Apple" button to your app!ย
๐ฅ Confreaks, Llc shared a playlist of Blue Ridge Ruby 2024
๐ฅ Max Vel Dink shared his talk from Blue Ridge Ruby 2024 | Refactoring: The ASMR of Programming
๐ฅ Dave Kimura published a new video about HotwireCombobox
๐ฅ Graceful.Dev published a new video about Ruby Symbol Literals
๐ฅ Rails Conf shared RailsConf 2024 Recap
๐ฅย Top End Devsย published a new video aboutย Ruby as a sleeping giant for AI application development with Scott Werner
๐ฅย Samuel Williamsย published a new video aboutย Real time page reloading during editing using live WebSocketsย
๐ฅย Drifting Rubyย published a new video aboutย Using LLMs to Generate Tags
๐ฅ Jason Swett published a new video about Capturing the Leaky Stream Bug in a Test - Live Coding on SaturnCI
โ๐พ Articles
Whatโs new ๐
๐ Ben Greenberg published an article about Rails Caching With Couchbase in Under 5 Minutes
๐ Eminkel published a new article on Easy Postgres backups
๐ Jeffery Morhous published an article about API versioning in Ruby on Rails
๐ Michael Chaney published an article about Refactoring fix_encoding
๐ Augusts Bautra published an article about TIL custom order with .in_order_of
๐ Sara Jackson published an article A pragmatic guide for adding React to an existing Rails application (and still use Hotwire)
๐ Michael Chaney published an article about Inserting and Selecting New Records - One Query
๐ Remi Mercier published an article about Add comments to your tables columns
๐ Michael Chaneyย published an article aboutย Inserting and Selecting New Records - One Query and Making Common Table Expression SQL More Railsy
๐ Max Mulatzย published a new article about published an article aboutย How even the simplest RAG can empower your team
๐ Steve Polito published an article aboutย A pragmatic guide for adding React to an existing Rails application (and still use Hotwire)
๐ Andres Chaconย published an article aboutย ActiveRecord::Enum persisted in a string field. Is it a bad idea?
๐ต๏ธ Deep-Dive
๐ต๏ธ Stefan Wienert published an article about Using 'Packs' (a.k.a Packwerk) as code organization / Engine alternative' - Starting point and recipes
๐ต๏ธ Ajithkumar P S published an article that dives deep into the asset pipeline of Rails 7 so, Do you know how the delivery of assets works in your Rails 7 app?
๐ต๏ธ Jp Camara published a new article - Your Ruby programs are always multi-threaded: Part 2
๐ต๏ธ Urszula Soลogub published an article about The Deadly Sins in RoR security - SQL Injection
How-TOs ๐
๐ Learn How to fix a segfault in Ruby from Dmitry Daw.
๐ Ryan Biggย published an article aboutย Decreasing Ruby app build times
๐ Samuel Williams published a guide on How to get started with Async::HTTP
๐ Akshay Khot published an article on How to Access Raw POST Data in Rails
๐ย Yusuke Endoh published a new article aboutย RubyใงSlackใฎใใใใๆธใๆนๆณ๏ผใชใในใ่ชๅใง๏ผ - ใพใใใ / How to write a Slack bot in Ruby (preferably by yourself)
๐ Rails Designer published an article aboutย How to add โSave and add anotherโ feature to Rails apps
๐ Daniel Nolan published an article aboutย Using OpenAI ChatGPT Assistants API to Build a Landscape Assistant
Related
โ๏ธ Karl Oscar Weberย published an article aboutย Capsule - A Startup in a box
โ๏ธ Keshav Biswa shared his talk slides on Journey of writing a programming language