This tip comes by way of: @starvo. By using a counter in your ruby console script you can gain insight into long running actions for your application. @photos = Photo.all count = @photos.count @photos.each_with_index do |photo, idx| # … do a bunch of processing puts "#{(100.0 * idx / count).round(2)}%" end   # When the script is run we will get a percentage complete counter like: #=> 0.1% #=> 0.2% #=> 0.3% #=> 0.4% #=> … :)

Most the time in Ruby parentheses are optional for parameters in method calls. Here is one case where you can expect the unexpected. class Course def track puts ‘masters’ end end   class Elective < Course def track(type) super puts type end end   Elective.new.track(’art’) #=> ArgumentError: wrong number of arguments (1 for 0) But… class Course def track puts ‘masters’ end end   class Elective < Course def track(type) super() puts type end end   Elective.new.track(’art’) #=> masters :)