A check if two date or time ranges A and B overlap needs to cover a lot of cases:

Note: Consider not doing this. Use form models or vanilla methods instead. The :conditions option for Rails associations cannot take...

alfajango.com

The difference between .bind(), .live(), and .delegate() is not always apparent. Having a clear understanding of all the differences, though...

Sometimes it is useful to define a named scope by implementing a static method with the scope's name on...

Given those modules: module A def foo; end def bar; end end module B end When you want to call...

makandra dev

Given group size If you would like to split a Ruby array into pairs of two, you can use the...

This might be due to AppArmor denying the MySQL server access to most of the filesystem. You can instead use...

There are times when you need to send SQL to the database, like this: def self.some_count(field) field = connection.quote...

This card describes a Cucumber step that lets you say: When I perform basic authentication as "username/password" and I visit...

When defining a trait using the Modularity gem, you must take extra steps to define constants to avoid caveats (like...

In case https://www.rubydoc.info/ is to slow or offline, you can also read a gem documentation offline. Start a server...

opensoul.org

I love ETags, but there’s something that annoys me: most implementations revolve around pulling a record out of a...

Are you adding a "Then show me the page" and re-run Cucumber whenever there is a failing scenario? Don...

Find-as-you-type boxes are usually built by observing changes in a text field, and querying the server via...

From time to time we're convinced that an error must be very close to the network card, OS IP...

It's that simple to allow one of your Linux users to run a single command as UID 0:

If you're on Ubuntu: sudo apt-get install ruby-dev On other platforms: Look for a package containing ruby...

This is for those who already own an SSL certificate (e.g. using it in the Apache HTTP Server) and need...

You cannot use Array#join on an array of strings where some strings are html_safe and others are not...

When you are using Apache for development, it still accepts connections from everyone in the same network as you.

cssdiscussion.com

If you want your application to display properly on iPad, iPhone or Android there are two things to do:

Call geordi clean from a project root to remove unused and unnecessary files inside it. This script is part of...

Update: This trick probably isn't very useful anymore in Ruby 2.x. The Ruby GC has improved a lot...

imperialviolet.org

In January this year (2010), Gmail switched to using HTTPS for everything by default. Previously it had been introduced as...