Bjarne Stroustrup on sys-con answers:
A solid technical education, a sense of what is practical, persistence, impatience with dogma, a willingness to take (calculated) risks. In many cases, an aesthetic sense that deems existing solutions inadequate and guides innovation. You can’t innovate in the abstract; every innovation is a response to problems.
I think idealism often plays a part. Individuals who are just out for themselves are too easily diverted in short-term money-making schemes or corporate climbing.