You should give blood. Everybody who can should give blood. Does it take an hour of your day? Yep, it sure does. Every eight weeks. Which means that if you give every eight weeks, you will have to give up about 6.5 hours a year. It also means that with that 6.5 hours a year, you could save 19 lives! Which means that if you give blood every eight weeks for 25 years, you could save 475 lives. How else are you going to get the chance to do that?
Well...you could become a superhero and in that case any mutations you may have undergone or your being from another planet or having impervious skin may prevent you from donating blood. If you are a superhero, I let you off the hook.
All you other people who are healthy enough and can make the time, go donate!
A word of advice, though. Don't exercise after you donate, and if you are on a diet, make that your day off. I speak as someone who has learned the lesson. Cheers!