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.
How To Make A DSL, Hygienically
DSLs are one of the cooler parts of Ruby (for some value of “cool”). Come and see how to make one.
tty-prompt 0.8.0 release with custom keybindings
tty-prompt new release gets quite few bug fixes but most importantly allows you to specify custom keybindings to provide ultimate Vim immersion :)
Refactoring Legacy Rails Controllers
The first step against bloated controllers is to get the legacy code under test. The refactoring concepts scale all the way up to the toughest refactors. Article here.
Chain service objects like a boss
How can we keep controllers and models skinny? One of the widely accepted solutions is the use of Service Objects. In this blog post I show how I structure and chain them to improve the flow of the application and refactor the model layer.
Avatar - Jekyll Plugin - Add Profile Pics (Speakers, Members, etc.) to Your Pages
Hello, the Planet Jekyll Plugin of the Month series presents a new addon for your (static) web pages every month. The first one in the series: Avatar - Add Profile Pics (Speakers, Members, etc.) to Your Pages. Happy Publishing w/ Jekyll. Cheers.
Helpy 1.1 released: New ticketing features and more
Helpy 1.1 has been released with some exciting new support ticketing features. Read the full Blog Post Announcement or Clone it
Better Login UX without security risks
Let’s break the bad practices of showing ambiguous error messages to our users and let’s start improving our login UX! Tweak your Devise forms with these three easy steps.
Secrypto API
Simple rails API for encrypt/decrypt text [more inside]
Paper Trail Gem: Track Changes to Your Models’ Data
Howdy, today I am going to talk about the versioning. How to specifically version your models? So wondering what I am talking about? What is that versioning and my models? [more inside]
Performance and stability in capybara tests
If you’ve got flaky or very slow UI tests this is the post for you. I gathered a number of sources and improvements and combined them into a set of suggestions for performance and stability and how a new gem intransient_capybara implements much of this for you. Your tests will never be the same! [more inside]
hexapdf 0.2.0 released - PDF file merging, ...
The hexapdf CLI gains support for PDF file merging, page interleaving and page step values; various improvements and bug fixes for the HexaPDF library - see the announcement.
[Screencast] Redis Basics
Redis within a Ruby on Rails application has many benefits. Learn to interact with Redis Server and set it up for caching within your application. https://www.driftingruby.com/episodes/redis-basics
On Structuring Rails Applications, Part II
When models and controllers are supposed to be skinny, Rails clearly lacks a place to put all the extracted code. While there is a variety of different approaches, we like to keep it simple, stupid. Read more on structuring rails applications in this second part of our blog post.
released heyupdate-ruby
heyupdate-ruby brings activity/progress reporting to your Ruby and Rails apps. What integrations are you going to build next?
rufus-scheduler 3.3.0 released
I just released rufus-scheduler 3.3.0. It’s a 3.3.x release since its timezone handling has been reworked.
Refactoring of a Rails gem acts_as_list part 1
I’ve refactored acts_as_list gem. I expect it to be most interesting to people working on similar gems themselves. By similar, I mean, adding a class method to classes they extend. [more inside]
Managing DB Schema & Data Changes
Policies to help teams manage Rails migrations, separating schema and data changes. As a team grows and the gotchas of DB changes get harder with scale, these policies help keep our team sane. DB Schema & Data Change Policies
CardsLib 0.2.2 released!
CardsLib is arguably the “smartest” OO card game library. This update includes adding custom card ranking in deck creation and a code example on how to implement the game “High Card”.
Clone Your Heroku DB Into Development
I’ve released a gem to easily clone your Heroku app’s database into your development environment. It makes troubleshooting production bugs a breeze.
PDF Object Representation in HexaPDF
To work with PDFs using a library means that you need to understand at least the part of the PDF specification that is about the PDF object system. This post will introduce this part and then look at how HexaPDF implements it.
The Double Splat Operator
Did you know about the double splat operator? Did you know you can use them in a method definition?
Using PostgreSQL instead of Rails to generate JSON
Generating JSON is a main requirement for many modern day web application, but Ruby is not the fastest way to generate JSON. But fortunately for us we can let the database return our result in JSON itself. This article gives a basic introduction to creating JSON responses from the database itself. [more inside]
Dante2 Editor
Dante II is a complete rewrite of DanteEditor, The medium editor clone. This version is built on top of Facebook’s Draft-Js and reaches all Dante’s features with a shiny ultra mega super uber maintainable React architecture. See the demo at: [more inside]