As a guitar instructor for 7.5 years at JL Music Academy, I have learned over the years that not everyone learns the same. I watched as some students just learned more efficiently than others in the same situation. I know now that I actually have quite a influence on a student's ability to retain and enjoy information. This means, you teach each child with a different approach. Some superstart students just had the ability to 'learn how to learn'. What this means to me is taking personal responsibility to find the best approach and constantly perfecting that. Just like being a teacher, as a student, you do not arrive. There is always a way to get better.
Currently, I either buy a book or purchase a course and I pay attention to the delivery, and ask myself: Does this teacher go on a lot of tangents? Does this teacher give too much information, too soon? Does this teacher give practical examples? And most importantly: Does this teacher ask questions before giving answers? I have found that certain teachers just do it right. Of course my choice of teacher/mentor may not work for everyone, but it is important to me.
If I like a book or a course, the teacher generally satisfies my questions above. I will contact them personally and ask for a mentorship, whether it is paid or not, that is up to the teacher.
I am really curious as to what all do you learn from your own motivation? How do you find teachers / mentors?
As an aside, I was just curious of communit's learning preferences. So I made a poll.
So for me personally doing my own projects is the most important, but to figure out how to do things I will use books, courses (free and paid), people in my network, anything available that can help. As for the official education, the most important aspect for me is the environment of like-minded people and good teachers, some of which I do consider mentors.
I started with something that would be equivalent to community college in the US, which was IT administration focused, so a lot of networking, servers, thing like that. During this time I also started building my homelab in which I learned most of the stuff I know today.
In working on this homelab I started doing some shell scripting and eventually moved into programming. After I finished IT administration degree I started a computer science course at an university of applied science (education is a lot cheaper in the Netherlands than in the US). Which I'm working on finishing now.
The best way to learn is to work with a master and then bypass the master. Paid courses are only good if you can stay on top of them and work on them daily. Building a app, website or program of some kind requires you to learn the newest, best, and fast. I would suggest that if you want to learn programming to learn one program language first. Mine was HTML, then I learn CSS and JavaScript. After I learn Python, and PHP. When I started to work on servers, building networks and databases, I had to learn from someone that has done it millions of times, and I had to learn with the pressure of I can't mess up. Every time I had worked with any personal server equipment and it does not work, I give up. Building it for other people forced me to fix any problem that comes my way. Read a lot of documentation, don't be scared to mess up and always ask questions. Hashnode, stack overflow and many other forms are constantly open when I am working on a new project because, someone else has done and done it well. Make sure you make good contact that you trust so, you can always ask them a question that you deemed stupid, or something you can't push through.