There are lots of reasons to contribute to open source projects. Here are three reasons which motivate people I know:
Reason 1: you believe in the philosophy behind open source
Open source allows people to build on top of other people’s work. Almost everything running on the internet (Google, Wikipedia, Facebook, etc.) depends to some extend on one or more pieces of open source software. If you believe in this philosophy, contributing to open source projects will give you tremendous satisfaction, especially when your contributions will be used by millions of people around the world!
Reason 2: it’s a way to meet and work with bright people
Most successful open source projects are driven by a core team of very talented people. Your first contribution might be very minor and will not involve a lot of interaction, but as your contributions increase, you will eventually get to really work with team. You might even get to meet them in person!
Reason 3: it’s a great way to improve your skills and resume
Contributing to open source projects will require you to learn something or solve a challenging problem. It also looks good on a resume. A potential employer can go and actually see what were your contributions.
In addition, I would add that if you are working on an open source project as a side thing, it gives you a break from your normal day-to-day activities. Sometimes, the change of project, tools, etc. enlightens you and helps you solve problems in other areas.