Describir: Thinking as a programmer :