"But what if you're an experienced engineer? What if you've already learned the technology contained in the tool, and you're ready to stop worrying about it? Maybe letting the wizard do the work isn't a loss of knowledge but simply a form of storage: the tool as convenient information repository."<p>Right, and this is what a lot of code generation tools do. After understanding the problem, you write a tool which can write code to solve that problem in a more general sense.<p>Almost all the software we write can be thought of that way; they are information repositories for problems we already solved.<p>However, with a lot of things that require deep understanding, there are walls. These represent the places where a person can no longer fake understanding, and either have to stop immediately and develop some or give up. Before the days of wizards, users would encounter plenty of warning signs that their understanding was not enough well before hitting the wall. Example: your 100 line C program is segmentation faulting; time to better understand about pointers and memory allocation before you write a 20k line program depending on the same.<p>The problem is that wizards are very undiscriminating on who experiences the easing. The output is mostly the same for the experienced engineer as for the non-engineer. The brick wall for the non-engineer still remains, however warnings of danger ahead are hidden being a easy-to-use interface. There is no encouragement for them to go understand better before progressing, and instead they rush straight on into the wall. The still need all the understanding once they get there, but the encouragement to develop it comes later, and so the rate at which it needs to be learned comes faster.<p>The question this poses is really difficult: how do we abstract away the need to apply knowledge to the same problem repeatedly, yet avoid abstracting away the need to have that knowledge?<p>Otherwise, very worthwhile article. She captures the spirit of curiosity that drives the need for deep understanding in me, and probably most people here.