One deceptively slight change to the naive autodidact algorithm can make a huge difference. It’s actually not a radically different algorithm, but the productivity gain is immense. Also, using this approach will feel a lot better.
Instead of looking up whatever you need to in the process of your studying, do an initial pass through the content to find out what you don’t understand. Make an outline, and for each item you don’t understand, make a heading. For each bit you don’t understand in its explanation, add a subheading. Keep doing this until everything you encounter is already something you understand, or in your outline. Don’t study now; just look for unfamiliar concepts. You are writing your syllabus.
The next step is to look at the items at the lowest level (indented the furthest) of your outline. Which concept appears the most at this level? Put it first on your list of concepts to study. Keep building the rest of your list the same way. This is not a perfectly optimal ordering; someone who knows the subject might be able to come up with a better, or more interesting, one. On the other hand, if you had someone who knew the subject and was willing to teach you, you very likely wouldn’t be trying to teach yourself. It is, however, a relatively efficient way to order what you study.
Why is this better? Simply put, you’ve cut out most of the frustration and inefficiency. Instead of trying to start studying from where you want to be, where, by definition, there are many unfamiliar concepts, you can now start closer to what you already understand. You won’t have to stop constantly to look up unfamiliar concepts. You’ll also feel more accomplished because you’ll be getting more done. In short, you’ll be closer to flow, which I consider to be essential to learning.