The definition of charity seems to be giving money to those in need, but I prefer a less specific definition: Helping those in need. To do this, you can give money to 'charities', or you could perhaps try to help with systemic problems by attempting to effect wider change: If you're able to influence your country's government, isn't this more likely to have more effect, especially in the long run?