The Wild World of ML and Data Science
I just finished up a 10-part series, summarizing my journey up to this point. When I started writing that, I figured it might be 3 or 4 posts max, but I didn't realize how much I would have to say. Having done some introspection over the last year, I'm pretty happy with how much progress I've made. There are some points in the last year where I wish I would have been more productive than I was, but to stay on 100% of the time is next to impossible, and often leads to getting burnt out. I think I did well to avoid burn-out and maintain my motivation and momentum along the way. Studying every day, writing a blog post every day, doing the #100DaysOfCode challenge for over 300 days, these are all great feats that I haven't taken the time to celebrate, nor will I, most likely. In my mind, there's still a lot of work to be done to get to the end goal. As a matter of fact, I believe this to be a marathon, where the learning journey never really ends. I suspect, if I want to stay relevant and continue progressing, I will be learning new things and reinforcing the knowledge I've obtained until the year I retire. I love this stuff, so maybe it doesn't even end there.
I mentioned it in the last post, but up until now, my path was pretty clear: I was going to learn as much as possible about the world of JavaScript and become a front-end developer, maybe a full-stack developer later on. All of a sudden, I feel like I've thrown myself a huge curve ball. My entire attention has turned to Machine Learning and Data Science, which took me by surprise. I've always had a bit of an interest in it, but only because of the popularity of it. I don't think I understood it well enough to really gain an appreciation of it. Now that I've dove into it, it encompasses so many things I love to do, and that I feel that I'm good at. When I was in high school, I took AP Statistics and it was pretty easy for me. Calculus was not so easy, but I believe I can learn what I need to know in this area. In college, I absolutely loved Economics, and when I got into the pre-graduate level courses that were more math-based, I really did well with them. In fact, I dominated an econometrics class while everyone else really struggled. I'm not trying to gloat; my point is that this area is a natural strength of mine, and coupling that with coding could be a dangerous equation.
I've taken it in pieces so far. I started off by learning Python. My level of knowledge on the language is not advanced, but certainly proficient to be able to work with the packages used in Machine Learning and Data Science. As I progress, I expect I will continue to grow my knowledge on the language and become better and better. It's a really nice language to work with, and just makes sense for the most part, a lot more than JavaScript does. Plus, it has enough in common with JavaScript so those skills are fairly transferrable. After I got through some introductory stuff with Python, messing around with backend programming, web scraping, and building a Twitter Bot, I entered the world of Machine Learning and Data Science. Enter Jupyter Notebook, one of the coolest tools on the planet. If you're not familiar, Jupyter Notebook acts as an IDE built into the browser that links with your file system, allows you to write and run code all in one place, and add markdown notes to the file. You can also you Matplotlib to show graphs directly in the file. I'm sure there's a lot more than that that you can do with it; I'm just scratching the surface. I started going through the packages I needed to know, starting with Numpy, then moving on to Pandas, then adding Matplotlib, and finally throwing Scikit-Learn. Up until Scikit-Learn, it wasn't so bad, but of course Scikit-Learn is the special sauce, and there's a lifetime's worth of complexity there.
Until tomorrow!