How to learn Machine Learning
Courses: Andrew Ng Machine Learning Course from Coursera is what introduced me to machine learning, and I cannot think of a better way to do it. The course focuses on the theory rather than practice, but it offers solid theoretical foundations. fast.ai Machine Learning course is more programming oriented, I haven't taken it but it looks good.

Books: Hands on machine learning with Scikit-learn and Tensorflow by Aurélien Géron has a decent amount of theory explained in a very simple way, and it complements it with lots of code examples. If you want to dig deeper in statistics and theory, The Elements of Statistical Learning might be a good resource.

Practice: Kaggle is for sure the best place to practice and learn. After reading something or doing some course I advise to download the Titanic dataset and try to submit predictions.