<i>I also don&#x27;t see how a client&#x2F;boss changing requirements makes me a bad programmer.</i><p>Being able to take vague and changing requirements in your stride and still deliver something that the end user actually wants (as opposed to what the end user asked for&#x2F;thinks they wants), is the hallmark of a great programmer.  The more I work as a programmer the more I realize that simply typing code is just a small part of my job (and the easiest part).<p><i>This is in same line of thinking as saying someone is bad at sports because sometimes it rains when they go to the park to play.</i><p>It&#x27;s more like a player complaining that the reasons they suck is that all their teammates can never pass the ball right.  Everybody can catch&#x2F;score off of a prefect pass, what makes someone great is managing to adapt to and deal with a bad pass.