After my last post, I got some feedback, that I didn’t really answer the question in the title. So I’m going to fix that.
Roughly speaking, 10% of developers are doing unit testing today (Let’s call them group A). Some 15% have heard or tried (B), and the rest don’t even know it exists (C).
How do we get from the oblivious stage to actual practice? Well, first we need to get from C to B. The first way is external: A consultant gets called into the company and you get to learn from a master, or you go to a conference and gets to introduced to this new topic. From there it’s up to you. Which leads me to the second way – it’s ALL up to you. You want to improve yourself, and you start learning, reading blogs, go to user groups, go on mailing lists, read books. You’re climbing up the C-B ladder. Or you decide you don’t.
So the first move external or not, depends on ourselves. Guess what: if you’re reading this blog, you’ve gone through this path. But most developers don’t. I’ve mentioned this before, most developers see software development as a 9-to-5 job, rely on their employers to move their career. And organizations do not motivate them.
So that’s why most devs don’t get to B to begin with. But those who do, need to push more to get to A. Because this is where we fight the organization. We can use our power for good or evil, for or against the change.
It may be that we want to go forward with unit testing and the managers don’t. It takes a lot of energy to win these fights. Those who do, get to A. Another way to get there is to leave the company and go to another, that meets your vision, or become a consultant yourself.
To jump from B to C you need support – from the organization, from your team members. And if you have those but don’t have proper tools, you’ll fail as well. B is not just a step on the way up. It’s a place for frustrated developers as well.
To jump from B to C you need support – from the organization, from your team members. And if you have those but don’t have proper tools, you’ll fail as well. B is not just a step on the way up. It’s a place for frustrated developers as well.
So let’s recap. Most developers do not get exposed to unit testing. They do not feel the self motivation to improve. The few that do, need the support and self determination to get to the top. But not all of them have the drive and energy to pull forward.
And that’s why so few people do unit testing.
And that’s why so few people do unit testing.