title: In Django, why is user.is_authenticated a method and not a member variable like is_staff
body: <p>I've lost some time with a bug in my app due to user authentication. I think that it's a bit confusing but maybe someone can explain the reason and it will appear to me very logical.</p>
  
  <p>The <code>user.is_staff</code> is a member variable while <code>user.is_authenticated</code> is a method. However <code>is_authenticated</code> only returns True or False depending if the class is <code>User</code> or <code>AnonymousUser</code> (see <a href="http://docs.djangoproject.com/en/dev/topics/auth/" rel="nofollow noreferrer">http://docs.djangoproject.com/en/dev/topics/auth/</a>)</p>
  
  <p>Is there a reason for that? Why <code>user.is_authenticated</code> is a method?</p>
  
  <p>Thanks in advance</p>