This brings up a few questions.
Q1: Is this strategy still true? With the speed that information travels and web 2.0 communities?
Q2: Is unit testing a disruptive innovation?
Q3: If it is true, what is the state of unit tests. Have we reached the chasm? I like Tara Hunt‘s illustration of this:
Q4: Suppose that unit tests are at the chasm, as Eric Sink says we have to act our age and find a sub-segment group within the software development. This group must communicate between themselves and have a big pain that unit test will solve. What is this segment?
I would be happy to hear your answers, here are mine:
Q1: I think that the strategy is still true.
The other day I went shopping in the local food market in the early morning looking for chestnuts that I had to buy the team for a bet that I lost. There where many empty stalls but one stall was full of people, my instinct was to go to the crowded stall. I chose without looking at the price or quality, but I looked at what the market is doing. This I think is the basic issue of crossing the chasm – having a group of people do the same good thing without needing to spend time on research.
Q2: Last year I thought that unit testing is not a disruptive innovation, but I changed my mind. I think that it is disruptive. Most developers are under pressure and are happy to pass QA to other people. I have seen many teams shun at the idea of changing their habits and spend even more time doing unit tests, even though it will save loads of time in the end.
Q3: The early adopters are 15% of the the market, so do 15% of the developers unit test? Telerik (2008) says that 27% do unit tests, while Methods and Tools (2006) says around 15% (image from Ed Gibbs)
From our surveys, many developers call different activities unit testing. We also found less then 10% actually do unit testing. But combining these surveys together with the fact that we are seeing early majority type of questions in the community (If unit testing is so great, why aren’t more companies doing it?) I think that we are at the chasm.
Q4. This is the question that I don’t have an answer for yet. I do know that there are segments. For example, did you know that the avionics have a standard called DO-178B, that requires a 100% unit test coverage. So when it comes to human lives and the cost of a bug is high, management makes sure that all software has unit tests. But this standard has not made it into other industries.
Do you know of other developer sub groups/communities?