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.