I think its currently true in our industry, although its hard to measure. The difference between "rock-star" and avg developer (even the ones without CS degrees) isn't no were near 10x. Could be because the tech changes so frequently, so everyone starts at zero every 5 years. Another things is that everything is open, open-sourced, books, talks, videos its easy to become a avg developer. I always thought software engineers have a lot in common with athletes; limited shelf-life, make good money (although not as much but within 2-3x over avg career), can retire young (if successful).
"The difference between "rock-star" and avg developer (even the ones without CS degrees) isn't no were near 10x"
It is significantly higher than 10x. The "problem" is that a) talent is wasted, b) talent is concentrated, c) talent is context based, and d) we apply the term "rock-star" to basically anyone better than average.
Usually there is only a 2-3x difference between team members and so a guy at google who is a 10x'er is likely only 2x as good as the rest of the team. But the average googler is in the top20% of the industry and is 3-4x better than the average dev.
Regarding c) I'm a 5-10x'er when working with large legacy code bases in a specific domain. Put me in a lean startup though and I am average at best.
I call BS on this. Your telling me that you can do a avg task in one day while it would take some avg developer 5 to 10 days. The amount of information that is out there -- it would take a simple Google search or a day or two of researching to get enough info to complete the task. I am not saying that there aren't tasks that require highly specialized knowledge -- but this is pretty much not true for most jobs out there.
Of course I can... within my niche anyway! I'll provide some extreme examples to help show you what I mean.
Example 1) A good games developer can easily create a game in a week that would take the average developer months. The average dev has never even developed a game before.
Example 2) Have you ever worked on a large codebase (500,000+ loc)? Fixing a defect in a codebase that kind of size is not something you can easily google. A person who has experience with large enterprise systems knows the kinds of typical architectures they have and if trying to find the source of a bug knows how to heuristically carve up the solution and perform a kind of log n search. A developer without this kind of experience has to look at almost the entire search space.
Example 3) A developer medical domain knowledge can quickly determine if the requirements for a new bit of medical software actually make sense and are a reasonable approach to the problem. A great developer without this domain experience is going to have many more false starts.
Of course in the real world the disparities between individual developers are not that apparent because we work as teams and help each other out. E.g. In the enterprise example a more senior member will usually help you narrow down the search space even if just with a simple "oh for that kind of problem you need to check for x in the audit tables" or a "go talk to Steve about that as he is an expert in that subsystem"