David Airey recently wrote an excellent post on his blog about doing pro bono (i.e. free) work in order to add work to a design portfolio. You can read his post here: http://www.davidairey.com/pro-bono-design/
He makes some excellent points, which I won't go into here as it's better to read his post, but I thought I would explain a little about why I offer free and reduced rate services to charities and NPOs. Basically, it's because I have grown weary of companies that have lofty aims ('world peace', 'eradicate disease', etc) while doing little more than repeating those lofty aims. I decided to make pro bono work a key part of K Creative because, aside from supporting myself and my family, I'm not really interested in building an enormous business or being filthy rich. I'd like to be able to give time and/or resources to people who are genuinely trying to make a difference. Pro bono work is a good way of supporting good causes while doing something you enjoy, plus it has extra benefits:
1) Boost your portfolio. As David points out, it can add real-life work to a portfolio. This is especially important when just starting out or when jobs are few and far between. It keeps you in the game, as it were, and allows you to update your online presence with recent work.
2) Support a cause that means something to you. You do not have to give money to support a good cause; giving your time and skill is very worthwhile and will be appreciated.
3) Add new skills. You could offer to redesign a website or logo and find yourself being asked to give advice on the content of the site or a marketing strategy. Don't shy away from such approaches as you may be able to learn new skills. Conversely, don't weigh in on things that you don't feel sure about.
4) Get more work. This may seem a little bit cynical, but you may get paying clients through the client you do free work for. I don't suggest that this is a reason for deciding to do pro bono work, but it might be another unexpected benefit.
Some things to bear in mind:
1) Don't do it just to boost your portfolio. As stated in number 2 above, find a charity or NPO that you really want to support. It is much easier to be positive about a job when it means something to you.
2) Start small. Try a local charity or NPO to begin with: they are more likely to be working on a restricted budget and the proximity means that you can discuss the project in person. You could even offer to give advice or do some work for a friend who is trying to establish a business or website, but cannot afford to pay.
3) Treat them as you would a paying client. Just because you are doing something for free doesn't mean that you can do half a job. If you offer to do something, do it to the best of your ability and always stick to deadlines (if you cannot meet deadlines, give plenty of notice).
4) Be honest. As I mentioned above, don't accept work that you are not capable of carrying out as you are wasting your time and your client's time. It is good to learn new skills, but if they ask to give advice on something that is totally unrelated to your skills and experience, don't be afraid to say so. They will appreciate your honesty and you will not be perceived as a jack of all trades.
Good luck!