#546 — April 1, 2021 |
😄 Hi folks! There's a time and a place for April Fools' jokes — today is certainly the right time (someone might want to tell Volkswagen that) but this isn't the place, so fingers crossed there aren't any stories that catch me out this week... :-) Also, Jemma is a back with a tip of the week at the end of this issue, so be sure to enjoy that. |
Ruby Weekly |
A Rubyist's Walk Along the C-side: Hello World! — The first in a coming eight part series that takes an accessible tour through the often thorny world of implementing a Ruby extension in C. This introductory post gives you the quickest way to creating a barebones extension. Peter Zhu |
Rails 5.2.5, 6.0.3.6 and 6.1.3.1 Released — Why are these releases significant? They fix the Marcel/MimeMagic dependency issue around licenses that burned super hot last week. George Claghorn |
Long Term Support for Ruby on Rails 4.2, 3.2 and 2.3 - with Support for Ruby 2.7 — Rails LTS provides extended support for old versions of Ruby on Rails. Drop-in gem replacements are available for Rails 4.2, Rails 3.2 and Rails 2.3. You can even run your old Rails app with modern Ruby versions. Rails LTS sponsor |
An Interview with David Heinemeier Hansson — While it does cover Rails’ beginnings, there’s also thoughts on open source and DHH’s campaign against the big tech monopolies and the work on Basecamp’s latest project, the Hey.com email system. Ben Rometsch |
Rails 7 to Allow Run Queries on a Background Thread Pool — Swaathi Kakarla |
Quick Bits
|
💻 Jobs |
Senior Backend Engineer — As part of adidas, we face the challenge of building a top-class backend infrastructure for our fitness apps every day. Runtastic |
Senior Software Engineer (US - Remote-Friendly) — Snapdocs is going through a hyper-growth phase, looking for empathetic Senior Software Engineers as we scale our product and team. Snapdocs |
Find Ruby Jobs with Hired — Take 5 minutes to build your free profile & start getting interviews for your next job. Companies on Hired are actively hiring right now. Hired |
📘 Articles & Tutorials |
Using CockroachDB with Rails — CockroachDB is a scalable, distributed SQL database that boasts being, if set up correctly, almost impossible to take down. Want to use it with Rails? Here’s how. Ali Ibrahim |
Building a Ruby Web App with and without Rails' Libraries — It’s actually an interesting challenge to try and build a Ruby webapp with as few libraries as possible. Sorry, no Sinatra allowed here.. what about going right with the Maple Ong (Shopify) |
Which Is Fastest? ERB vs. HAML vs. Slim — Comparing the speed of different templating approaches took me back to the late 00’s a bit, but it’s nice to still see people running the numbers. They’re all pretty close nowadays. Diogo Souza |
JetBrains RubyMine: A Cross-Platform Ruby & Rails IDE — The 2021.1 release is just around the corner. Learn about the new features for Ruby 3 and RBS support. JetBrains sponsor |
Lazy-Loading Content with Turbo Frames and Skeleton Loader — A solid and concise example of using Turbo Frames to dynamically load content into part of a page. Matt Swanson |
Anything I Want With Sequel and Postgres — Janko demonstrates how the Sequel gem supports advanced features of Postgres, allowing them to bulk import CSV files into a partitioned set of tables that required some obscure PG knowledge. Janko Marohnić |
Timecop vs Rails TimeHelpers — Did you know that Rails has its own TimeHelpers a la Timecop? As Matt demonstrates, you probably won’t be replacing Timecop in your Rails app in the near future (pun intended). Matt Bearman |
Why Write Rails View Tests — Writing integration tests to cover the branches in your views can be time consuming so view tests provide an alternative, says the author. Nikola Đuza |
How I Code Without Service Objects — If you feel like service objects have grown beyond their utility, then Jason’s post will sing to you while showing you how he uses plain-old OOP to get things done. Jason Swett |
Verifying JWTs with JWKS in Ruby — Some best practices around fetching and caching the key set and mitigating other security concerns with JWTs. Unathin Chonco |
🛠 Code and Tools |
Marcel 1.0: Find the MIME Type of Files from Their Contents and/or Filename — If this project sounds familiar, it’s because it was at the center of the MimeMagic/GPL story last week – it now uses a Apache-licensed dataset instead and has dropped the MimeMagic dependency. It’s used by Rails but you can use it just as well from any Ruby code of your own for detecting filetypes. Ruby on Rails Project |
http-clients-benchmark: Benchmarks of Well-known Ruby HTTP Clients — The creator of HTTPX made this repository to keep his “assumptions honest” around how his gem performs against its competition. Honeyryderchuck |
Complete Peace of Mind Rails Hosting OpsCare by reinteractive sponsor |
SimpleDiscussion 1.3: A Simple, Extensible Rails Forum — We first linked this a year ago but it’s just had its first update in a while. I like the feel of the forums it creates. Chris Oliver |
pwned: A Ruby Wrapper for the Pwned Passwords API — Check if a password has been found in any of the huge data breaches. Phil Nash |
devise-two-factor: Barebones Two-Factor (TOTP) Authentication with Devise Tinfoil Security |
Torch.rb 0.6.0: Deep Learning for Ruby — A way to use Torch, an open source machine learning framework (more commonly associated with Python.) Andrew Kane |
|