I've thought about this from time-to-time and thought I'd share this thought. I feel like software development is a lot like acting. Not in the "there are a lot of out-of-work programmers" kind of way either. I mean, in the way that we approach our craft. An actor agrees to play a role. He/She goes and does research for the role. They discuss the overall vision for their character with the writer(s) and director(s). They might talk to people who live in their character's home town, or they might ......