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.
MSN + EventMachine
I just made a gem to connect to MSN using EventMachine. It works, but a lot of things can be further improved.
Using Nimbus with UITableViews in RubyMotion: An Example
Sometimes an example is the best documentation. Here’s an example of how to use Nimbus to help manage a UITableView and its cells.
Rails caching gotcha: expires_fragment silently failing? Here's how to fix it.
I recently came across an odd issue where attempts to expire a fragment cache in code run from the console or rake tasks were failing silently. I’ve written up the cause and one solution to the problem in case anyone else runs into this befuddling issue.
Matz is not a threading guy
I wrote down some of my thoughts/observations from Rubyconf 2012 around threading and the GVL. A few of the speakers actually called this out as an issue and Matz addressed some of the questions in his Q&A. Read all about it.
Developing machine vision software with Ruby instead of C/C++
My thesis with the title “Efficient Implementations of Machine Vision Algorithms using a Dynamically Typed Programming Language” is now available for download. The thesis shows how the field of machine vision could benefit from the Ruby programming language. The thesis explains the internals of the HornetsEye Ruby-extension.
Beanstalkd and Job Queues in Ruby
Recently, we have been making strides to improve documentation and ruby interfaces for beanstalkd, arguably one of the best job queues available for web applications today. First, we converted the beanstalkd protocol to markdown for better readability. Then, we introduced a brand new production-ready beanstalkd client called Beaneater. In addition, we have released v0.2.0 of Backburner, a complete resque-esque gem for fast, robust and reliable background processing using Beanstalkd. If you have never checked out beanstalkd, be sure to let me know what you think!
Testing Chef on Multiple Environments using Vagrant
A simple and brief guide to setting up multiple environments using Vagrant , so testing the client-server architecture of Chef would be easy : Testing Chef on Multiple Environments using Vagrant
Beginners guide to Jeweler and gem maintenance workflow
Roll Your Own Gems with Jeweler is a tutorial with an example for folks who are new to writing gems. It gives a rough workflow for maintaining and releasing gems with Jeweler .
Delegation on a method by method basis with Forwardable
Read about object composition and delegation using Forwardable from Ruby Stdlib in this post.
#accepts_nested_attributes_for (often) considered harmful
Following up on the release of redtape, I wrote a blog post detailing why you should strongly consider it when reaching for #accepts_nested_attributes_for.
Traitor - an implementation of traits for Ruby 2.0
I just wrote about Traitor, an implementation of Traits for Ruby 2.0.
A cleaner alternative to accepts_nested_attributes_for
Redtape provides an alternative to ActiveRecord::NestedAttributes#accepts_nested_attributes_for in the form of, well, a Form! The initial implementation was heavily inspired by “7 Ways to Decompose Fat Activerecord Models” by Bryan Helmkamp.
Hacking mruby onto Heroku with Buildpacks
Learn how buildpacks work while Hacking mruby onto Heroku.
3 killer features that are coming in Ruby 2.0
Crowd Interactive Tech Blogpost ::: 3 killer features that are coming in Ruby 2.0 :::
5 Things You Didn't Know About Memcache
Despite being the go-to scaling solution for most production websites, Memcache often isn’t used to its full potential. Memcache has a broader set of operations that help developers build more advanced apps with less code and even further improved performance.
Is Your Application Running with Ruby – Slow?
Ruby may not be compiled for optimal performance with RVM. I benchmarked Ruby, and compiled Ruby with optimization flags to improve performance. Here’s how.
world.db - A Free Open World Database & Schema (Countries/Regions/Cities)
Hello, I’ve extracted from the sport.db/Sportbook all countries, regions and cities into its own free open database, that is, world.db. The open world database also includes a little command line tool (Ruby gem), that is, worlddb and a sample web admin tool in Ruby on Rails. Cheers.
Jenkins CI setup for Rails application from scratch
In this blog post you can find sufficient manual how to install Jenkins CI on clean machine and configure it to build your Rails application.
Gem : hash_extend
Extend ruby Array. No override. Provide [:stealth_delete, :map_values, :map_keys, :delete_many, :insert, :compact, :select_by] methods [more inside]
array_extend
Extend ruby Array. No override. Provide [:after, :stealth_delete, :tautology, :compact_by] methods [more inside]
Ruby 2.0 available on Pogoapp
Pogoapp also just today added Ruby 2.0.0 preview support, and we’ve written a blog explaining how to use it in your app
Ruby 2.0 available on Heroku
Haven’t tried Ruby 2.0.0 yet? Not to worry Heroku has Ruby 2.0.0 Preview1 available right now.
Yet another ruby shootout
I just posted a comparison of ruby-2.0.0-preview1, rubinius-2.0-rc1 and ruby-1.9.3-p286 in my blog. [more inside]
Think twice before using active_admin!
Using the active_admin gem in the admin section can be a headache once the admin section becomes a little bigger. I have used inherited_resources in the past and have become a big fan of it. Would like thoughts and opinion. Please check the blog here
Wants to learn more about Ruby 2.0?
Ruby 2.0 will arrive soon and you can start to learn about some of its new features: Module#prepend and Module#refine.