#682 — December 14, 2023 |
✍️ Christmas is almost here, so we're preparing our annual roundup issue for next week, before we take some time off! Keep an eye out for that next Thursday :-) |
|
Ruby Weekly |
Ruby 3.3.0 Release Candidate 1 Released — We’re now just 11 days from the final release, but Shopify is already using this in production… 😅 There are few changes since preview 3, though I note ‘code GC’ is now disabled by default, but this seems like a good thing for performance in most cases. Yui Naruse |
Everyday Performance Rules for Rails Developers — It’s easy to point the finger at Ruby or Rails when performance drags, but often the issues are database-related or in how the code is written. Following some of these pointers could take you a few steps toward better performance. RoR vs Wild |
Memetria: Secure, Scalable Redis Hosting — High performance Redis hosting with large key tracking, detailed metrics, and a superior uptime record. Memetria sponsor |
Exploring Ruby's Global Constants and Variables — We can probably thank the influence of Perl for the myriad of variables and constants available to a Ruby process, but they can be incredibly useful or even just handy timesavers (e.g. Ariel Juodziukynas (FastRuby.io) |
gemfile.directory: View the Gemfiles of Popular Apps — Such a simple idea, but fun to look around. It’s a presentation of submitted Gemfiles covering apps from folks like GitLab, PlanetScale, and Discourse. You can also look at the top gems referenced in the Gemfiles. Early days, so get submitting. Josh Pigford |
|
📕 Articles & Tutorials |
Mastodon: A Look Behind the Popular Rails-Powered Social App — Mastodon is a hugely popular federated Twitter-a-like social networking system and it’s built on Rails. Lucian casts a Rubyist's eye over the codebase looking at its basic structure, dependencies, and how its tests work. Lucian Ghinda |
🌳 Ready for Ruby 3.3? Upgrade Smoothly with Bonsai by FastRuby.io — Whether you’re on Roda, Sinatra, or Hanami, our fixed-cost, monthly upgrade service can help. One tiny PR at a time. Ruby Upgrades on Autopilot sponsor |
Exploring the Lucian Ghinda |
Ruby 3.3's Prasanth Chaduvula |
How I Brought My Site's LCP Down to Under 350ms for Google-Referred Users — An exploration of the techniques used to optimize performance on a high-traffic site with specific tips for Rails (and Next.js). LCP stands for Largest Contentful Paint and refers to the time it takes for the largest image/text block visible within the viewport to render. Paweł Pokrywka |
Boosting Query Performance with Incremental Materialized Views! — Plug Epsio into your database and boost performance of your most complex queries. It constantly updates query results whenever the underlying data changes, without recalculating. Epsio sponsor |
▶ Lessons From Building GitHub Code Search — It’s not Ruby specific, but it’s interesting. Luke Francl |
Upgrading GitHub.com to MySQL 8.0 — Another GitHub story. Written up, this time :-) Liu, Rogart, and Wu (GitHub) |
Write Resilient Tests with Matchers That Take Other Matchers
|
'Service Objects are Poorly-Named Models'
|
🛠 Code & Tools |
online_migrations 0.10: Catch Unsafe Postgres Migrations in Dev and Run Them Easier in Prod — The extensive README alone is worth the price of admission, but using the gem might save you a few headaches with dangerous migrations on large tables. Dima Fatko |
Wicked: Turn a Rails Controller Into a 'Wizard' — For when you want users to take things step by step. ZomboCom |
MiniLevenshtein: Simple Levenshtein Distance and Similarity Ratios Delon R. Newman |
GraphQL::Coverage: Calculate the Coverage of GraphQL Queries Masataka Pocke Kuwabara |
|
|