Generally seen as a good idea if you can't get other work in the industry.
Expenses should definitely be paid (In my opinion) and obviously we'd all like a wage aswell but I think it's not as necessary if you don't rely on the income.
There may be issues that people who do internships where they do actual tasks to help run the business (rather than shadowing) should always have been paid minimum wage as they are working, and agreements to do the work unpaid aren't valid.
I'd think it depends on what you are getting out of the work and what you are doing as to how long. 6 weeks seems a good length of time (standard summer holiday length for example) but 2 weeks shadowing, or 3 months working cheaply would both be really valuable experience.
I'm starting to have mixed feelings towards the idea of unpaid internships, yes it is a great way to get some experience, but how can anyone be expected to pay their rent, bills, council tax...for extended periods of time? Even if we factor in a baseline figure of around Â£300/month rent, Â£120/month bills, Â£80/month food, we have hit Â£500 x 3 months, that is a grand and half! And to get what? Experience...
Its all well and good when you are 21, fresh out of uni and can still sponge off mum and dad, but where does that put the rest of the world?
I have been a little annoyed by the "find me a job and win 10% of my wage for a year" thing floating around twitter, if you are willing to give up 10% why not just take a lower paid job? Why should someone have to give up their hard earned money to get given a job?
This subject is a little close to my heart, so sorry rant over.
If the grand and a half (I'm sure it'd be much closer to 2 and a half) gets you the experience "needed" to get that "first" job. It's worth every penny. But there is no guarantee it will help. And saving up that amount of money is by no means easy. Nor is working for free when you've had an income to save up that money.