I'd suggest the opposite of parent comment's advice to young programmers. Don't buy in to the mindset of "how does this benefit me, me, me." If you find yourself in a position where you're happy with your burgeoning career--i.e., having a roof over your head, and not worrying about your next meal--contributing your talent to F/OSS, regardless of who "benefits", is one of the best ways you can apply your specialized domain knowledge to improving the general good. Basically what the article says.