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.
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. https://github.com/igor-alexandrov/wiselinks
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: http://psionides.eu/2013/02/18/pick-holes-in-your-gemfiles/.
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.
How to manage file uploads with Backbone.js, paperclip, jquery file upload and...
This week’s in Crowd Interactive’s tech blog: [more inside]
Decoding Rails Session Cookies
I wrote about how easy it is to decode and view the contents of session cookies in Rails 3. A fully encrypted cookie store is coming in Rails 4.
chruby 0.3.3 released!
chruby 0.3.3 has been released! This release contains bug fixes and workarounds for using tmux with chruby/auto.sh, ohmyzsh’s bundle exec ruby alias and OSX Mountain Lion’s PROMPT_COMMAND. Version 0.3.3 should be available via homebrew shortly.
The somewhat peculiar behavior of Ruby's Thread#raise
When you call Thread#raise, the exception will be raised at whatever point of execution that thread happens to be at. In my blog post, The somewhat peculiar behavior of Ruby’s Thread#raise, I explore why that does make sense, but why it means you should only ever call Thread#raise if you have complete control over what code is inside that Thread and if it expects exception raises to be invoked by the outer context.
Testing a live JSON API with ruby and RSpec
Since I never found a short, concise way to test my APIs from the outside (e.g. monitor running instances), via HTTP, I created this little gem: rspec_api_test. Testing one URL per line.
Automatic Gemfile security audit for all your organizaition/user repos
bundler-organization_audit audits all your projects for vulnerable gem version. Pro tip: Run it on your CI!
Setting ActiveRecord's connection pool size on Heroku with Puma and Sidekiq
How does one change the connection pool size in Rails when hosting on Heroku? Watsi’s post on setting AR’s connection pool size uses the latest and greatest from both Puma and Sidekiq to achieve this.
Representable 1.3.3 Released With User Options Support!
Representable 1.3.3 got :setter and :getter to define accessors inline and process user options from outside! Heads-up here.
Call for papers is open!
Barcelona Ruby Conference call for papers is now open! You have time until March the 10th to submit your proposal - don’t miss the chance.
Time based OTP token for Google Authenticator in Ruby
I just wrote a blog post on creating time based otp token for Google Authenticator in Ruby http://bradylove.com/blog/2013/02/15/dead-simple-time-based-otp-with-google-authenticator/ Let me know what you think.
Custom pre-commit hooks with pre-commit gem
pre-commit comes with checks like missing-migrations/merge-conflicts/whitespace/jshint/… and now can also run project-specific checks via config/pre-commit.rb