I missed the part where the (now) externality of cost of development is recouped by the company paying the developer. You've just shifted the cost upstream, outside of the system under consideration, without providing an explanation of how your twisted world view provides any retail software. You might as well state that you think that all software available to the public should be free and then explain how this is viable in a world where software engineers are very few and far between. (As they would be in a world where there is no retail software.)