Quick, what’s wrong with this Rails migration?

add_column :users, :admin, :boolean

Yep – it can be null. Your Boolean column is supposed to be only true or
false. But now you’re in the madness of three-state Booleans: it can be true,
false, or NULL….

Read more at the source