I’ve had a post with this title in my drafts for a while now, but never took the time to properly write it out. Now, Boone Gorges wrote about his “patronage” model, which pretty much mentions everything (plus more!) what I had in my mind all this time:
To combat the conflict, so that I can contribute more, I’ve moved increasingly toward what I think of as a “patronage” model. Broadly, the idea is that clients fund the process of turning the custom-developed features (that they were already going to pay for) into something that can be contributed back to the free software community; in exchange, they get certain benefits, like prestige and publicity.
Boone sums up all advantages for both the client and the developer, but also for the open source project (not just WordPress, it applies to all open source projects). Giving back to the project that has given you so much, mostly for free, should be a goal for much more projects. The open source projects will benefit on the long term.