I absolutely never use !variable because it is not easily readable and anyone can overlook it. So I only use if value, never if !value. Also, i have moved into using comparison when there are more variables because it is exact. So I will use if value, if value == false and then i value == true && value == 5 ... This way you will never have issues for yourself, but also when working in a team. Shortening booleans was never a good idea and negator(!) has very few good uses, though still usable.
Problem is that to avoid the not-exp, you transfer the cognitive load on the identifier.
I think a good variable name is more important, if that avoids the not-exp nice, but that's secondary.