I don't know if I just heard this idea, or simply formed it after years of schooling and practice. But here it is: the three stages of designer development.
Stage 1 is to recognize good design from the bad. I think most adults can do this, but choose not to if they don't feel like it.
Stage 2 is to not only recognize poor design, but to be able to figure out what, exactly, is wrong with it.
Stage 3 is to recognize problems in design and know how to fix them.
So, to be a good, mature designer, you need to be able to look at your own design, figure out what's wrong with it, and know how to fix it and make it better. The way to reach this point is the same way you get better at anything: practice. One of the most beneficial experiences I had in college was when we had to put all our work up on the board and look at each other's stuff. Nearly all of us were at stage 2 at that point, but as time progressed, we simply started to catch on and figure out how to anticipate the critiques and better develop our designs against them.
So naturally as a teacher I try to offer the same practice to my students. I'm not nearly as harsh as professors can be. They're only 12 years old. But I do hope that they start to recognize what is well-done and what isn't, and start to strive for the former.