In a recent discussion on Oekonux, I came up with the following gradation of payment vs. voluntary contributions in peer production, which echoes the distinction made by Oekonux between singly-free software (a commons as output, but input is wage labour); and doubly-free software (commons output and participatory input).
Here is the model, which I think might be useful for analytical purposes:
1) voluntary contributions to a commons, without direct salary and payment (though another means of subsistence is necessary). This was the case for early Linux development.
2) payment with freedom, which corresponds to a kind of unofficial basic income: in this scenario, practiced to some degree in the corporate commons that Linux has become, programmers have varying degrees of freedom to voluntarily contribute, without command and control of those that pay the salary
3) conditional payment with relative freedom: paid freelance work on extending a (software) commons., The freedom is that by choosing your clients, you can exert an important degree of influence of what part of the commons you are contributing too
4) conditional payment without freedom: those that pay you direct your work entirely, this would be the classic command and control corporate setting, with only the output going to the commons