We all have cases where we want to learn something outside the school context. Maybe you need to pick up some skills for your job.
Maybe you're trying to learn skills for a side project. Maybe you read something surprising in the newspaper and want to know the details.
Unfortunately, today's educational system up through college is based on micromanaging the learning process,
and it does little to prepare you for independent study. (talk about Ph.D.?)
(talk about Metacademy)
Here are a few things this roadmap does not cover:
* __The humanities.__ While there's value to being cultured and well-read, I don't have any particular advice in this area.
Most of what I say is oriented towards STEM subjects, and maybe some related areas such as cognitive science. If your
goal is to be generally well-read, you might want to
check out Mortimer Adler's excellent book, [How to Read a Book](http://www.amazon.com/How-Read-Book-Touchstone-book-ebook/dp/B004PYDAPE/).
* __Unschooling.__ Managing your own education in its entirety is a tall order, but [some](http://www.amazon.com/Free-Learn-Unleashing-Instinct-Self-Reliant-ebook/dp/B00B3M3KZG/) [people](http://www.amazon.com/The-Teenage-Liberation-Handbook-Education/dp/0962959170/) manage to do it.
I admire the initiative they have taken, and hope that Metacademy can contribute to making it possible. But I went through
a traditional education, so I have no advice to offer here either. This roadmap is oriented towards people who have something specific
they want to learn.
* __Test prep.__ If you need to take the MCATs next week, there are lots of other resources out there. I'm assuming here that you have a real desire to learn something -- either for its own sake, or because you need it for some other end.
In short, this roadmap is really about __how to learn specific technical topics that you're interested in__. I'll highlight various strategies I've used, as well as resources that I've found useful.
Let me insert the major caveat that there __aren't any recipes__ for learning on your own. Different people have different learning styles, and what worked for me might not work for you. Ultimately, you will need to experiment to figure out how you learn.
# Types of resources
You have various options for where to learn from:
* Most obviously, __textbooks__. It's pretty important to find a good one. A good strategy is to check course web pages at top universities and see what's assigned/recommended. [MIT OpenCourseware](http://ocw.mit.edu/index.htm) has an especially comprehensive collection of course reading lists. For AI-related subjects, MIRI has compiled a pretty good [list](http://intelligence.org/courses/).
* __Massive open online courses (MOOCs).__ Despite the hype about MOOCs disrupting traditional education, I see them basically as textbooks in the format of lecture videos. The reason they make a big difference for self-directed learning is that, unlike most textbooks, they are delivered free of charge, which makes it easy for you to mix-and-match: a few videos from this course, a few videos from that one. (This is actually pretty amazing when you think about it: according to [this report](http://cbcse.org/wordpress/wp-content/uploads/2014/05/MOOCs_Expectations_and_Reality.pdf), it costs between $30K and $300K to produce a typical MOOC, yet universities are giving them away for free. Enjoy it while it lasts!)
* __Course notes.__ There are lecture notes posted online for a lot of courses, especially on [MIT OpenCourseware](http://ocw.mit.edu/index.htm). The upside is that notes are often more concise than textbooks. On the downside, they are typically less polished, especially if (as in the majority of cases) they are transcribed by students as a homework assignment.
* __Research papers.__ For more advanced topics, there might not be a textbook or a MOOC that covers them adequately, and you'll need to turn to the academic literature. (Some fields, such as physics and computer science, are pretty good about making research publications openly available. For most others, if you don't have access to a university library, you're hosed.)
* Unless you're actually doing research in a particular field, you probably won't want to read the most bleeding edge papers. The topics are naturally the least well understood, and most papers are not optimized for readability.
* One strategy is to look for __highly cited papers__. While citation counts are deeply flawed in a lot of ways, they provide a rough measure of impact, and highly cited papers are, on average, considerably more readable than a random paper.
* In some fields, there are journals that publish __review papers__, e.g. [Trends in Cognitive Sciences](http://www.cell.com/trends/cognitive-sciences/home), or [Foundations and Trends in Machine Learning](http://www.nowpublishers.com/journals/MAL/latest). These are sort of intermediate between textbooks and research papers, and are a good way to get up to speed on important results of the past decade or so which haven't yet found their way into textbooks.
* If you are not at a university, and find that a given paper is locked behind a (absurdly expensive) paywall, try searching for the title and authors on [Google Scholar](http://scholar.google.com/). Often, even when a paper is closed access, the authors are still allowed to post it (or at least a preprint) openly on their web pages.
A good general piece of advice is to __consult multiple resources.__ Different textbooks or courses will explain something from a different perspective, and often when reading one you get an "aha!" moment for something which didn't make sense in the other. Unfortunately, this option might not be practical unless you have access to a university library.
Learning things can take energy and willpower. There's been a lot of talk about how students [fail to finish the MOOCs they signed up for](http://www.nytimes.com/2014/06/18/business/economy/udacity-att-nanodegree-offers-an-entry-level-approach-to-college.html). If you want to learn something, how do you keep yourself motivated?
Maybe we should first ask, why is it so hard? In my view, it's a result of trying to copy the structure of school. __Consider how school is typically structured:__
* Students set aside a decade or two of their lives to learn (or at least pretend to learn) things long before they have any idea why they'd need to know them.
* Students have little or no control over their course of studies, since the educational system processes far too many students to be able to personalize the curriculum.
* Even at the college level, course bulletins provide almost no guidance about what a class covers or why it's useful (lest too many trees be killed).
* The choice of topics favors things which can be easily tested, such as rote manipulations.
* Since the whole class must progress through the curriculum at the same rate, it's impossible to go back to repair gaps in students' knowledge. This means the only workable strategy is to work one topic to death before moving on to the next one.
* A lot of topics need to be covered, so there simply isn't time for students to dig deeper into things that seem interesting. They need to take things on faith since there isn't time to question them.
* Since students presumably won't be able to learn things once they're out of school, they need to learn topics "just in case" they will need them later.
- Ultimately, school is the result of a series of compromises which allow an adequate amount of learning without overburdening society's resources. Unfortunately, these compromises mean there is __little or no intrinsic motivation__ to learn the material, hence the need for external motivators like mandatory homeworks and exams. If you keep the structure of school but remove the external motivator -- as is the case for MOOCs, where your grade basically doesn't matter -- it can certainly be hard to stay motivated. Consider that the total amount of time you spend on a semester college course would be somewhere between 50 and 200 hours. It's hard to put that amount of time into any activity in the absence of a strong motivator.
But notice that all the items in the above list are __responses to various constraints which don't apply when you are teaching yoruself__. You don't have to go through the topics linearly, you can go back to repair gaps in your knowledge, and you have plenty of time to learn things you're interested in. I suspect much of the dropout rate in MOOCs is a result of copying the structure of school too literally. The same thing applies if you're working linearly through a convex optimization textbook because someone told you "you should learn convex optimization if you want to do machine learning."
The main way to stay motivated is to __learn topics you're interested in learning__. Maybe someone told you about a crazy result like [Godel's Incompleteness Theorem](godels_incompleteness_theorems), and you're convinced there's got to be a catch. Or maybe you need to learn something to solve a problem for your job or hobby. Then you're intrinsically motivated. On the other hand, if you simply "think you should" learn something, that's not much of a motivator.
Of course, the thing you want to learn might have prerequisites. In that case, a reasonable strategy is to __eat dessert first__. Suppose you open up a logic textbook to the section on Godel's Incompleteness Theorem. You'll probably get the gist of some of the ideas, but a lot of other things won't make sense. How the heck can you encode a proof as a number? How can a statement about natural numbers be "true in some models and not others?" Your confusion about these things will serve as a motivator when you go back to learn the topics earlier in the book.