I went on a couple of interviews where the interviewer said “We use test-driven development.”
Even my sister thinks that test-driven development is stupid. How can you write tests before you write the program?
I try to be polite, even when the interviewer says “I’m a retard. Do you like working for idiots?” I express polite skepticism, over whether it’s a good idea.
The reaction of the interviewer is interesting.
When someone disagrees with me, I try to convince them. If someone is completely hopeless I give up, but I try to answer reasonable questions.
For example, many people express skepticism about agorism and really free markets. I answer any reasonable questions. However, wasting time on pro-State trolls is stupid. I wonder if the interviewer sees me as a troll who hasn’t drunk the “test driven development” Kool-Aid.
That is a subtle distinction. “I don’t waste time on stupid people who disagree with me, because I’ll never convince them.” and “I don’t waste time on people who disagree with me, because I’m stubborn and don’t want my false beliefs challenged.” I’m pretty sure that I do the former and “test driven development” idiots do the latter. The psychopath behavior mimics the behavior of a real leader. A real leader won’t waste time on fools. A psychopath won’t talk to people who question his leadership.
Here is the amazing part. No interviewer has tried to convince me that “test driven development” is a good idea! If it really is awesome, then the interviewer should be trying to explain to me why it’s a good idea!
When the interviewer is insane, interviewing for a job is like trying to join a religious cult. If I say “I’m not sure this is awesome!”, then the interviewer says “I’m not hiring FSK!” rather than “I’m going to try and convince FSK that this is a good technique!”
That is strong evidence that “test driven development” is a fad with no merit. If it really was awesome, the interviewer would try to explain the merits to me. Instead, they reject me because I don’t already think that test driven development is awesome.
In case you are confused, I do favor automated test scripts. I question the wisdom of writing the tests first. If I’m QAing someone else’s code, I look at the code and try to pick tests that use every bit of code. At my last job, they had really sloppy QA, even though they were a huge financial institution.
When an intelligent person disagrees with me, I try to convince them. I really am openminded. However, the people who advocate for “test driven development” don’t try to convince me, when I express polite skepticism. That is evidence that it’s hype-based and not merit-based.
There is one situation where “test driven development” is useful. If you and your subordinates are unqualified twits, then “test driven development” helps you wring some productivity out of clueless people.
As someone on the high end of the ability scale, I would be shackling myself, if I were forced to write a ton of tests before writing the code. Most of these “frameworks” and “development methodologies” are really methods for maximizing productivity from unqualified losers. It’s silly for me to shackle myself like that. I really can be 10x or 100x more productive than most people.