Programming is a skill sure, but it does not create value, it creates programs.
Programs may create value, so, the valuable skill is not really being able to create a program, but being able to find some problem, whose solution creates value.
Programming may be required if the problem can be solved by a program, or if a program can solve a problem so much better or faster or cheaper that there is additional value in employing the program..
I'm a programmer, I love programming, but I'm entirely aware that actual programming is not what makes the money. If I had _the_idea_ pop into my head, I'd probably start developing prototypes, that's where my skill would be best applied at that stage.. If they showed promise, I'd likely start full-time development on it, but I'd be looking carefully for the point where I'd be able take on additional programmers and focus more on _the_idea_ and what's around that, I'd definitely hire marketing and leadership too, since those are also not my core competence.. I realize that means that my obvious core competence (programming) is unused, and that's true, my main role would be to try not to screw it up.. Nobody got rich on technical excellence, it's half the time not even a requirement for success.