Exactly!!!! So much of objc programming is about maintaining internal state. Dot syntax and automatically synthesized properties just obfuscates whats actually going on.
IMO you should always be accessing the ivar directly unless you have a specific reason not to.