Programs are read more often than they are written.
There is no such thing as "done". Much more investment will be spent modifying programs than developing them initially.
They are structured using a basic set of state and control flow concepts.
Readers need to understand programs in detail and in concept. Sometimes they move from detail to concept, sometimes from concept to detail.
