For some reason I tend to prefer the idea of being more "abstract" like Salt is. So my private project (server+vagrant) is being provisioned with Salt. Like borplk i'm interested in opinions of people which have experience with both.
In general, we build things with the goal of readability by diverse levels of skill and busy-ness -- to make things readable like a book and easy so you don't forget something in Ansible 6 months after you wrote it, and so you can dive in, get something done, and dive out.
We've got some IT managers saying they can tell employees to do X, Y, and Z, and not knowing Ansible, can still read the playbook. So, it should be fine for your freelancer case I'm sure. This is also why there is no graph dependency system, just handlers and notifies, so you can read things top to bottom.
I heard great things about Ansible and would love to try it, but in some of the environments I work in, using GPL software (especially v3) is not possible (in other environments it is perfectly fine).
Because I'd like to use the same system in all environments I work in, and because I strongly prefer a Python-based system, I'll probably go with Salt.
If there were a different licensing option than GPL, I'd look into Ansible first, based on all the comments I read about it so far.
I understand the part about GPL libraries forcing it on linked applications. However, not sure why it matters regarding stand-alone apps.