But I think the most powerful concept now is _software synthesis_. The basic idea being that you specify the constraints and let the computer write the actual code, or some variation over that.
It's called Prolog.
Subject of this entire thread: http://www.e-commerce-review.com/wp-content/uploads/2010/09/image51.png
