I think like a lot of myths, there is a kernel of truth in the 10x programmer myth. The fact is, some problems are hard. Some problems are beyond the grasp of some developers. Even given unlimited time an individual may not ever accomplish the goal. I can certainly think of problem sets where that is true of myself. In those specific circumstances, that person can be considered a "10x programmer" when compared with a…
Perhaps a better way to look at this is to assume the average is 3X, and there exist developers at X, 10X, 0X, -X, and everywhere in between. And this productivity depends massively on circumstances like the size and makeup of the team, the established codebase, and the technical difficulty of the work.
I've worked with several individuals that are absolutely a 10x for a technically-difficult project where they are leading the architecture, but range from -1X to 0X as a regular contributor to a large project.