In order to cover some edge cases you rarely care about, Range#include? will become very slow in Ruby 1.9...
RubyGems 1.6.0 has undergone some changes which may cause Rails 2.x applications to break with an error like this...
If you want to get a deep understanding of how closures, blocks, procs & lambdas in Ruby work, check out the...
If you use a form (or form fields) multiple times inside one view, Rails will generate the same id attributes...
Flash movies (.swf files) can talk with Javascript code embedded in the same HTML page. There are two ways to...
A while ago we were working on an application that had an entire version specially created for mobiles, such as...
Note: For PostgreSQL you should use advisory locks. For MySQL we still recommend the solution in this card.
When you have a Cucumber step like Then I should see "Did you see those \"quotation marks\" over there...
This note is a reminder that there is something called AppArmor that could cause weird errors ("File not found", "Can...
To open a terminal quickly navigate to System → Preferences → Keyboard Shortcuts. There, click the "Run a terminal" row (It should...
On 32bit systems, the maximum representable Time is 2038-01-19 03:14:07 in UTC or 2038-01-19...
Have a backup. Stop MySQL: sudo service mysql stop Move (or copy) your mysql directory. If you want /mnt/mysql to...
What are Google’s plans for turning WebM into a genuinely open standard, one that is based on consensus like...
This tool is used on our application servers (and called when deploying) but it also works locally. Just call dumple...
The code below shows a method #validate which uses Nokogiri to validate an XML document against an XSD schema. It...
When you need to bulk rename files you can not call "mv *.foo *.bar" to change the extension of all...
Note that this sounds good but is not good at all when hooking tasks on cap deploy (see this article...
When you try to remove a non-existing index using remove_index, the migration will incorrectly pass without an error...
You know Firebug as a Firefox extension but there is also a "Lite" version which runs purely off JavaScript.
A check if two date or time ranges A and B overlap needs to cover a lot of cases:
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...
This might be due to AppArmor denying the MySQL server access to most of the filesystem. You can instead use...