I agree with orthogonal. I see it as a 2x2 grid: free($), paid vs open, closed.
free/open: no problem if you have altruistic developers
free/closed: seems great, but problems can happen (google)
paid/closed: generally works, vulnerable to predatory pricing
paid/open: lots of companies experimenting with this model