Perhaps we expect too much from schools. The education process is still essentially medieval in its practices, so why should schools for programmers be different? Typically, where there is a carefully worked-out educational program, it is to train future professionals with amateur habits, so perhaps it is better that they don't do much of a job. At least there's less to unlearn once you get into a real programming environment.

The Psychology of Computer Programming: Silver Anniversary Edition by Gerald M. Weinberg

ISBN: 0932633420 Page: 198, Chapter 10 This book is available from Amazon