Well the things I listed in my OP are my concrete ideas for how to approach these working on these things. If you have other concrete suggestions, I would love to hear them.
As an example: The reason why I focus on studying rails is that all of the debugging techniques I know about involve getting a better idea of the system at some layer of abstraction. I suspect that my best shot at getting better at debugging is to know the framework the code is written in very well and thereby be able to understand the codebase more easily.
For a problem like "I can't get clarity around what we are trying to do here.", it seems like there aren't any books on the topic. Thats why I figured that finding a mentor would be good.
The problems you describe sound like communication issues, not technical issues. Specifically, it sounds like you have a real problem with asking for help when you need it. Your time might be better spent reading a book on effective communication or perhaps taking a course at a local community college.
As an example: The reason why I focus on studying rails is that all of the debugging techniques I know about involve getting a better idea of the system at some layer of abstraction. I suspect that my best shot at getting better at debugging is to know the framework the code is written in very well and thereby be able to understand the codebase more easily.
For a problem like "I can't get clarity around what we are trying to do here.", it seems like there aren't any books on the topic. Thats why I figured that finding a mentor would be good.