I have used the $40 code readers with a degree of success. I do all my own repairs. I have read about people who have been charged lots of money for a simple repair. for example - my 98 VW had a code which indicated that the throttle body had reached it limit. Huh?? some people went to their local VW and spent $800 to have the repair done and code reset. Long story very short, I cleaned the carbon off the throttle body, disconnected the battery for 30 minutes, re-connected everything and the throttle body reset itself. Total time involved was about 1 hour to repair, probably an hour or so for research.
I have been very fortunate in that a few friends are good mechanics. The few times I got stuck - they gave me some additional information to resolve the problem. These mechanics are also very honest and their customers return.
Like any business - there are some that are honest, some that are not. With all the sensors and computer chips in cars, it can be very difficult to determine what the problem is. My experience has been that the sensors are usually the failing item. It is much harder to do 'driveway repairs'