engineer is being able to balance stability and changability programming provides stability but not changability stability is for it to be reliable. dont always abstract