This is an interesting concept - that writing songs and computer programming have a lot in common - but really the writer's (CD Baby founder Derek Sivers) vision is far too narrow - he's just comparing the creative operations he happens to be familiar with - the real issue here is the commonality of affect on the creator of most ANY creative endeavor.
- I'll name a few ways that come to mind so far, and then maybe some other musician/programmers can contribute some more to the list.
It starts with a vague concept of something that could/should exist, then is slowly crafted towards that vision, like a sculpture.
Both songwriting and user-interface design make you constantly put yourself in the audience's shoes - to make sure they understand what you're trying to express. Will they understand your turn of phrase? Will they know where to click to complete the form?
Both songwriting and user-interface design need to hold the audience's attention all the way through, knowing that one wrong decision might lose them forever.
One big problem really wraps around dozens of little problems. Finding the right chord, the right query, the right phrase, the right page-layout. These little problems are the addictive potato-chips that keep me going.
Every person on earth would solve these problems (both little and big) a little bit differently.
Even trying to imitate someone else's creation will make your own unique version of it. Imitation is a great way to learn. Humans are imperfect mirrors.
I resist starting. I'll make 1000 distractions for myself. But once I start, and get into it, it's the best thing in the world and I don't want to stop.
It makes me jump out of bed at 2 AM wanting to try the ideas in my head to see if they work.
Too much repetition, and it's boring. Not enough repetition, and it's hard to understand. (in programming's case this means the code, not the final product)
Once you're done you want to show off your creation to the world.