#660 — June 29, 2023 |
|
Ruby Weekly |
Making SQLite Extensions Alex Garcia |
💡 An interesting consequence of this is opening up a simple, local way to work with vector data and vector distance queries, as are useful in modern ML/LLM projects. Here's an example of that in Python, but I'm working up a Ruby example right now.. |
Keeping Your Apps More Secure with Bundler — Bundler includes several security features and this post looks at a couple of them: Thomas Riboulet (AppSignal) |
Free eBook: Advanced Database Programming with Rails and Postgres — Learn about subqueries, materialized views, and custom data types in Postgres and Rails. We walk through realistic real-life examples, translating first into SQL, and then into Rails code. Every example comes with source code to follow along. pganalyze sponsor |
Open Sourcing Shopify’s Ruby Builds — With one of the biggest Ruby deployments in the world, it’s no surprise Shopify has their own variant of CRuby. If you want to copy their approach, they’ve released shopify-ruby-definitions, a set of ruby-build definitions for their specially tweaked Ruby fork. They also explain why they have to do this rather than run against Ruby head. Peter Zhu |
How To Use 37signals’s MRSK with AWS and GitHub — MRSK is DHH’s new(ish) Ruby-based orchestration tool for deploying containerized apps. This post digs into the details of setting it up (including a Dockerfile if your Rails app doesn’t have one) and getting it working with GitHub Actions. Alexandrov and Masiutin |
💡 While MRSK is particularly at home with Rails 7, you can get it to work deploying older Rails 6 apps too. |
|
📕 Tutorials, Articles, and Videos |
How to Split a List into Multiple Equal Parts — Akshay Khot |
Let's Build a Webapp Without Rails — Frameworks and libraries like Rails, Hamami, and even Sinatra do a lot behind the scenes to help us build webapps in Ruby, but what’s going on behind the scenes? Akshay takes a quick look. Akshay Khot |
Optimize Memory and Database Queries in Ruby with Scout — Pinpoint performance issues with Scout's tracing logic. Fix problems before they impact customers with detailed backtraces. Scout APM sponsor |
Vectors are the New JSON in Postgres — When NoSQL was becoming popular, Postgres smartly added native JSON support and has, in time, built up numerous ways to work with it that rival most NoSQL efforts. Fast forward several years and ML and LLM embeddings are now making vectors the data structure du jour and Postgres is stepping up again. (Notably via pgvector, an extension largely built by Ruby’s own Andrew Kane, well known for his tireless work improving Ruby's machine learning ecosystem.) Jonathan Katz |
... Range Literals and Their Effect on Active Record Queries — If you’re guessing this has much to do with which parts of the range are included or excluded in the queries, you’re right. Lucian Ghinda |
Improve Your GitHub Workflow with Better Repository Defaults — Some opinionated suggestions to enhance your GitHub repo experience. Matt Brictson |
If You Liked Shoes, You'll Love Glimmer — The options for building GUI apps in Ruby are only continuing to improve. Andy Maleh |
Using Rails 7.1's Vipul A M |
Tips on Customizing the Rails Console with |
🛠 Code & Tools |
Better HTML: HTML-Aware ERB for Rails — You can generally render almost anything with an ERB template, but Better HTML introduces a little more control when it comes to HTML with runtime checks to restrict syntax, prevent certain types of interpolation, and being able to only insert expressions into script tags rather than statements/conditionals. Shopify |
Fixed Price Monthly Code Maintenance for Rails Apps — No time to do those small but critical updates and features? CodeCare will take care of necessary tweaks, bug fixes, upgrades and ongoing improvements for your app. reinteractive / CodeCare sponsor |
VCR 6.2: Record Your Test Suite's HTTP Interactions and Replay Them — A long standing library for recording HTTP interactions and replaying them during test runs. Following 6.1 by over a year years, 6.2 is principally a release with fixes and dependency updates. VCR |
|
|
🥰 Love is in the air? |
🍏 A Love Letter to Objective C! — A curious 'love letter' that seems framed more as a “Ruby is fantastic, and Objective C is tolerable” comparison to me, but it’s interesting to see how a Rubyist looks at the feature-set of a quite different and Ryan Krug |