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.
Ruby core classes aren't thread-safe
Interacting with core classes (like Array and Hash) appears to be thread-safe with MRI because of the global lock. There are no such guarantees on the truly multi-threaded implementations like JRuby and Rubinius. I wrote about the effect of the global lock, and how to protect your data with mutexes.
Ruby 2.0.0 MetaCasts Video Free This Week!
To celebrate the release of Ruby 2.0 the MetaCasts video on Ruby 2.0.0-rc2 is free for this week only! Check it out to see the highlights of what is new in Ruby 2.0. Enjoy. [more inside]
Making Refs in Ruby Using Celluloid Actors
An example of using Celluloid Actors to provide a poor man’s Ref (Clojure-like) around an immutable data structure in JRuby to protect shared state.
Sinatra 1.3.5 release
I just released Sinatra 1.3.5, which includes RubyGems 2.0 compatibility.
Role support for rspec-fire
I’ve released a new gem which adds an implements_role macro, closing the loop when mocking roles rather than objects, for use with rspec-fire. See the README for rationale and the Relish documentation for a to-the-point worked example.
Cells Got content_for Support.
Since many users asked for it the cells gem got global content_for support.
ITTIA DB SQL Enables ADO.NET Development on Android with Mono
Sharing application code between Microsoft(R) Windows(R) – especially those written in C# for Windows Mobile(R) and Windows Phone(R) – and Android is now possible with ITTIA DB SQL’s Mono framework. A cross-platform implementation of C# and the CLR, Mono is binary compatible with the Microsoft(R) .NET framework.
Released the "sorting" gem
The “sorting” gem provides utilities to make sorting with ruby easier. [more inside]
Email notifications for high-frequency Airbrake errors
Get notified when any error hits >100 notices/hour by AirMan (Mails include detailed error and backtrace summary)
Track releases of gems (email notifications) + recommendations
The site packageupdates.org notifies about new versions of gems (rubygems.org). There are also “top packages” rankings and recommendations of new packages (like Amazon’s).
The Pie in The Sky
I just wrote a blog post about functional programming. There’s also a funny reference.
Wiselinks-0.5.0 is out!
HTTP redirects following, refactored JS events and other fixes.
sane_timeout: a replacement for Ruby’s standard library Timeout
The way Ruby’s Timeout#timeout kills threads when they have timed out introduces two problems. In this blog post, I describe these two problems and introduce my replacement library, sane_timeout.
PushBuilder: easily construct JSON payloads for Apple push notifications
Just released PushBuilder, a gem that helps building JSON payloads for Apple’s push notification service.
Geokdtree v0.2.0 - Fast k-d tree FFI/C implementation with geo support
I just pushed Geokdtree v0.2.0, a Ruby & JRuby gem with a fast k-d tree C implementation using FFI bindings with support for latitude/longitude and geo distance range search. Released on Rubygems.
Handle incoming email from any rack application
The the team from Honeybadger.io just open-sourced the Incoming! Gem. It lets you handle inbound email from any rack app using (almost) any email service.
SpreeConf in Washington, D.C. on May 20-21
We’re excited to announce that registration for SpreeConf starts today. The conference will be held May 20th to 21st in Washington, DC. The full list of speakers and talks will be announced shortly. If you’re interested in learning more of Ruby e-commerce then you should act now and scoop up one of the limited number of early bird tickets!
The minimum possible work for an AJAX upload with Carrierwave
I’ve documented my attempt to determine the minimum possible steps in getting an AJAX upload to work with Rails 3 and Carrierwave. Feedback welcome.
What Is the Best Memory Config for RubyMine?
I have become frustrated trying to find the best memory config options for RubyMine based on my computer specs, so I decided to do something about it. [more inside]
Testing Email Templates in Rails
Email clients all seem to display HTML mails differently. Here are a few tools I’ve used to make implementing Rails email templates a bit less painful.
Handling Non-Persisted Data
New post: Handling Non-Persisted Data over at The Frontier Group blog.
HolePicker - Ruby security tool for checking Gemfiles
I got tired of remembering which gems need to be updated to which versions after every security update, so I wrote a gem that scans all Gemfiles it can find and tells me which gems in which apps need to be updated. Check out the blog post: .
Cohort analysis - User retention in a Rails application.
Here’s an easy way to do a cohort analysis of user retention in your Rails app without having to rely on 3rd party tools.