My personal ideia:
Learn a little GCode, and program by hand. At the end, if the parts are not very complex, the machine will act exactly as you want to and how you expect to. You are making an investment on yourself rather on the software. I normally draw what I want on a 2D program (there are free ones all over the internet) and make my movements with them.
If the parts are very complex, then you would need a good software, that could cost more than the machine.
Never less a CAM software will eventually need some changes before sending to the machine, so at the end you will need to know Gcode.