The Ruby and Rails community linklog
Made a library? Written a blog post? Found a useful tutorial? Share it with the Ruby community here or just enjoy what everyone else has found!
Submit a post
Post Preview
Note: Only the first pargraph is shown on the front page and overly long paragraphs may be broken up.
Some things you should know about eager loading in ActiveRecord
Discover an automated way of dealing with N+1 queries, how to go around some of the limitations of eager loading in ActiveRecord and how to write tests to prevent those sneaky N+1 queries from coming back: https://lipanski.com/posts/activerecord-eager-loading
Scoped Associations in Rails
I’ve never thought that ActiveRecord associations could be used as scopes until last week. I couldn’t find a step-by-step explanation, so I did a quick write up about how one can scope associations in Rails. [more inside]
Test-Commit-Revert: A Useful Workflow for Testing Legacy Code in Ruby
When you inherit a legacy app with no tests, your first step should be to add them. But that can be a huge task! How do you even start? In this article, José will introduce us to a testing workflow called test-commit-revert (TCR) that is particularly useful for adding tests to legacy systems. He’ll show us practical examples and help us set up our tooling for minimal friction. https://www.honeybadger.io/blog/ruby-tcr-test-commit-revert/
Testing Tables in ActionText Using System Test
So you’ve built a fascinating, interactive addition to your ActionText page. How do you test that interactivity? You can use System Test, a feature built into Rails to run apps and test them in a web browser. This tutorial explains how you can test you Stimulus.js controllers: https://onrails.blog/2020/10/05/testing-tables-in-actiontext-using-system-test/
Rails 6 and Stimulus.js - a quick and painless launch
Do you want to play with HTML and make your Rails app interactive but you are not interested in using React or Vue? Try out Stimulus.js from Basecamp! https://longliveruby.com/articles/rails-6-stimulus-js
Setup your server with Alpine Linux in diskless mode
I have been used to have a server running under my desk for years now. It serves “Nextcloud” for internal data sharing and “GitLab CE” for hosting my internal “git” repositories. This article (https://www.fedux.org/articles/2020/10/05/setup-alpine-linux-diskless.html) describes my search to get a new one up and running with “Alpine Linux” in “diskless mode”.
[Screencast] Benchmark Ruby Code
It’s easy to accidentally write slow code in our applications. In this episode, we look at how we can benchmark our code and examples of some methods which are slower than others. https://www.driftingruby.com/episodes/benchmark-ruby-code
Dockerizing a Ruby on Rails app with a PostgreSQL Database
These are the configurations I use to deploy a dockerized Rails 6 app. Note that this is a small hobby app so I’m using docker-compose to deploy it, for more serious apps you’d want to use docker swarm or kubernetes.
Full page caching in Rails with a memcached cluster and middleware
A little while ago I wrote a post on how to implement full page caching for a Rails app using Nginx and Redis; I have since replaced the single Redis instance with a memcached cluster and a middleware instead of Nginx to improve scalability and simplify things by removing some dependencies. Post: https://vitobotta.com/2020/10/04/full-page-caching-in-rails-part-2-memcached-and-middleware/
Rebuilding Redis in Ruby - New Chapters
Rebuilding Redis in Ruby is a free online book, where we rebuild Redis, in Ruby, from scratch. [more inside]
Glimmer DSL for SWT 4.17.2.1 Hello, Custom Widget/Shell!
Glimmer DSL for SWT 4.17.2.1 (JRuby Desktop Development GUI Library) has been released: https://andymaleh.blogspot.com/2020/10/glimmer-dsl-for-swt-41721-hello-custom.html
Installing Ruby with ruby-build and ruby-install
Find out about the differences between ruby-build and ruby-install. Which one should you install for development and which one for production?
PostGIS vs. Geocoder in Rails
This article compares PostGIS in Rails with Geocoder and highlights areas where you’ll want to (or need to) reach for one over the other: PostGIS vs. Geocoder in Rails
Rails Application performance impovement
Are you concerned about your Rails Application performance? My new article may help you. Read it here: https://medium.com/@mayurt20/apexit-04-how-to-increase-the-performance-of-your-rails-application-part-1-afa073e72e9a?sk=63cb4f728654064fca1223bb780af7dc.
Joining polymorphic associations in ActiveRecord
Short list of thoughts on how to join polymorphic associations in ActiveRecord and why it cannot be loaded eagerly https://veelenga.github.io/joining-polymorphic-associations/
Currency Calculations in Ruby
You’re doing some currency calculations in your app. It seems to be working well. But after a while, strange discrepancies emerge. The books stop balancing. People get mad. All because the code treated currency like any other number. In this article, Julio Sampaio shows us which of Ruby’s number classes are unsuitable for currency, and walks us through better options. https://www.honeybadger.io/blog/ruby-currency/
An Unofficial Active Admin Guide
An in-depth guide on the popular admin gem and libraries it is based on. Learn how to build custom components, inputs, filters, and extend default controllers’ behavior. https://skryukov.github.io/rails/activeadmin/2020/09/29/an-unofficial-active-admin-guide
An Indie Hacker's Guide to Google Analytics in a Rails App [YouTube]
This video demonstrates some of the workflows I use to make technical and business decisions - e.g. what percentage of users are on mobile, what’s the financial worth of a session etc. https://www.youtube.com/watch?v=ErZ84NJcL_A [more inside]
How to Use a Static Site Generator as a CMS Engine [VIDEO]
This video explains how to use Static Site Generators like Jekyll, Refinery, and other Ruby on Rails solution. And will advise you which one is best. Enjoy! https://blog.railwaymen.org/static-site-generator-cms