I'm using bits heavily, but not BIT or ENUM fields, I don't trust these, just a simple INT and then use standard binary operators (^ & |). Also, since I'm using standard INT I can do identical operations on PHP side.
I can't imagine writing anything without these, it reduces the dataset soo much in many cases (it's 32 booleans in one int field, this makes you simply don't care about the aboundance of various flags in your data).