I am self taught and would have given up in short order but for the fact that I really wanted to build something specific (a web app that did something with text messages), I thought would be useful and therefore had reason to keep going even when I understood almost none of what I was doing. I used Michael Hartl's Ruby on Rails Tutorial and literally just copy/pasted his code until it worked without understanding any of it. It took me a very long time (many months if not years) to really understand the pieces and how they all fit together and then be able to apply that knowledge.
I've seen people with no experience do a month or two bootcamp and come away with a way better grasp than I would have, but they lack the real-world experience of applying that knowledge.