To me programming is creative work. It feels very similar to writing music in that you iteratively produce a conceptual piece of work for others to consume. The flexibility and and self analysis required are similar. There is another similarity in that both writing software and writing music are creating operating instructions for man made instruments (not including voice of course). A score is a set of instructions to an instrumentalist and object code is a set of instructions for a computer. It’s not a deep point, but perhaps that’s one of the reasons why the other similarities exist.
I never trained as a programmer but moved sidewise into it from music in the early 90s when I worked for Ultralab at what is now Anglia Ruskin University. They had taken me on to write and sequence music for educational software they were producing at that time. But pretty soon I started wanting to make my own software so learnt hypercard initially then, pascal, c and paragraph cpx searching for new languages that I could use to make creative software.
I’ve pretty well worked in software development of one kind or another since then having learned a host of languages (all of which are very similar incidentally – with the possible exception of prograph). I’ve also learned and operated under an number of different “Programming Methods” which are really methods for managing programming projects.