Most of the machine learning course or the content you find on web are really boring. May be it's just theory or equations.... Best part is look for multiple sources and give a conclusion or take a gist from all of this... Hardesttruth is you cannot keep on learning all the algorithms you find on machine learning. Best approach is to learn most popular algorithm and use them on practical projects.
Let me highlight some of algorithms:
Supervised learning:
Unsupervised learning:
Reinforcement Learning: understand the Markov decsion process.
Understand the intution behind every algorithm, even if you are not clear with equations its OK, but you should be clear about the intution .
Regarding reources:
If you are using python(Sorry i don't use R Lang or Java), numpy(used for matrix mathematics), Pandas, MatplotLib(used for visualization), Scikit are commonly used. Scikit Documentations are really awesome I would say its worth reading (which has little intro).
Initially try to build some recommnadation engines using Scikit .(Apache spark also has ML Library which you can use if you are interested in distributed Computing). Once you are okay with above, you can start with Deep Learning and AI. Keras and TensorFlow are really good libraries out there.
Googles Deepmind is awesome and Experiements with AI by Goolge has really nice projects which has github repo for the all the demo.
Hope this helps.