[D]Newbie to programming, should i just dive in?

I am currenly studying Civil Engineering, but i want to learn ML because it fascinates me. As a third year eng student, the maths doesnt bother me to much. I've just started working through Automate the Boring Stuff, to learn python. But should i finish this book, or should i just sign up to something like Dataquest and learn as i go? My concern is that it isn't really aimed at people who want to get into ML so how much of the knowledge is relevant.

Best DSC Forum Questions - Part 4

This is a new series, featuring forum questions (new and old) that are still popular today. These questions were selected manually based on popularity, removing outdated material. The entire series consists of about 160 questions -- most with answers, sometimes several answers. We intend to publish a new set every two weeks or so. The previous edition was posted here.  
Best DSC Forum Questions - Part 4

[D] If a convolutional neuralnet tends to converge on either of 2 patterns at each point, like dog faces vs cat faces, then how could that be tuned as a competitive 2 player game trying to have more cats vs dogs?

Some early experiments and pics of an interactive convolutional boltzmann neuralnet are at http://github.com/benrayfield/timelessCellularAutomataPuzzleGame The patterns are much simpler than cats vs dogs, but its the turingCompleteness I think could make the game strategic, if gameplay is balanced, and various kinds of game design explored.

[D] Continue with masters or finish bachelors and go in industry

I'm very self driven and disciplined...I'm finishing my bachelors in chemistry and (along with basic analysis and linear algebra I got in school + some stat and probability that I have learned partly on my own) I learned Python and some R along with ML theory(elements of stat learning, deep learning book). I also tried doing some projects and read some research.