#642 — February 23, 2023 |
|
Ruby Weekly |
The Case Against Monkey Patching (From a Rails Core Team Member) — Eileen (who we interviewed a couple of years ago) makes a solid case against monkey patching, what to do instead, and why refinements aren’t much better. She speaks from experience, so if you are living with a load of patches, follow Eileen out of the quagmire. Eileen Uchitelle |
It's Official: The Standard Ruby VS Code Extension — Standard is a Ruby style guide, linter and formatter created by TestDouble, and it now has a ‘distressingly fast’ VS Code extension to really up the ante for almost real-time code formatting. Justin Searls (Test Double) |
Introducing AppSignal for Hanami — AppSignal integrates seamlessly with Hanami 2.0 to provide action-level insights, making it easier for you to ensure a smooth-running application. Monitor your Hanami app with a stroopwafel in your hand 🍪 AppSignal sponsor |
'Whatever Happened to Ruby?' — It’s not all sunshine and rainbows, but it’s always interesting to see a big outlet cover Ruby, and while Ruby isn’t exactly going to eat Java anymore, it has become entrenched in its niche. As Matthew Boeh is quoted: “Ruby is never going to be the Next Big New Thing again, but I think it’s here to stay.” Josh Fruhlinger (Infoworld) |
Creating an Intelligent Knowledge Base Q&A App with GPT-3 and Ruby — The example answers questions about a company by comparing the semantic values of questions to the text of different pages on the site, creating an AI-based FAQ of sorts. Kane Hooper |
QUICK BITS
|
📕 Tutorials and Articles |
How to Find a Memory Bloat in a Rails App Before It Happens — Since most of the memory issues in an app happen around I/O (specifically, database I/O), if we ratio the data loaded to the response size, maybe we can find future sources of bloat? Dmitry Tsepelev |
Duped Into Modifying a Frozen Hash — Calling freeze on an object may not provide the immutability you expect. Kevin looks at a few nuances around freezing hashes and how Kevin Murphy |
🚀 Monitor and Optimize Website Speed to Rank Higher in Google — Monitor Google's Core Web Vitals and optimize performance using in-depth reports built for developers. Improve SEO & UX. DebugBear sponsor |
You Don't Need Rails to Start Using Hotwire — Hotwire, an ‘HTML over the wire’ approach to making Web pages more dynamic (explained here), is closely tied to Rails, but Rails isn’t a must. Indeed, Akshay shows us how it can work on a totally static site here. Akshay Khot |
Storing Ephemeral UI State with Kredis for Rails — Kredis (Keyed Redis), an official Rails sub-project, wraps the usual Redis client library and simplifies working with structured data in the popular data store. Julian Rubisch |
How Basecamp Stands to Save Millions From 'Cloud Exit' — As 37signals runs some of the largest Rails apps out there, it’s interesting to see their rationale and plan to ‘leave the cloud’ for self-hosted infrastructure after many years on AWS. David Heinemeier Hansson |
How Fly.io Will Use Rails 7.1's New Health Checks Feature — Rails 7.1 is adding a discoverable app health check feature. Sam Ruby |
Need to Upgrade Your Rails App but Don't Have the Time or Resources? We Can Help reinteractive Pty Ltd sponsor |
Writing JavaScript Without a Build System — Certainly something that appeals to me as a Rubyist. Julia Evans |
Deploying Hanami Apps to Render
|
How Rails Authenticity Tokens Protect Against CSRF Vulnerabilities
|
How This Year's RailsConf Tracks Can Help You Become a More Well Rounded Developer
|
🛠 Code & Tools |
Karafka Web UI: A New Way to Watch Karafka — Karafka is a popular Apache Kafka-based processing framework for Ruby and Rails, and it now includes a “Sidekiq-inspired” Web-based UI to give you more visibility into operations. It’s built using Roda and can be mounted into Rack and Rails apps. Maciej Mensfeld |
Authentication Zero: Auth System Generator for Rails — Rather than being an authentication library, this generates a pre-built authentication system within your app directly which you can then modify as you see fit. Lázaro Nixon |
Don’t Let Your Issue Tracker Be a Four-Letter Word. Use Shortcut Shortcut (formerly Clubhouse.io) sponsor |
Terrapin 1.0: Run Shell Commands Safely — A little extra abstraction for running shell commands that provides safer interpolation, particularly if using user-supplied values. thoughtbot, inc. |
Deprecation Toolkit: Eliminate Deprecations From Your Codebase — Extends either Minitest or RSpec to track both existing and new deprecations. Shopify |
|
|
💪 Rust is Easier than Ruby? |
This comes from Sean Walker over on Twitter: |
At the risk of playfully and deliberately misinterepreting the intended point, I'm temporarily going to feel good about using a harder language like Ruby for now.. 😁 (More context, if you want it.) |