In this case ... the customer base forms part of the toolset.I do not subscribe to this theory. Toolsets can be changed, improved or mastered. I can do none of these with my customers. I can only do it with the things I use to create my services. I use tools to create services to assist my customers. Calling my customers "tools" does not help me.
The workman is saying that his tools are not doing what they are supposed to be doing, and that it is their fault.
I disagree with this analysis. The workman is saying that there are (usually a small number of) customers who require that the services be more complex in their implementation than might otherwise be expected. This is not the same thing. I know that around 80% to 90% of my customers never provoke the inbuilt protection systems in my code. The protection systems account for about 50% of my code. I have measured these things because I work in the defense industry. I know that around half my code is there because up to 20% of my customers don't use the system the way it was intended to be used. Whether this is lack of training, lack of awarenes, or malice doesn't matter. I don't "blame" them, but I know that if my customers only did what they were shown in training, and didn't do what they are trained not to do, 50% of my code would be unnecessary.
But do you mean, as Marxists contend, that variance in ability plays little or no role in variance in the efficiency of the work?
Of course not. I mean that for every worker, some of their work is producing features and facilities, and some of their work is protecting against inappropriate actions. The balance between these two might change with the abilities of the workers, but I suspect not much. It's a pretty constant ratio across my programmers. To assume what you seem to have assumed from what I have said is, again, perplexing. Perhaps we constantly talk past each other, but I'm finding it difficult in general to understand your mindset.