Good post. I am slowly self-learning machine learning (I was not formally taught it) and programming (R, Python).
The O'Reilly books for R, Python and data science are good too.
I used to do a bunch of Datacamp courses but I think the cost is getting kinda steep for me. Books seem to be priced nearly the same as their $38/mth (CAD) plan.
RE: Do you have to be a "genius" to work on machine learning?