The fact that “design patterns” were “promoted too widely and misinterpreted even more so,” certainly blunted its effectiveness as a potential teaching tool. But, no one can deny, “silver bullets sell much better than the regular ones.”
The observation is a sound one: many of the world’s successful computer programs have a certain observable structure, and said structure can be usefully studied in a purely-abstract way. But students are rewarded for knowing the “right” answer, and for constructing their little programs in just the “right” way. And, for picking up a hammer and seeing nothing but nails everywhere. Because they were rewarded for seeing patterns everywhere, and for selecting the “right” pattern and for producing their stuff to “look just like that,” the good-idea backfired. I find students who have entered the working-world who do not really know how to work with more-“indefinite,” production, code bases. They are still looking for “the right answer.”