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
Note: Only the first pargraph is shown on the front page and overly long paragraphs may be broken up.
Otimizing images is one of the most important branch of the web optimization process. Images that are delivered by the web server to the client’s browser must be optimized in order to improve the page load speed and to offer a better user experience. It’s known that perceived speed is more important than actual speed. Read more here
Envlogic is a simple gem that will help you manage your Ruby application environment. Read more here
Only 15 people can subscribe to a course, only limited number of people can buy this physical or virtual product, only 200 people can go to a concert, etc. How do you test that this limitation actually work? And not only work but that it works under heavy load, when there are multiple customers trying to buy the last item because it is a hot event or the product is offered with a big discount? [more inside]
When you treat your collections as enumerators, you get to use all your favorite functions like #map and #reduce without having to write any extra code. In this post I show you how easy it is to create enumerators on the fly, without defining extra classes or messing around with the Enumerable module. http://blog.honeybadger.io/creating-ruby-enumerators-on-the-fly/
A new Carrierwave plugin to check “real” image size bypassing ImageMagick (which may be fooled by a PNG bomb): https://github.com/DarthSim/carrierwave-bombshelter [more inside]
Store secrets in environment variables, secure and manage them. I collected all information about the topic here: https://rorsecurity.info/portfolio/secure-configuration-of-rails-applications
Pundit is a wonderful authorization library and it truly shines through the use of OOP and plain Ruby. However, when used with more than one or two user roles, policy objects can quickly become riddled with complex conditional logic. This article looks at how the basic OO concepts that underly Pundit can be put to good use to create dedicated policies per user role.
For reviewing the referenced commits of a story or task, you have to include the issue ID as a hashtag in the commit message, I needed a better overview than just a flat list of commits. [more inside]
These days it’s pretty common to see #freeze used in Ruby code. But it’s often not entirely clear WHY freeze is being used. In this post we’ll look at the most common reasons a developer might freeze variables. http://blog.honeybadger.io/when-to-use-freeze-and-frozen-in-ruby/
The Opal ecosystem continues to thrive, and projects like react.rb and Volt, opal-irb and Clearwater, are proving that front-end development via Opal has some real perks and some major productivity gains to offer (not to mention just plain Ruby fun!). Opalist keeps you up-to-date on the latest news around the Opal web. Check out Opalist Issue #10 here!
Scopes are a great way to grab the right objects out of your database. But when you call them, they look almost exactly like calling a class method. And class methods can do most of the same things scopes can. So why would you use a scope when you could use regular Ruby class methods?
You may find Rails’ default logging obstructs your debugging efforts when it floods the server output with waves of asset requests. Bypass this extra logging and streamline your debugging workflow by installing the Quiet Assets gem: https://eliotsykes.com/quiet-assets
Micah Woods explains how to run smoke tests when writing an app using the Ember Rails stack. http://blog.codeship.com/how-to-write-smoke-tests-for-an-ember-rails-stack/
Noel Rappin has released a new sort-of book, “Locally Sourced: Adding a Feature to a Rails Application”, which describes the entire process of building features into Rails including integration and unit testing, and also covers the difference between traditional and mock tests. Get the issue at https://www.patreon.com/posts/3254253. Support a Patreon campaign for more content at http://www.patreon.com/noelrap.