- Positive side. Well, first of all, they are free to use. Neither you, nor you boss (what would probably make him/her happy), has to pay a penny. If you partially can make a tool working as it's supposed to, then the demo can be demonstrated to the team and your effort will probably be appreciated (sometimes in salary equivalent). You can also (not the usual case) find some tool community support on stackoverflow or GitHub issues pages since it's open source and there is a probability someone touched and tested it before.
- Negative side. From what I've learned so far is that very frequently those free of charge tools have a very poor documentation (and in my case, it's a real truth). Have you ever had a situation where following steps in a tool's documentation is simply not correct or outdated? What's your 911 call then? Stackoverflow or Google Groups? This leads to digging inside the code and making guesses of what's right and what's wrong with the particular action. Imagine you are comfortable with Java, or vice versa, with Python or Ruby, and then you are given a task to explore the tool written in Go and make it work somehow. Asking community support sometimes might takes days to get responses. I like to learn things, but not when it takes that much time to make a small part of a tool to function.
My question is not about particular tool that I can't make to work in a way it pretended to be according to documentation. Rather I want to ask how would you handle these situations? Reporting back to the management that the tool is not able to perform certain tasks it claims it should, or just keep trying (while probably wasting time) to explore it till I find a solution to the problem (not a guarantee of course)?