After switching to Rails 3 you may get a LoadError with the following message when trying to use your application...

You will need to upgrade to RSpec >= 2 and rspec-rails >= 2 for Rails 3. Here are some hints to...

Be careful when using params.merge as params is a HashWithIndifferentAccess. Why? Usually this should not be an issue but it...

Be careful when memoizing a method that returns a scope, e.g.: def variants scoped(:conditions => { :name => name }) end memoize :variants...

When using form_for you can give the form's target URL either as a string or an array:

github.com

The ancestry gem allows you to easily use tree structures in your Rails application. There is one somewhat unobvious pitfall...

If you did file operations inside a shell or for example using Nautilus, it can take quite a while until...

Sometimes the order in which strings appear on a page matters to you. Spreewald gives you steps like these:

If you want to see how long your database queries actually take, you need to disable MySQL's query cache...

If you get an error message like that you are missing the Aspell files a specific language:

Capybara's has_css? matcher has a couple of options you might find useful. Check that a selector appears a...

github.com

Hooks lets you define hooks declaratively in your ruby class. You can add callbacks to your hook, which will be...

Even when you're using bundler, it might be significant in which order your gems are listed in your Gemfile...

timetobleed.com

This post will describe how I stumbled upon a code path in the Linux kernel which allows external programs to...

It can be useful to have a Ruby expression like condition ? positive_case : negative_case in MySQL queries:

ruby-doc.org

[ ] [ ]= ** ! ~ + - * / % + - >> << & ^ | <= < > >= <=> == === != =~ !~ && || .. ... ? : = %= { /= -= += |= &= >>= <<= *= &&= ||= **= defined? not or and if unless while until begin/end For more information see Table 18.4 in The Pragmatic Programmer's...

A good tool to generate strong passwords and secrets is "apg". You can get it with sudo apt-get install...

github.com

Ruby gem that provides an AR-style interface for the Pivotal Tracker API.

You need to install the following packages before you can build the Paperclip gem: sudo apt-get install imagemagick librmagick...

These steps are now part of Spreewald. This note describes a Cucumber step that lets you write this:

Note that you should disable the Java plug-in in your browsers after installation. Ubuntu >= 12.04 Java 11

A popular ruby idiom I keep stumbling upon is def do_some_thing_for(values) values = Array(values)

Both these approaches will keep your GET parameters -- and will only work for GET requests. Capybara: When /^I reload the...

Cucumber step argument transforms can be a powerful way to make your steps more flexible. Note however that if your...