Hacker Read top | best | new | newcomments | leaders | about | bookmarklet login

I am doing something similar, it's not easy.

I am late to the party, but in case this helps, this is what works for me:

First, the most important thing is that you must really, really want it. I don't think that anyone ever got good at something hard that they didn't find interesting, or, if they did, it must have been sheer torture. If this is not the case, the sooner you accept it and move on, the better, to avoid needless suffering and wasting time.

There is no royal road to geometry.

You need a realistic plan, based on what you want when, and then list the prerequisites. Don't forget that you also need breaks and to do other things.

I prefer depth over breadth.

I stick to one course at a time, full inmersion. In my case the best learning happens when meditating for a long time over tricky concepts. This requires focus.

If you find yourself strugling that's ok. Take a step back, take your time, look for alternative material that explains the same concept more slowly, review the prereqs. It is often a sign that you hit something important but difficult. If you clear this hurdle, you will already have an advantage over those that gave up, if it is hard for you the odds are that it is hard for the rest too.

If possible, I try to learn from complete online courses from top universities, with outstanding and charismatic professors giving video lectures and well designed psets, explaining the core concepts extremely well. For instance: 6.042 discrete math with Tom Leighton, 6.006 algorithms with Eric Demaine, 18.06 linear algebra with Gilbert Strang, Machine Learning with Yasser Moustaffa, William Cohen on machine learning from large data sets, systematic program design from Kitzales, etc etc. No videos, but I can't have enough of Stonebraker's readings on databases.

For me learning from such professors makes the whole thing much more enjoyable, an experience to savour, on top of learning loads.

If you want advice on material, tell me what you want to learn, I have surveyed tons of freely available courses.



view as:

> I prefer depth over breadth. > I stick to one course at a time, full inmersion.

Oh, the opposite is working for me. I’m learning about three things at the same time. Reasons:

- Too much time on the same topic and I get tired. For example, I’m learning databases. If I spend one hour per day every day on learning databases, after two months I get bored on the topic. But if I learn databases on Mondays and Fridays, I’m still motivated after several months.

- Spaced repetition. I’m learning Python, SQL and data science. If I’d spend one year for SQL, one year for Python, and one year for Linear Algebra, on the fourth year I’d forgot SQL :). I prefer to learn a limited set of related things simultaneously. All three are fresh in the fourth year and spaced repetition makes learning more effective.


Good point about spaced repitition, wish I had the discipline. I find that if I learned something the way I described above, I can pick it up again easily even if rusty, the moment I read and think again about it, it comes back fast.

Legal | privacy