Dries recently wrote about funding a code sprint for Fields in core. Acquia is committed to funding various bits and pieces and supporting it directly. I know what that's like -- Bryght and some of our clients funded many early Drupal improvements and gatherings directly.
So why should you support this particular code sprint? Well, for one, it means we can ideally have one of the key innovations of CCK / Views directly in the core of Drupal, making it a more robust / scalable / flexible system. Me? I just want to kill the profile module and move a few other alternate field-light systems to a native field solution (e.g. webform). Don't have money to donate? That's OK, head on over to the Fields in Core group and participate with golden code. Or golden UI mockups. Or golden patch testing. You get the picture...
I, personally, have a history of trying to round up funding for various improvements. Since I can only code well enough to convince other people it should be done better, I try and spend my energies describing possible solutions or rallying money/resources behind such ideas.
I actively encourage companies and individual contributors to put up donate buttons. I've recently been in need of large / multiple file uploads, so I approached the SWFUpload maintainers, helped clean up the issue queue, and set up a big chipin right on the project page. That money will go directly to developers working on making this solution better.
Privatemsg is another module that has a donate button, but they are actually few and far between. I've made some comments on commercial interests on Drupal.org itself, but at the same time, I absolutely want to help support a commercial ecosystem. One way of doing that is for module maintainers to put donate / contact me buttons directly on their module pages. Why, for instance, doesn't Earl put a donate button on the Views project page?
The danger, of course, is tying or expecting compensation. You share (primarily) for "community ROI" -- every piece of code, comment, design, support request that you interact with in a larger community is something that you are giving ... and the return on your invested time WILL come back to you many fold in a number of different ways. Increased exposure, increased business, better code, more connections. Direct participation in the community is worth MORE than money.
But look at the code you use and the people behind it. If you feel you can't commit time or your own resources, money is a perfectly acceptable substitute. Any of the items I've mentioned here are things I consider worth funding. Pick one of them, or think about a donation directly to the maintainer of some module that you use regularly.
Addendum: if you've read this far, and you're interested in what I have to say, consider donating to my send Boris to Drupalcon DC 2009 chipin. I have a proposal for Practical RDF and Semantic Web, as well as a BoF on Drupal Entrepreneurs / Drupal for Startups.