In a previous post I talked about how I’ve started looking into new learning techniques to help me on my learning quest. I’m currently teaching myself math and programming, and it’s been tough. Progress comes in fits and starts, and I’ve been down several dead end paths.
- I tried a purely project based approach. I sat down and thought of interesting projects I’d like to make and then jumped into coding to make them. That was a good way to get a taste of what programming is about and to confirm that it’s something I’d like to do more of. However, the projects I was dreaming up were waay out of the scope of my beginner’s ability. I could have scoured github for similar projects and mashed together a frankenstein project that more-or-less did what I wanted it to do, but I didn’t think this would be a good way to actually learn the concepts. I didn’t think this would help me to generalize skills and learn to do more interesting work in the long run.
- So I turned to classes. I signed up for some advanced online classes through Udacity and EdX on machine learning, robots, and AI. I started programming in February 2017 so it’s no wonder that by April I was NOT ready to take these types of classes. I muddled through most of a Udacity course (they give you generous starter code) and got halfway through the EdX course before I hit a wall. Again, I didn’t think I was really getting the concepts. I could hack together a project that would spit out the right answer, but I didn’t really get what I was doing.
- So I took a step back. I started taking linear algebra and then realized I needed to go back further, and started Calculus.
For the past two weeks, I’ve been teaching myself Calculus using the amazing resources from MIT OCW and Professor Paul Dawkins’ online notes. I also bought a big book of calculus problems for additional practice. The first week was pretty good. I was chugging along and felt I was making good practice.
This past week has been less than great. On Wednesday when I sat down to do practice problems, I got every single problem I tried before lunch wrong. That means I spent four hours bashing away ineffectively at problems and feeling more frustrated and despondent as the minutes ticked by. I had been unwilling to move on from the work I was doing (applications of derivatives) to new material (integrals) because I wanted to master the first thing first. But it was clear this wasn’t working. I moved on, and found a groove again with integrals.
But it was clear that I was missing something. I wasn’t learning effectively. Something just wasn’t clicking and I wasn’t sure what. I had done calculus in HS and did well, I had done problems the day before and gotten them right. Why suddenly did it feel like my brain was mud?
I was reading through Professor Dawkins’ post on how to study math and it was obvious to me that I was in category 2 of students who don’t do well in calculus. I was studying for hours each day but not doing well on my problem sets. It was clear to me that I had inefficient study habits and unless something changed, I was just going to end up wasting more time.
Around the same time, I stumbled across this gihub community of Open Source Computer Science learners. And from there, I found the subreddit for the group, which led me finally to this QA mysteriously and intriguingly titled “looking for alternatives.”
And there, I found this amazing resource for a self-learning CS curriculum. What I love about this list is that it has a bunch of helpful resources for laying the groundwork for your self learning endeavor.
I don’t plan to go through this whole curriculum, but I did start with the learning to learn course on coursera and it’s AMAZING.
There are some things I knew or practiced when I was in school, but this time around because I’m older and feeling pressure to see results faster, I haven’t been doing, to my own detriment. Some of the key points:
- Chunking is the idea of grouping together related ideas/concepts in order to improve learning. If we are memorizing a song we chunk the tune and the lyrics which make it easier to remember both.
- When we learn something new, we lay down new neural pathways for the material. We need to strengthen those neural pathways in order to truly understand something.
- To strengthen neural pathways, it’s better to learn the material over time. If we study for one hour a day for five days instead of five hours in one day we’re more likely to remember the material and to understand it more deeply.
- It’s best to work in small chunks of time. For example, do 25 min of focused work, then take a break, then 25 min more etc. It’s also helpful to review material right before bed as we commit things to long term memory while we sleep.
- An easy technique to improve retention and learning is to try to write down the key points that you learned right after learning them (without notes/looking – which is what I’m trying to do right now!)
- Focus on process instead of product to beat procrastination. Instead of thinking, I’m going to finish those five homework problems think, I’m going to work on my homework for 25 min.
- Every night before bed, write down the tasks you plan to accomplish the next day. Don’t go too crazy! 5-6 tasks is more than enough. Keep them focused on process.
- Keep all this in a journal and take note of what worked, what didn’t, and how long things actually take. Over time you’ll get a better feel for what you can accomplish in that time.
- Plan your quitting time. It’s important to pace yourself and it’s also not effective to just keep on studying past a certain point. You won’t learn more or better this way.
- Procrastination starts with a cue, try to change that cue. For example, if your cue to procrastinate is hearing the ping of a new email, turn off your phone. Removing the cue will make it easier to avoid procrastinating.
- Reward yourself for completing tasks. Rewards can be emotional (I draw a smiley face and write ‘yay’! on my paper when I finish something) or external.
- Lastly, believe that you can change. Belief that you can break the cycle of procrastination is important!
- Humans have good spatial memory. Use this to your advantage by building a memory palace
- The weirder or funnier your mnemonic devices, the better you’ll be able to remember the information.
- It might seem silly, but these devices can help you as you’re starting to form memories. Over time, this will help strength those neural pathways!
Eep! And that’s all I have for right now. I’m sure I’m forgetting a lot. Will need to review tomorrow (as per the suggested way of learning!)
Changing my tactics
All of this is to say that I have a lot of bad habits to unlearn and new habits to form. Instead of going the Scott Young route and trying to cram a whole bunch of learning (ie a semester of Calculus into one week), I’m going to spread things out a bit more.
Starting this week, I’m going to concurrently do my algorithms, calculus, and linear algebra coursework. I plan to spend ~1 hour in the morning reviewing the material, and then dedicate the afternoon to practice problems or other study techniques (e.g. making flashcards, building my memory palace etc. 🙂
I’m not sure how this will go, but my rough goals are:
- Finish all three courses by the end of August
- Be comfortable with applications of Calculus and Linear Algebra
- Be able to write the pseudocode for all the algorithms covered in the course
- Be able to analyze running time of algorithms (which is an application of calculus, I believe, so….two in one!)
Lastly, while math and coding is fun, it’s important to give my brain a break and do something I enjoy!
I LOVE puzzles so another book I picked up is The Art and Craft of Problem Solving. It’s aimed at HS students (and teachers) who are interested in the math olympiads. While I’m definitely not in the right age group for that, it has a bunch of fun brain teaser math problems like the classic census taker problem.
A census-taker knocks on a door, and asks the woman inside how many children she has and how old they are. "I have three daughters, their ages are whole numbers, and the product of the ages is 36," says the mother. "That's not enough information," responds the census-taker. "I'd tell you the sum of their ages, but you 'd still be stumped." "I wish you 'd tell me something more." "Okay, my oldest daughter Annie likes dogs." What are the ages of the three daughters?