#489 — February 20, 2020 |
A very quiet week for new stuff in the Ruby world this week, so we've revisited a few older tools that have gotten some recent updates, including RuboCop, Brakeman and Oga :-) |
Ruby Weekly |
Ferrum: A High Level Ruby API to Control Chrome — Think Ruby’s equivalent of Node.js’s Puppeteer for controlling Chrome (either headless or not) from code. Dmitry Vorotilin |
How I MITM'd RubyGems.org... Kinda — When a developer mistyped rubygems as “rubgems”, he wondered what he could do if he registered the domain and picked up similarly misspelled requests made to it. Gavin Miller |
Troubleshoot Ruby App Performance with End-To-End Tracing — Datadog’s APM generates detailed flame graphs to help you identify bottlenecks and latency. Navigate seamlessly between Ruby app traces, logs and metrics to troubleshoot application performance issues fast. Try Datadog APM free. Datadog APM sponsor |
The Top Ruby HTTP Clients for 2020 — ‘http’ is my current favorite, but there are several compelling options nowadays. Bearer |
JRuby 9.2.10.0 Released — The powerful JVM-based Ruby implementation takes some more steps forward. JRuby Core Team |
date-formatter: Format Dates by Example — If wrangling with the various formatting options of Gerald Bauer |
💻 Jobs |
Announcing a 100% Remote Opportunity as a Sr. Ruby on Rails Dev — We are passionate about giving devs the chance to do meaningful work by building transformational technology solutions. Clevertech |
Software Engineer (Remote or London), Reinventing Consumer Credit — Our startup offers interest-free loans in exchange for a fixed membership fee. We use Ruby and Event Sourcing to make it happen. CreditSpring |
Find a Dev Job Through Vettery — Vettery is completely free for job seekers. Make a profile, name your salary, and connect with hiring managers from top employers. Vettery |
📘 Articles & Tutorials |
Linking a Webcam Directly to Rails' ActiveStorage — A developer was tasked with having webcam photos get uploaded to a Rails app directly rather than making a user pick a file. How was it done? Emmanuel Hayford |
Ruby 2.7 Adds Akhil Gautam |
Decoupling Ruby: Delegation vs Dependency Injection — We all know (too tight) coupling is bad and that there are many ways to avoid it in Ruby. Here are two scenarios to help you have a conscious uncoupling. Honeybadger Developer Blog |
▶ 11 Ruby and Rails Podcasts Worth Your Time — Well, 7 actual podcasts and 4 screencast sites :-) Rob Bazinet podcast |
Founders/CTOs: We Upgrade Rails So That Your Team Doesn’t Have To Upgrade Rails sponsor |
How to Build a WhatsApp Chatbot with Ruby, Sinatra and Twilio — I always saw Twilio as a service for sending SMS text messages, but it does a lot more nowadays. It’s a commercial service, though, so keep that in mind before progressing. Phil Nash |
Migrating User Passwords From Django to Ruby — Migrating user data between a Python and Ruby app isn’t particularly common but when you need to do it, how? It turned out to not be too tricky. Igor Alexandrov |
Putting All Your Mailer Views in One Place — Andy doesn’t think having mailer views across different directories makes much sense, so shares a way to bring them into one place. I see his point, although he does call it a “pernickety organisational opinion.” Andy Croll |
🛠 Code and Tools |
RuboCop 0.80: The Ruby Static Code Analyzer and Formatter — This release provoked some interesting discussion on Hacker News, if you’re into such things. RuboCop Headquarters |
RubyGems 3.0.8 Released — A simple bugfix release. Hiroshi Shibata |
Brakeman: A Security Vulnerability Scanner for Rails Apps — A long standing project we haven’t mentioned in a couple of years, but it continues to get updates and now supports Rails 6. It statically analyzes your Rails project’s code for security issues. Justin Collins |
Upgrade Your Ruby CI/CD Pipeline for Free — Automate your CI/CD pipeline with Semaphore to release 2x faster than with other platforms. Semaphore 2.0 sponsor |
Oga: An XML/HTML Parser Written in Pure Ruby — Oga does not require libxml (or any dependencies, indeed) so it’s a bit easier to install than some other options. The migration story from Nokogiri is also pretty good. Yorick Peterse |
Fake API: A Faster Way to Prototype an API in Your Rails App — Has a syntax similar to Rails routes, FactoryBot, and uses Faker to generate dummy data. Igor Kasyanchuk |
Kiba 3.0: Data Processing & ETL Framework for Ruby — Kiba has been around for a long time, offering a nice DSL and workflow for moving and transforming data. This version removes the CLI, pushing a new parse API. Thibaut Barrère |
Midas: Edge Stream Anomaly Detection — The latest in a line of algorithmic libraries by Andrew. Andrew Kane |
Groupdate 5.0: A Simple Way to Group Temporal Data — For example, to group data by day, week, hour, etc. Andrew Kane |