There's a dirtier secret:
A load of professional programmers are not able to make new programs.
A load of professional programmers are not able to modify existing programs.
And a load of professional programmers are not able to finish programs.
Almost no-one is good at all 3. Most are extremely bad at least one of these.
Lots of people who are "good" at making new programs are actually pretty bad.