Which is the best way for comparing dates?

Is it correct to do this? if @date_a > @date_b puts 'hi' end

assuming those are both instances of Date, (or Time etc.) then yes.
Ruby won't let you compare an instance of Date with a Time instance,
and equally funny things will happen if either (or both) of those are
string representations of the dates.

Fred

I think you'll be good to go with that one.