For example, if I write software for a living, how exactly do I "perform" to survive if all my customers are getting my product for free?

You do what good software developers do - you support your customers and you listen to them. (Oh, and people who didn't pay for your product shouldn't be viewed as "customers"...)

I despise software developers who throw products out there and expects money to just roll in magically.

I'm in the software industry myself, and if there's one thing that sticks in my mind from a company I used to work for - it was the belief that having others copy our software would be a godsend. It would make our product more popular, and when the infringers actually wanted to be customers (which they inevitably would have - it was an enterprise-level product), they would pay for it.

Ultimately, their product was never good enough that anyone wanted to "steal" it, so... oh well

I despise software developers who throw products out there and expects money to just roll in magically.

That's ridiculous. So game developers, people who create financial management software or banking software, etc. should expect to live off what? Support? No, you create a product people want and sell it. If it is good, you have the money to write some more as you put food on the table and hope the combination of your reputation and quality of your next product allow you to continue to sell software and feed your family.