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.
FrenzyBunnies: JRuby and RabbitMQ based background workers framework
I just pusehd FrenzyBunnies. A JRuby and RabbitMQ based background workers framework, targeting high-performance and efficient resource utilization use cases.
Define everything you want in Ruby
Have you ever thought about which symbols Ruby method name can contain? You can read about it here.
How to get 4x the performance out of Heroku with Unicorn
Unicorn is a ruby http server that starts one master process listening on one port and forks several worker processes. Every incoming client request is handed to a worker by the master and when finished the master returns the result to the client. Thus it only needs to listen on one port, but can work on several concurrent requests. Take a look how! Read more
Accessing google analytics feeds from Ruby
I had some problems with Garb recently, so created a small library to access Google Analytics feeds. Uses client login, SAX-style row handling (so it’s fast!) and allows you to configure the HTTP connection with Faraday. Enjoy.
Monitoring your Unicorns and Resque with Bluepill and Upstart
A detailed walk through on getting Bluepill, Upstart, Unicorn and Resque to place nice.
Push 1.0.0 released
I’ve just released version 1.0.0 of the Push gem. Which allows you to send push notifications to iOS (APNS) and Android (GCM/C2DM) devices from a Rails application. Right now it’s used in a production environment and I’m sending 500K push notifications a day. This gem uses the Rails database to store your messages so no additional dependencies are required. The daemon includes a customisable feedback service to integrate the feedback in your own environment (for example the removal of device tokens).
Expense Tracker a useful android app created by Vinsol
Vinsol just launched expense tracker
DJ Mon 1.1.0 released
Just released DJ Mon 1.1.0. DJ Mon is a Frontend for Delayed Job. This release includes support for Ruby 1.8.7 when using delayed_job_active_record.
Screencast: Ruby's IO Buffering And You!
I’ve been delving into Ruby’s IO system lately and finding out lots of neat things. So I decided to share a few. The whole thing is less than 10 minutes long and demonstrates a bunch of nuances about working with File and Socket in Ruby.
Sunsetting and Deprecation at Heroku
Heroku is an erosion-resistant platform, but what happens when something needs change? Learn all about Heroku’s deprecation and sunsetting policies so you can sleep sound at night knowing what to expect.
Auto generate/maintain API documentation using Rails integration tests
Maintaining documentation is a pain in the ass. Especially when you rapidly changing underlying structure and have no time to sync docs with what is actually going on. This is an attempt to automate it. It works as follows: Read more
grow tasty cucumbers using PageObjects
The blog post grow tasty cucumbers using PageObjects explains the advantages of using the PageObject pattern. I try to explain why you should not focus on reusable steps but on more expressive steps. The PageObject pattern helps you to reduce the duplication in the implementation of your steps.
How do I know if my Heroku app is slow?
Logentries is a log management service providing analysis for a wide range of platforms, OS’s and languages. Our partnership with Heroku gives users instant access to graphs, intelligent tagging, and email/phone alerts when platform or application errors occur. This Logentries blog post covers understanding request latency for Heroku apps, in particular under high user loads.
Introducing RubyTapas screencasts
Today I’m launching RubyTapas, my subscription screencast series. These are short (1-5 minute) videos, released three days a week, demonstrating intermediate to advanced Ruby features, idioms, and libraries. The first episode is up and available for free!
Using multiple omniauth providers with omniauth-identity on the main user model
I just wrote a post on how to use multiple providers and omniauth-identity, using the main user model and not relying on an identity model: Using multiple omniauth providers with omniauth-identity on the main user model.
Free Resources for learning or diving deeper into Ruby and Rails
Over time I’ve collected quite many resources ranging from beginner material about Ruby and Rails to more advanced resources. Most of the material is free. I hope that this collection of resources is beneficial to people, who are interested in Ruby/Rails regardless of their skill level.
Make Beautiful APIs with Rails
Faceted is a new gem providing a set of tools, patterns, and modules to help you build beautiful internal and external JSON APIs for your Rails applications. Inspired by the hexagonal architecture design pattern, Faceted is highly opinionated and embraces the convention-over-configuration philosophy.
Making Ruby Dance!
I posted video, code, and slides from my lightning talk at Ruby Hoedown, entitled “Making Ruby Dance!”. It talks a bit about dependency injection and a particularly evil bit of code. I had a great time with it, so wanted to share. Obviously the video was not professionally recorded, but I think you’ll get the idea. :)
Add shortcuts to your rails application via mousetrap-rails
I’ve just released mousetrap-rails gem. Mousetrap is a javascript library for handling keyboard shortcuts in your web applications. Mousetrap-rails gem integrates Mousetrap javascript library with Rails Asset Pipeline.
Ruby const_missing useful tip
Ruby constant missing tip - Metaprogramming
The right way to deal with frozen processes on Unix
This article explains how to debug frozen/stuck processes (including Ruby-specific tips), how frozen processes affect web applications and how Phusion Passenger deals with them.
rails_best_practices 1.11.0 released
I just released rails_best_practices 1.11.0, it’s a big improvement, including code analyzer module extraction and disabling some checkers by default, check out details here.
write ruby code analyzer tool by yourself
I’m working on extracting code analyzer module from rails_best_practices gem these days, now it’s on github, code_analyzer. And here is the document teaching you how to use it.
Rails 4 - Transaction isolation level
Just Recently Jon Leighton (Rails core team member) has added a support for specifying transaction isolation level, in rails 4. Here is link for more information.
Learning pjax (with Sinatra) with a screencast
I just spent a few hours to learn how to use pjax in order to make an application feel more responsive. Hooking it up to Sinatra was trivial and should work with any Rack based application.