Responding to my argument that you should give money to emergency food organizations rather than giving them a bunch of random canned goods you bought at retail markup, Ron Lieber at the New York Times says:
There is part of me that loves the pure rationality here. But here’s what you miss when you make this all about the money: the opportunity to teach. For a child, for instance, a food drive offers all sorts of lessons.
I don't really understand this. Food drives do teach a lot of valuable lessons to kids. Until, that is, you learn that giving $10 will buy twenty times as much food for poor people as would donating $10 worth of canned goods. Once you actually know the facts, then all it seems like you're doing is teaching kids to be too lazy to scrutinize the world. Give money. Make a big show of giving money so your kids see what's happening. Explain that you're giving the money away so hungry families can get food. Maybe you'll get a question about why you don't just pull some food off the shelf and give that, and you can teach a valuable lesson about economies of scale. The 20:1 multiplier here is really a big deal. We shouldn't be teaching kids that it's okay to be indifferent between helping one family and helping twenty families. It's a huge difference! I didn't just write that piece to be contrarian, it's actually the case that large quantities of avoidable suffering occur in the United States because people don't realize how much more useful cash donations are.