Good advice that nobody should ever need to be taught but alas most do. When I get on a project already loaded with Booleans I add comments explaining what they signify but new code I will always add enums.
By the way no function declaration or call should ever end with a ( that is hideous. It was started in the same Microsoft magazine that introduced ( this_shit ) and it deserves prison time.