In the practical world of computing, it is rather uncommon that a program, once it performs correctly and satisfactorily, remains unchanged forever.
~ Niklaus Wirth
My duty as a teacher is to train, educate future programmers.
A good designer must rely on experience, on precise, logic thinking; and on pedantic exactness. No magic will do.