Although I have some criticisms, https://freeCodeCamp is donation based and covers many basics. I haven't looked at Kahn Academy's style yet, but it's free also.
Finding the right tutorial/book is actually a big challenge, but every now and then someone nails it. For me, that means the examples are practical (not just abstract data manipulation), and build one upon another to make an overall larger program that actually does something; amongst other details.
Immersion does wonders, just like with spoken languages, and pulling from multiple sources helps create different ways of making that happen.
Feel free to ask me questions!