This year I decided to really try and fix some major parts of my life I have been neglecting. I started in January and I think I have been making good progress. I will give links to the resources I think helped improve my life so you can look over them and implement them too if you are interested.
I will be making a far more fleshed out post for my end of year review, but I’m making this both as a reflection for myself and as a mini time-capsule to look back at.
Why I did this:
It was mid 2020 when I realized I wanted to be an AI researcher and work on some of the most fun / interesting problems of humans. The only problem was I just graduated with a business administration degree and knew almost nothing past high school algebra in terms of math. I screwed around the rest of the year doing some random walks through math and coding, learning things like the power rule for calculus without knowing anything else about calculus or what a derivative was. At the end of the year and after consuming a lot more of Less Wrong content (which I found as a corollary of my newfound interest in AI). I realized I should stop random walking not only math, but I needed to stop random walking my entire life and should make everything functionally better.
0-100(ish(hopefully)) Machine Learning Study guide:
I didn’t want to spent 4 more years to get another degree, academia has a lot of pro’s and con’s but ultimately it came down that I think I could learn the same material on my own faster, pay less, but with the trade-off of having a harder time proving myself as a competent programmer. So I decided to self learn with the goal of learning so much and becoming such a good programmer I could manage to slam my foot into the door and get a job with no C.S (computer science) degree.
At the beginning of this year I was opine-ing in a babble thread how I was upset that most learning sources sucked. They seemed to be far too densely packed to be useful. I will be fully honest and say I took a two in one, “how to code in python and learn machine learning” class on Udemy at the same time, needless to say I was way in over my head and didn’t finish it as I knew little programming and less math. If only there was a curriculum list that could go through many classes and actually teach rigorous, practical and theoretical programming.
I looked around a little bit, but since anybody can make a programming “tutorial” and there is a high demand for tutorials, The top results listed in most places usually went to the highest advertisement bidder and not necessarily the best teacher.
There’s also what I call the ‘beginner programmer death spiral’. if you don’t do a C.S degree and don’t know what you should know to become a better programmer (which could be anything) it’s really easy to fall into the trap of jumping around beginner level courses. Learning the beginner level stuff in one course, but feeling unsure of your skills and where to go next, finding another course that usually teaches you roughly the same thing and feeling lost because all courses look like beginner level courses that teach you the same thing, while the advanced courses look way too advanced for your current skill set and you don’t know how to bridge that gap. I was in that death spiral before and it sucks.
There's also MIRI’s guide, but I do like the approach modern MOOC’s have with lectures. I think lectures really help (for me at least) with the intuition behind a problem and understanding why things work the way they do. It takes a little bit longer for me to focus on visualizing what the writing in textbooks is saying while I don’t seem to have that problem with professors. MIRI’s guide also seemed to be a non zero starting point to me, expecting the reader to have some underlying math skills, which is perfectly fine considering most people that would find that guide in the first place.
I decided in that babble thread to say screw it, I’ll do it myself. Viliam messaged me and shared good resources and thoughts about how to set up a curriculum since they are working on their own Slovakian math curriculum. I appreciated that response a lot and I’m highlighting it both here and in my end of year post as a show of gratitude. Another thanks for introducing me to sturgeons law which has held for most coding resources I found. I hope your project is going well.
I did find Open Source University(OSU) on GitHub. I thought it was good but there were some parts I found lacking and not directly related to my goal of the shortest path to competent ML programmer possible while leaving nothing out. So I gutted it and made my own, here it is:
Keep in mind this is a snapshot of the course in time, I’m usually on the lookout for classes that seem better / supplement my gaps in knowledge. These get put into my google docs version. The final version will be google docs so people can add comments, for now this my first draft.
It includes many classes not in OSU, because either the teaching of the topic was slow or I felt the professor did a bad job of explaining things. I also took many OSU classes out because I didn’t think they mattered as much as the ones I picked. Feel free to supplement. I also am reviewing each class I take in it which you can find below. At the end of the year I want to give a most optimal path introduction about how to quickly use the guide.
This guide is designed to be depth first breadth second. It’s designed to give fuzzy understanding but practical knowhow. I feel right now that my math concepts are an island. I know some calculus, I know some probability, I know very little about linear algebra, but not zero. My hope is that I can gain functional coding ability with machine learning with shoe string math knowledge, and while I both code and learn higher level math those skills will feed into each other and get stronger together. In learning logistic regression that did, as the sigmoid function gives out a probability. If you feel like you need to have a full intuitive grasp on what you are learning and now jump ahead, this guide might not be for you, but the courses in it might be helpful.
If you plan on using my skeleton guide and are a hard studier, do math while waiting for the weeks to open on edX since they are annoying time gated. I plan to add “how to” for self study, some general tips, and reassurances. But for now it’s just a bunch of courses and a few reviews.
My course has downsides like all do, the two biggest I can think of now being; I don’t know what I don’t know, how useful will some of these classes be in the long term? I like to think I made good picks but I do always wonder if there is a more efficient, intuitive math course I could be learning from or if some coding classes are teaching enough. The second being it's easy to get insecure self learning, you don’t have a peer group to place yourself into to learn better tricks, it’s hard to talk casually in class discussion forums so you don’t know if other people are struggling with the same problem you are finding hard. I feel like I’m on an island sometimes, I like to think at the very least if we took everybody in the MOOC I would fall near the mean, but it’s impossible to know. thus, it’s probably not worth actually worrying about. I’ll save the worrying for coding competitions and learn as I go.
Currently I’m taking Andrew Ng’s Machine learning class now after taking MIT’s edX python courses. I like that it’s not time gated, but I feel like the programming assignments do a lackluster job of connecting the lecture material to practical practice. I’m on week 5, I can implement forward and back propagation just fine. But if you sat me down with raw data and said “okay build the network”, there's huge practical gaps in preparing data and evaluating the system that I just don’t have yet. I hope that gets better later, there’s also some other DeepMind courses that potentially addresses this that I’ve added to the list. I’m not too worried as since I know this won’t be the last time I learn ML, anything I don’t learn here I will flesh out on the go.
My goal is to get through deep learning by the end of the year, do Kaggle competitions, and work on some computer vision personal projects. Gaining enough skills to become an AI researcher at some point in the next 2 years.
I read Convict Condition before the start of the year and decided to implement that routine while running most days. It seemed like a nice way to do strength training without going to the gym, especially during covid times with no vaccine. The routine was twice a week and generally took only a little amount of time, around 30~ minutes. I started to notice some muscle definition and did feel stronger. I can recommend the routine no matter what strength level going.
When I posted the book review commenter 9eB1, made a good comment about calisthenics and pointed to the reddit bodyweight exercise page. After being lazy and failing to update this into my knowledge. I finally read it and found their routine interesting. I'm planning on making it my routine for a while and testing how it goes. I would recommend it as a resource for those looking to get into strength training.
I have been running most my life, but if you are interested in beginning I heard Couch to 5k is good. But I have not tested it myself.
I just recently implemented a Modified Mediterranean Diet based on Scotts ACT thread on depression. I do feel better when I stick to it, I feel better than before which had my diet mostly based on pasta, beans, processed food and sugars. I’m glad he posted it. olive oil and baguettes are delicious to me and I wish I did this sooner.
The only downside is increased cost and portions are smaller, which with small portions could lead into more increased costs to the diet to offset calorie expenditure from working out. Also if you eat fish the taste seems to linger in your mouth the whole day.
I tried to do hydroponics at the start of the year, everything was going well until my plant light died and my plants got too big and snapped in half. So I’m switching to a more low maintenance style of growing. I’m going to try to repurpose a 2 Liter and grow a few plants that way. Hydroponics is pretty easy once you get started, the costs are front loaded. If you want to try it out I found https://www.epicgardening.com/hydroponics-for-beginners/ to be a good resource.
I want to understand fashion more and build better outfits for myself, aesthetics to matter a lot to people. I would appreciate any resources you guys have for that. My plan for right now is to just try to get a general feel for what looks good on me or not.
I know very little about good personal financial management other than that ideally revenue > expenses. If you found any source for learning about personal finance useful please post it.
My key take-away from learning this first half a year is that finding good learning resources is hard. But once found I think you can quickly elevate your skills with them, with respect to your time put in and focus on continual improvement. I think this holds cross domains, I do want to try my hand at 3d modeling and better understanding the stock market, I’ll try to find some good resources for these before the end of the year.
I would also like to know any good learning resources you've found so far this year that you've enjoyed. I hope your first half of 2021 is going well and lets keep strong for the second.