There's a strange phenomenon that starts to happen when you develop in an IDE that has Intellisense (or something similar). Developers start to depend so much on Intellisense and syntax highlighting that they contort the way they develop in order to make it work.
Test First Design dictates that you write the testcase before the code. So, you write the testcase. You mention a class name (that doesn't exist yet) and it appears with red underline. Gasp!! Syntax error. Worse still, I can't just type the first two characters of the class name and use code completion - horrors. Let me define the class. Whew! I can now type only two letters and complete it.
Now, I have to send a message to that object. I type the "." character - what's wrong? The method I want to call isn't in the list!! Horrors - I'd better go stub it right away! I have to decide on parameter and return types - oops, those classes don't exist yet, let me define them quick. Now what - the method is still not visible in Intellisense! Oh, forgot the "public". Whew - there it is.Now I can just select it. That was so much easier.
It's really hard to break out of this mode - but there are so many interruptions it's hard to focus in what you're doing. You start jumping all over the place to make Intellisense happy and losing track of what you are doing. It's hard enough to focus on making what you're doing clean and simple. Jumping all over the place to make Intellisense happy is a distraction. Worse still, it tends to tie you into early design decisions - If you change your mind about how the high level method should work, it's hard to undo all the other things you did to make Intellisense happy.
Of course, you can always ignore Intellisense but once you start to depend on it, it's hard to resist the temptation to make it work all the time.