Knowing who is an enemy makes the difference between the survival and death during the battlefield. At the design process, the developers are your enemy. I regret I expressed it too strongly. It makes it vulnerable to the counter-argument. However I express it that way because it is true.
Why they are your enemy? Because once they write a single line of the code, they will stick to it. And worse, they can implement most of the user requirements in a few hours or days. So they think interaction design takes too long, and are not sure if it is necessary at all. While waiting, they got tempted to write a few line of codes to implement user requirement. So how about beginning implementation while waiting? Oops it started working. And I finished 90% of function already. So how about bringing a designer and ask him/her to make the existing product look better and declare done! Nobody likes the delaying project. And every management will love the guy who delivers project is done before schedule. Oh, I forgot the guys interviewing people and sketching rough drawings on the wall. They bring something to the table finally. But who cares? The project seems to be done, and no one in the management will like the news the existing product should be made again to reflect the change interaction designer brings.
That’s why those innocent looking, nice and kind developers are enemy in a nutshell. For this Cooper warns strongly do not let the coding begin before the interaction design process. Also that is why I kept interrupting Dr.V about the idea of two team (developer and interaction designer) working simultaneously.
So you know the identity of the enemy. It’s time to learn their characteristics so that we can defend ourselves. In this purpose, I recommend reading the Joel on software blog. He is very smart like every other developers. But what makes him really stands is that he has the rare talent of explaining simply with the humor using written language.