I tend to contribute to projects that benefit whatever else I'm working on at the time. If an open source project gets me half way to fulfilling a feature, I have no problem taking it the rest of the way and contributing back. It's better than starting from scratch!