I agree to an extent. But what if you just want to learn and you DON'T have skills. I realize most people just teach themselves. Fine. I did that too. But there is a definite benefit to working with teams on programming projects that you wouldn't get otherwise unless you worked at a company...and most companies wouldn't pay you outright unless you had skills. So in this scenario, I think the unpaid internship idea makes sense.