Indeed, the woes of Software Engineering are not due to lack of tools, or proper management, but largely due to lack of sufficient technical competence.
Niklaus WirthExperience shows that the success of a programming course critically depends on the choice of these examples.
Niklaus Wirth