I am all for eliminating earmarks to for-profit companies and for extending it to non-profits as well. All discretionary money should be awarded on an open, competitive basis, with oversight of the executive branch agencies by appropriate Congressional committees. Earmarks have no place in federal spending, as a matter of principle. From The Washington Post:
"It ensures that for-profit companies no longer reap the rewards of congressional earmarks and limits the influence of lobbyists on members of Congress," House Speaker Nancy Pelosi (D-Calif.) said, linking the move to earlier decisions to ban gifts from lobbyists and forbid privately financed travel.
Democrats made the move to bar earmarks for for-profit entities despite fierce resistance from many rank-and-file lawmakers who rely on them to spread federal money around their districts and consider them crucial to their political fortunes.
Republicans responded immediately by proposing a moratorium on all earmarks, even those for nonprofits such as universities. House Minority Leader John A. Boehner (R-Ohio) said voters would reward Republicans in the November midterm elections for taking on special interests.
It's not the $20 billion hit to the budget -- federal spending may not even go down if special interest projects are replaced by meritorious projects. It is the lack of transparency and the potential for corruption that is the problem. I don't think this ban alone will be enough to stop the corruption -- Congress must do its job to oversee the federal agencies running the competitive processes. <!--break-->Good luck with that, and with getting anything through the Senate.