Good analogy from Matthias Ernst:
We expect to read a property without visibly affecting the object. Reading properties is supposed to be a safe operation. We also expect setting the same value for a second time to have no tangible effect. Setting properties is supposed to be idempotent. The values we see from properties may or may not be the actual state of an object, they are merely a representation.