I taught myself how to code. But I taught myself everything I know. I am not trying to sound full of myself, I actually think that this is true for everyone.
I love the American Pragmatist Philosopher John Dewey. He was much smarter than I. He also thought very deeply about the question of what it is to "learn" something. He developed a theory that says something that might sound basic. To know something is to have an experience of something. He laid the theory that knowing something is being able to apply it in the context in which it will be used. And, the only way to know something is to have done it before, to feel the nuances based on your experiences, to gain the habit, the muscle memory, the traps and the ability to figure out what will probably work and what wont. This also means that knowledge cannot really be taught.
The concept is very similar to what we hear all the time in programming communities. Do projects, build things, don't get stuck in tutorial purgatory, make projects apply what you learned. Dewey would agree with this.
Saying that you can't be taught something sounds harsh. Of course there is value in teaching and learning from others. After all, there will always be people more experienced than you at what you are trying to do. Their experience is absolutely valuable, and what you get from them is knowledge about perils, it is knowledge about what will give you more leverage, about where to direct your attention to get a good basis, but the problem is when you begin to confuse hearing facts about something with learning about something. You cannot transfer knowledge into your head. You need to practice in the context as close as the real thing. Otherwise, you will only get good at answering quizzes, not at solving problems.
So, we are all self taught, because it is only by doing the work that you learn. And doing the work, takes effort that you can simply not buy. A teacher can show you the way, but learning happens on your own.
Do you agree?