I noticed over time that coding requires the same skills that one uses in writing stories or poems or songs. By that, I’m not referring to spelling or context, but in terms of plot and theme. The program has to make sense, not only to the programmer, but also to the end user. Just as a writer must write for his audience, the programmer must code for the end user…and just as small mistakes in theme and tense and plot can doom a book to obscurity, any programmer knows that a wrong punctuation mark can screw up a program even if it compiles perfectly.
Stories, songs, programs…like football, baseball, and basketball, they are wildly different, but at their base, they require much the same skill sets.