> So that means
> puts "It's equal" if 0 == true
>
> but 0 != true. Although it seems it should be, since 0 != false as
> well. So, by extension, if an object is not nil, and it is not equal to
> false, then it would stand to reason that it is equal to true.
>
> Any thoughts?

0 is not equal to true, but is implicitly converted to true.

Try:
puts "It's equal" if !!0 == true