Thinking procedurally