I had been looking for a book to bridge the gap between implementing machine learning code on the granular level and understanding it from a theoretical perspective and the search wasn't going well. Lots of other books that I tried before finding this one promised to help programmers become better mathematicians (or at least show them the math they need to learn in order to achieve that goal) but would almost always just provide code without context, or run through some incredibly basic, introductory level math without explaining at all how it connects to the various machine learning algorithms you'll be implementing as a programmer.<br><br>This book, however, takes the math seriously, and is incredibly direct and efficient in the introduction of new, relevant topics in calculus, linear algebra, and probability and statistics that you'll need to know if you want to truly understand the libraries you're using. I find myself reading a section in the book, going back to a "dedicated" textbook on the subject at hand - linear algebra or calculus or probability and statistics - and further studying the material, and then going back to Mathematics for Machine Learning to make sure I understand the topic better. This is the exact learning flow that I wanted, and the book delivers. Can't recommend enough!