Dave Winer is mistaken: you can get good pastrami in Boston, although you cannot get good corned beef. (Boston people have their own idea of corned beef. It's not a very good idea, but they're entitled. CF. New England Boiled Dinner.)
Dave, on the other hand, is not mistaken in today's long and important reminder that software ought to cost money. There is nothing outside the economy. You can believe all you want in Open Source or viral marketing or gift economies or the GDR, but you still can't find the outside of the economy. If you don't pay money, you pay something else. (In fact, you pay more -- because when you pay in funny currencies like quatlu's or prestige or tenure, you also have to pay the vigorish for the exchange rate.)
Update: Aaron Swartz takes me to task. He observes that some people might write software in their spare time, or be compensated in other ways. For example, university professors aren't officially paid to create programs -- but they may need to create programs and write papers about them in order to keep their jobs.
My answer is that indirect payment is still payment. Sure, you can hire a programmer, pay them a salary, tell them what you want written. The software is yours. You don't pay for additional copies -- but it's not free, any more than hiring a carpenter to build some shelves for your kitchen makes the shelves free.
Sure, you can give away free copies of the software you commissioned. The recipients don't pay you -- the software seems 'free'. But, sooner or later, value of some sort flows back up the system. If it doesn't, nobody will do it again. And that value is always something convertible to money: that's why they call it money.
It's all speculation, all new and innovative software, all researh. You can speculate by creating it yourself. You can speculate by hiring someone to make it for you. You can speculate by betting your tenure chances. You can speculate by coming up with a really good message, marketing it like crazy, and recruiting volunteers to
paint your fence write your code.
The differences between these modes of payment are interesting in themselves, and get involved in some interesting questions of risk arbitrage. But they're little differences -- percentage points. It's nice if we can use these differences to reduce expenses -- but it's still going to cost, we're still going to pay.
You can shift the payments to different accounts -- paying in tenure instead of dollars, or buying a programmer instead of the program. Just don't be fooled by your own accounting tricks.