W I N K E L M A N N s L A W S O F S O F T W A R E E N G I N E E R I N G I. Try not to master complexity - try to reduce it. II. When you get stuck, simplify. When simplifying the implementation does not help, simplify the problem. III. Using any formal software-development methodology is a form of superstition. IV. What distinguishes man from animal is his incompetence. V. There are two types of software developers: those that have no principles and don't give a fuck (these are dangerous and a menace to society) and those that cling to so-called "principles" (these can not be trusted).