Don't Want to Pay to Have Someone do a Shitload of Work for You? Screw You!
Not paying someone to do business related work devalues that 'sort of work', across the board.
If I can get interns to some amount of work for free, then I am not employing and (more importantly) paying someone to do that same work.
This may be good for the company, but it is bad for people who are unemployed and the other employees of the company.
This is because the practice drags down the average price that any company can expect to pay for one unit of that 'sort of work'.
This may be great for shareholders, the CEO's bank balance, but it is not good for anyone else.
(Economically it is better to have an intern making minimum wage, and spending it than to have the money aggregating in some billionaire's bank somewhere).
To act like the intern has any choice in the matter is wrong; as the majority of companies now precondition employment for even the 'starting' positions with some amount of experience. It used to be that employers would hire kids right out of college and actually take the time to mentor them in the business world. Then it was internships during college, and now it is unpaid internships, and soon I'm sure we will be paying for the opportunity to work!
It strikes me as incredibly arrogant that someone would think that the mere experience of working for him is equivalent to any sort of compensation. (What am I really gaining out of making photocopies for you, Mr. Cuban?) When profitable work gets done, someone should get paid, end of story. To me that seems to be morally and ethically correct, even if it drives my bottom line down by a few dollars an hour.