---
title: "Yabeda: A Modular Framework for Instrumenting Ruby Apps"
publication: "Ruby Weekly"
issue: 422
published_at: "2018-10-25"
canonical_url: "https://rubyweekly.com/issues/422"
---

This week's Ruby news, issue 422       

#422 — October 25, 2018 

[Read on the Web](https://rubyweekly.com/issues/422)   

Ruby Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/ymqc1572p2fl27lgmxh6.jpg)](https://evilmartians.com/chronicles/meet-yabeda-modular-framework-for-instrumenting-ruby-applications)  

[Yabeda: A Modular Framework for Instrumenting Ruby Apps](https://evilmartians.com/chronicles/meet-yabeda-modular-framework-for-instrumenting-ruby-applications) — _“Adopt metrics-driven development with an extendable framework that supports Rails, Sidekiq, and Prometheus out of the box.”_ There’s a lot to dig into here. 

Evil Martians   

[Distributed Cron for Rails Apps with Sidekiq Scheduler](https://godaddy.github.io/2018/10/15/distributed-cron-for-rails-apps-with-sidekiq-scheduler/) — This is a nice article on what has to be a common issue in larger applications that have background jobs. 

GoDaddy   [![\](https://copm.s3.amazonaws.com/a5647c1e.png)](https://www.citusdata.com/blog/2017/01/05/easily-scale-out-multi-tenant-apps/?utm_source=ruby_weekly&utm_medium=email&utm_campaign=sponsor_blog) 

[Scaling Out Multi-Tenant Rails Apps on Postgres, the Citus Way](https://www.citusdata.com/blog/2017/01/05/easily-scale-out-multi-tenant-apps/?utm_source=ruby_weekly&utm_medium=email&utm_campaign=sponsor_blog) — The activerecord-multi-tenant Ruby gem is Lukas’s recommended gem if you want to make it easy to scale out your multi-tenant Rails app on Postgres & Citus. 

CITUS DATA sponsor   

[Hyperstack: Build Client-Side Webapps with Ruby](https://hyperstack.org/) — Formerly known as _Hyperloop_, Hyperstack is a Ruby-based DSL and toolkit for building front-end webapps where the Ruby code gets compiled into JavaScript using Opal. 

Chang, VanDuyn, Creekroad, et al.   

[Hanami v1.3.0 Released](http://hanamirb.org/blog/2018/10/24/announcing-hanami-130.html) — [Hanami](http://hanamirb.org/) is an interesting Ruby webapp framework that’s been growing in popularity recently. This latest release switches testing over to RSpec and they have a fantastic new [‘guides’ site](https://guides.hanamirb.org/) with tutorials on [getting started with Hanami](https://guides.hanamirb.org/introduction/getting-started/) for yourself. 

Luca Guidi   

[Thoughtbot Opens Up Its Online Ruby Courses to Everyone](https://robots.thoughtbot.com/announcing-upcase-is-free) — Some years ago, Thoughtbot launched _Upcase_, a platform for learning Ruby and Ruby-related skills via online courses. This is now free for everyone and includes courses on TDD, Vim, Git, advanced ActiveRecord, etc. 

Thoughtbot   

[Cache Invalidation Complexity: Rails 5.2 and Dalli Cache Store](https://blog.heroku.com/cache-invalidation-rails-5-2-dalli-store) — Rails 5.2 adds a way to configure recyclable cache keys, which will not work if you’re using the Dalli Cache store. Here’s why, followed by what to do. 

Heroku  

💻 Jobs  

[Senior Ruby Engineer (Portland, OR or Pasadena, CA USA)](https://www.goldstar.com/company/careers) — Seeking a mid/senior Ruby engineer to help us change the live events industry. This is a great chance to make a huge impact. 

Goldstar   

[Mid-Level Full Stack Engineer @ HITRECORD (Full Time, Los Angeles)](https://hitrecord.org/jobs) — Looking for an experienced Angular/Ruby & Rails developer to join a small but dynamic team to grow a platform for creative collaboration. 

Hitrecord   

[Join Our Career Marketplace & Get Matched With A Job You Love](https://www.hired.com/ruby) — Through Hired, software engineers have transparency into salary offers, competing opportunities, and job details. 

Hired  

📘 Articles & Tutorials  

[Tab Completion in GNU Readline: Ruby Edition](https://robots.thoughtbot.com/tab-completion-in-gnu-readline-ruby-edition) — A look at both using Readline to create text inputs in a Ruby CLI app and then how to add tab completion to those inputs. 

George Brocklehurst   

[How To Execute RSpec in Parallel Locally](https://devopsvoyage.com/2018/10/22/execute-rspec-locally-in-parallel.html) 

Leszek Zalewski   

[The Innards of a RubyGem](https://blog.appsignal.com/2018/10/23/the-innards-of-a-ruby-gem.html) — _“Gather ’round children, and let grandpa recount the ways of the old days when life was hard, and installing gems was a headache-inducing, hair-pulling, teeth-gritting ordeal.”_ 

Robert Beekman   

[Rails 5.2 Adds DSL for Configuring the 'Content Security Policy' Header](https://blog.bigbinary.com/2018/10/23/rails-5-2-adds-dsl-for-configuring-content-security-policy-header.html) — CSP can be used to specify domains that are valid sources for various assets (scripts, images, fonts, etc.) 

Sushant Mittal   

[Nine Tips for Rails Migration Mastery](http://nelsonware.com/blog/2018/09/27/nine-tips-for-rails-migration-mastery.html) — Just can’t ever have enough tips on migrations. 

Michael Nelson   

[CircleCI Launches Support for GitHub Checks](https://circleci.com/blog/see-the-status-of-your-circleci-workflows-in-github/?utm_source=cooperpress&utm_medium=newsletter&utm_campaign=oct18&utm_content=ruby-weekly) — Now integrating with the GitHub Checks API, so you can see the status of your workflows under the Pull Request Checks tab in the GitHub UI. 

CircleCI sponsor   

[Ruby 2.6's `Range#cover?` Now Accepts a `Range` Object As An Argument](https://blog.bigbinary.com/2018/10/24/ruby-2-6-range-cover-now-accepts-range-object.html) 

Abhay Nikam   

[Debugging a Silently Failing Webpacker Compilation](http://nts.strzibny.name/debugging-silently-failing-compilationer-aka-webpacker-cant-find-application-js-in-public-packs-manifest-json/) — The lesson: _“don’t put `webpack-cli` package only as a dev dependency if you need to do the compilation on the server.”_ 

Josef Strzibny   

[How Does Devise Keep Your Passwords Safe?](https://medium.com/@alvesjtiago/how-does-devise-keep-your-passwords-safe-d367f6e816eb) — or, “Tales from the enCRYPTion” (What? It’s almost Halloween.) 

Tiago Alves   

[Writing Less Error-Prone Code](https://robots.thoughtbot.com/writing-less-error-prone-code) — Valuing readability over conciseness along with enabling “copy & paste”-ness lead to less error prone test code in the long run. 

Thoughtbot  

🔧 Code & Tools  

[minitest-mock_expectations 1.0.0 Released](https://bogdanvlviv.com/posts/ruby/minitest/minitest-mock_expectations-1_0_0-released.html) — An alternative to Mocha if you’re in the minitest ecosystem. [GitHub repo.](https://github.com/bogdanvlviv/minitest-mock_expectations) 

Bogdan Denkovych   

[TTY::Config: Define, Read and Write Ruby App Configurations](https://github.com/piotrmurach/tty-config) 

Piotr Murach   

[Falcon: A Modern High-Performance Web Server for Ruby, Supporting HTTP/2 and HTTPS Out of the Box](https://github.com/socketry/falcon) — We featured this last week, but just in case you missed it.. 

Socketry   

[Monitor and Analyze Ruby App Performance in Real-Time. Try Datadog Free](https://www.datadoghq.com/dg/apm/ruby-tracing/?utm_source=Advertisement&utm_medium=CooperPress&utm_campaign=CooperPress-RubyWeeklyB) 

Datadog sponsor   

[Sail: An Admin Panel for Managing Config Settings on a Live Rails App](https://github.com/vinistock/sail) 

Vinicius Stock   

[Salus: A Security Scanner Coordinator](https://github.com/coinbase/salus) — A tool for coordinating the execution of security scanners, such as Brakeman and `npm audit`, that are appropriate for the given context. 

Coinbase   

[PyCall: Call Python Functions from Ruby](https://github.com/mrkn/pycall.rb) 

Kenta Murata         

Curated by [Cooperpress](https://cooperpress.com/) 

[Change your email address](https://rubyweekly.com/edit_subscription/*|UID|*) or[Stop getting this newsletter](https://rubyweekly.com/leave/*|UID|*) 

© Cooper Press Ltd · Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom
