The best tutor is you, yourself. It is more important to learn how to learn; improper methods of teaching/learning are one of the major reasons why people fail to learn new things.
In web development though, I'd recommend learning the basics of something, say AngularJS for example, then start making projects on it. As you work on projects, you will encounter problems, the solutions of which are usually found on the internet, primarily Stack Overflow. Then you should research every line of code that you write; you should be clear about the program that you are writing - that is a must.
Slowly things will start to make sense.
Also, in order to become good at this, after getting a good grasp on the basics, start digging into other people's code - like if you are learning CSS, it is a good idea to check out bootstrap.css code to see how it is written. You gain good insight that way.