A big hole in this article is that you need to find the very best learning resource there is. This is a must.

Eg: For RL it would be Barto&Sutton book.

Sometimes the best source is not intuitive. Eg: The best way to become a safe driver is to go to performance drivign school - its a bit expensive but they tell you how to sit and stay alert in a car which I have never seen outside of these schools.

One of my most common things nowadays is to ask ChatGPT is to ask to build a curriculum. Creating and understanding what a great curriculum looks like is 20% of the work of understanding a field.

You can LEARN ANYTHING now if you have the time and inclination and elbow grease. Truly nothing is beyond your grasp - NOTHING. Its a magical time.

I'm actually building a tool that will do all this for you and get you started down the learning path faster than what we have now.

And for the curious - the best way to learn medicine is not a textbook. There are solutions out there like Skethcy which work much better for anatomy.

My own learning project - learn Medicine "on the side". It seems ludcirous that we give up the keys to our health to doctors just so we don't have to learn 2 years of courses. Am going to fix that!

>you need to find the very best learning resource there is. This is a must.

I think there's a line around "good enough", unless your goal of course is to be on the road to "become the very best". I think the better metric is making sure you have a accurate resource over a quality one. The 15-20 hour "sprint hard" methodology isn't stopping after that first sprint, just slowing down.

So if you find/can now access a better resource later, just start the sprint again on that. I know from experience (in real time, unfortunately) how easily "find the best resource" can end up becoming "spend weeks collecting resources but not consuming them".

It's not foolproof, but some universities publish their course textbook lists online (and in some cases recommended readings too). As a bonus, textbooks often have recommendations for further readings.
Would love to hear more about your thoughts on learning medicine! Why would you recommend an online program over textbooks?
When I’ve gotten deep into a topic I’ve actually almost ALWAYS learned that textbooks are the best way to learn things.

The internet is full of information. Sometimes it’s too much, unstructured or tangential to the goal at hand. Textbooks, in my experience, are truly written by the experts. It’s been vetted, rigorously reviewed and fact checked. It’s not inspired by influencers or clickbait.

Obviously YMMV, but when you find a top recommended textbook, it’s usually miles beyond a YouTube video or medium blog for deeper level content. It usually flows better and makes more sense as you study consistently.

> One of my most common things nowadays is to ask ChatGPT is to ask to build a curriculum.

I've been trying to do this for some rabbit hole I decided to go through. It's great for generating a list of topics but good luck getting actual existing books or papers. In some instances it would generate a paper title and link it to some other paper that might be slightly relevant.

Learning depends on the environment and whether it is pursued in an auto-didactic sense (Even for a job, say) or whether you are learning for an exam/part of a cohort.

It's not wrong to say Curriculum does not matter. But the level of curriculum is also something that needs to adjust to your current level and related fields you have knowledge within, to prevent you becoming overwhelmed.

Most people stop learning being motivation dries up as Test Anxiety rises to the point where they are at a "low-performance" place in the eustress curve. A few days there and people pause until it becomes urgent. A lot of this is a lack of momentum, but also not dedicating or having access to judgements of learning about your own progress.

In other words, if you judge your learning at all, it helps you manage.

There is a natural tradeoff between the flow-state of "just one flashcard with one information principle at a time, endlessly" and the longer term state influencing your time in flow-state of "am I progressing, what don't I know, how do I feel about my learning and mistakes?"

Think about learning databases, or CSS. When did you really takeoff? Probably A) Practically copying others examples (existing queries ran in PhpMyAdmin, or codepen code) And then later B) Once you overcame a big mistake and saw progress - suddenly what "Display" did clicked for you, and you saw how useful it could be to use the "fixed" option, it unlocked your understanding of the items in A and confirmed or disconfirmed your understanding of how it works.

Again it all depends. Self-motivated learning, even for a job, is easier to work with than compulsory learning. Because there, you don't even have the motivation to gaze up to the horizon and gather any excitement or understanding for what the learning might later lead to. It doesn't feel like a path, it feels like a brick wall. In this regard, a list of subjects is somewhat skin to someone stacking bricks, rather than elucidating a path. Overwhelming anxiety while learning is a real thing. The context really matters as to whether this approach is always the wisest.

Identifying what the foundational knowledge is isn't easy for an absolute begginer.

Building an efficient path to expertise is hard for a beginner.

I think the fastest way to learn is asking an expert to build a learning path for you, starting from what you know and what you don't know.

Posts like this that talk about learning "efficiency" always come off as soulless and dystopian to me. I think learning should be fun and that fun learning is the most effective---that's the only thing I optimize for and I certainly don't think about efficiency percentages. What a drag that would be.
I studied mathematics and I think this subject illustrates my feelings on this perfectly. Coding, just as well.

When it comes to learning maths, or a new programming language, there's all this tedious boilerplate you need to know. The rules, or syntax, the names of everything, how it all fits together.

There's ways to make learning this stuff more fun, but ultimately, not that much more fun. And anyway, the learning part is not the good part, it's the things you can do once you reach a certain knowledge level that are incredible, beautiful, even sublime.

On the other hand, take something like learning to paint, or taking dancing lessons. Unless you're hoping to become a member of an international ballet company, learning to dance is the fun part.

As another point, if you're a knowledge worker and you're likely to have situations in your life where someone basically says to you "right mate, you've got the job, here's a huge body of deep technical knowledge to learn, get up to speed, see you Monday" then a certain amount of skill in knowing how to absorb that quickly is a good thing.

The steps here are fairly generic and can fit into whatever regimen you have. It simply comes down to "find your learning path and grind hard in the beginning. Then you can slow down and relax after that first burst".

Seems like decent enough advice if you ever have trouble getting started. It's actually not unlike cramming for a test, except you keep study afterwards and don't dump that knowledge the day after. "fun learning" or not, just make sure to really dive in in the beginning.

I so much agree with you. I understand and remember the things I learn more when I am having fun or it piqued my curiosity. But I guess shortness of time needs us to focus on the efficiency aspect of it too.
I would say "fun" is overrated. We have become so focused on everything being fun that everything including fun itself has become tepid and mediocre. It is important to slog through the hard parts to cross the barrier of expert beginner. We are over downplaying the value of hard work and grit.
I somewhat disagree. Although having fun is important, I also want to make the most of my time. further, I think some aspects of learning can be a real slog, but when you get through it you find it rewarding.
This is something I have personally struggled with, so I wish the author elaborated more. If you are a novice, how do you quickly identify what the foundational knowledge is? How do you know what makes you an expert and not an "expert beginner" as the author says to the extent that you can build a personal curriculum about it?
>If you are a novice, how do you quickly identify what the foundational knowledge is?

You probably can't. You need to rely on knowledge of others to identify good resources. And then lean that against how you learn in order to pick the best resource for you.Same for verifying being an "expert beginner". Never be the smartest person in the room if your goal is to grow.

In a crude way: google it. You'll probably get a generic (maybe even horrible AI slop) on top. But you're not looking for a perfect guide on first Google (not unless you have a very popular topic). Look for terms used and start googling those to narrow down to a more specific place. Maybe a forum post full of (hopefully) competent+ people answering your question. Maybe you find a quality guide to follow. Maybe you find you're on a completely wrong rabbit hole and figure out better terms to Google.

That's basically half my learning while on the job. Usually works pretty well in my personal time too.

I tried to think about this and came to a personal realisation that perhaps there is no strict "foundational knowledge" for most topics.

Pick programming, is knowing binary operations foundational? Is knowing compilers? Is it knowing bubble sort? Or perhaps knowing data structures?

I believe that if you have been using/working in a field, whatever you touch for your own goals that's enough.

And perhaps the difference between being an expert beginner and an expert is whether you still care about such a distinction? If you can achieve your current and future goals and can eventually learn new concepts then you're good.

I'd say a beginner might be someone who wouldn't even know where to begin.

Let's pick chemistry for myself: sure, I could follow some video but without the video I wouldn't even conceive how to get started with anything.

While, say woodworking, I wouldn't call myself an expert but I would be able to imagine starting a random project from scratch and eventually figure out all the parts.

So, maybe: - beginner: can't complete a project without help/support - mid: can complete but is unsure whether that's the best way - expert: has completed it before somehow

I'd argue the principles Turing and Wolfram lay out in regards to universal computation and computational equivalence are the most foundational, and then various systems or architectures (flow vs stack, etc), etc, are important as there needs to be concrete examples implementing the fundamentals. If you really want to get esoteric, programming goes all the way back with society and religion. Just like how a machine can compute so too can a group of people through their actions, if they adhere as religiously to their tasks as the fablic of reality seems to adhere to its laws in governing the motions of matter. Programming is the building abstract structures which, when represented with matter in the right ways that can take advantage of the moment-by-moment Gets Things Done™ nature of the fabric of reality itself, produces useful transformations of its initial states. Very complex behavior arises from the simplest of mechanistic rulesets, and it's found universally in biology and in places all over reality. Computation is so foundationally fundamental to this place and your (dear reader) existence here, it is shameful it's not in standard middle/high schools' curricula right next to the fundamental theorems of arithmetic and algebra!
This is something that can be tricky for sure. Depending on the subject you might not need to start diving deep into every topic. Sometimes you'll have to first ask some high level questions like how do I get this data from this table and convert it to this format. Once you identify what problem you're trying to solve go and learn what's needed to solve it.

You won't always have an optimal solution but that's okay. The most important is to try and use the thing you're learning in some real way or with practice.

> The most important is to try and use the thing you're learning in some real way or with practice.

In my experience, that's a necessary first step to learning. I need to get my hands dirty, get a feel for what I'm working with. An experience is worth a thousand pictures, which are worth a thousand words - you can't gain that basic understanding and instinct by reading, only by having all the sensory inputs of doing it.

Then it's time to read. Now you must find an expert to guide you. First, you'll have too many blind spots - you can't possibly find all that's current, you can't find the best sources efficiently, and much won't be in books yet. And without expertise yourself, you can't distinguish the worn-out theories from the evergreen standards from the unproven innovations; the promising from the unlikely from the absurd; you won't know the consensus from the fringe; the guy advocating their personal theory - maybe even a credible one - from the balanced survey of established ideas. You won't recognize when you're reading just a side of a well-known debate.

You don’t. That is what you will build as you learn a topic, it makes no sense to “identify” it first.

Do the thing you want to learn.

I learnt data analytics and SQL for MIS/BI purposes on-the-job as a sales manager. Got pretty good at it too, built several dashboards and long-standing capabilities for my team.

Now, if I say I want to get into this scene for good, I am immediately daunted with a mountain of diverging learning paths to take. Should I take to Python and its massive library ecosystem, or should focus on database fundamentals? In every choice taken there are seemingly infinite branches, and it is rather hard to focus if you aren't even sure you're on the right track.

Last time I sat in an analytics/consulting interview they grilled me on highly specific technical questions on data pipelines and warehousing and testing and other topics that I've never had to worry about before at work. In another assessment, I was grilled on some AWS/Redshift-specific things. In yet another I was expected to know deep learning. It is all too hard for someone not originally with an engineering (or adjacent) background.

Yeah learning to actually use in practice is different from preparing for interviews. I would say continue where you already built some knowledge and branch out when you realize you have to, and then work on learning one branch as you go.

For interviews you may need to lookup what type of questions to expect and memorize details on that, unfortunately. That is not useful in practice but can be necessary for interviews.

It is an iterative process. One would move forward with a baseline foundation and pay attention to the difficulties and inefficiencies in the learning process to triangulate the additional foundation needed.
I'm also wondering this. Two possibilities. One, find the first principles/root node/glue that holds many disparate concepts together in some causative way. Two, the specific procedure/step/concept that you keep reusing across multiple problems.
  • j45
  • ·
  • 3 hours ago
  • ·
  • [ - ]
I'm surprised the course by the name of this post isn't here.

The post covers a great mindset, but the math really is one thing, and learning how you learn and how you can learn is invaluable.

This is a great course to start learning about your learning.

https://www.coursera.org/learn/learning-how-to-learn

After/with this, there is a slew of adult learning knowledge that will likely make you feel better.

One key is learning to understand something, before learning to memorize it.

Another is creating your own mind map of how the concepts you are learning fits together.

Farnham street has some great books on mental models as well that was recommended to me as helping

An expert is someone who can often explain complex things in very simple ways. being an innocent beginner is one of the best mindsets to cultivate - you learn what you do and don't know pretty quick, and also a sense of known vs unknown, and size and number of unknowns.

I checked these out but couldn't find the answer to the questions I am asking. It tells you how to maximize efficiency while learning, but doesn't tell you how to identify what you should be learning in the first place and what the sequence of your focus should be when you start.
What do you specifically want to learn? What you need to learn will generally make itself known, if you have some general goal? Just starting at all is the best way to start.
Say I want to learn web scraping. Now if I try to start, I see there are several layers of fundamentals and several potential paths, all of which seem equally important. Where do I start? What platform should I use? Should I start from the DOM and HTML parsing and go ahead from there, or should I start from learning Python libraries built for it as so many books and tutorials advise? Going one layer deeper, do I need to learn data structures before anything else? JavaScript and APIs? The fundamentals of TCP networking? Regex?

It's all too overwhelming at times.

Yeah, start from any point A. A suggestion is where you can progress in some way. Don’t make too many decisions. There’s so many viable ways to learn that, just start where it is natural for you. You don’t have to figure everything out or have answers to everything.
  • ·
  • 1 hour ago
  • ·
  • [ - ]
I've been wanting to try this approach for learning a language.

In English for example, learning the 800 most common words, you can understand 75% of the language: https://www.bbc.com/news/world-44569277.

I'd love to start fresh on a new language, take 800 new words, try to learn 10 a day, and see where I get after 3 months. Can I really understand 75% of text if I have perfect recall of those 800 words?

> Can I really understand 75% of text if I have perfect recall of those 800 words?

This thing you're talking about is called 'word coverage'. It's the percentage of words you know in a given text. I've created lots of word coverage graphs in the past, and, as research has shown, you won't really be understanding much until you reach the high 90s in terms of word coverage. The famous number for being able to read English texts extensively requires a word coverage of around 98%. And while it depends on the text, in order to reach 98%, you generally need to know around the top 5k words in a language.

Funny enough, when you understand 75% of the words in a text, you subjectively feel like you're understanding like 10% of what's going on.

In my experience, the words that carry the most information in a sentence are the less common ones. Here's what understanding 80% of a sentence is like:

"I went to the sdjfkdsh and got a new ghjsakgfh."

The missing words could be "dealership" and "truck" or "embassy" and "passport" or quite a lot of other pairs that change the topic entirely, so reading or listening to something with 80% understanding generally requires a dictionary in one hand to get you up to a reasonable level of comprehension. That said, I personally think language learning is enjoyable and rewarding, and tackling the most common word list is a good first step.

Give learning Japanese a try. It's a meta-learning adventure! There are 3 distinct classes of characters (two syllabaries that each have a perfect matching pair with the other, 46 each plus some compounds) and the third are (mostly) chinese Kanji characters. Fun stuff!
I wonder if there is a similar "Pareto priciple"-esque approach that one could use to learn Japanese.
  • opan
  • ·
  • 3 hours ago
  • ·
  • [ - ]
There are the "radicals" which can help you to interpret a new kanji, since they're the kanji building blocks.
Kinda!

The frequency of words in every human language follows the Zipf distribution, which is a power law, like the pareto distribution.

Some learners create what are called frequency lists, which are lists of the most common words, and learn those words first. In general, you get (disproportionately) more bang for your buck from learning the most common words than the rarer words when it comes to understanding.

However, due to the very long tail of word frequency distributions, you eventually need to just start learning words as they come and stop trying to over-optimize with a frequency list.

Depending on your definition of "understanding".

If it means you can at least take an educated guess on what a sentence means, then yes.

If it means to understand a sentence like a native speaker does (just slower), then no.

  • Tomte
  • ·
  • 3 hours ago
  • ·
  • [ - ]
No. Apart from grammar etc. you‘re missing, you might understand nothing while knowing 80% of the words.
The initial cram is an interesting concept. If you insert new things to learn at a constant rate, the repetition burden grows logarithmically. Assuming you have some fixed amount of time you can devote everyday optimally your repetition burden should be constant. So the solution is making new things to learn not constant, but front loading a lot of it.
The biggest challenge in learning is identifying gaps in your knowledge. Dunning-Kruger is a real thing and you want to avoid that.

Part of learning to learn, is learning how to identify the things you don't know. Then learning how to structure your 'personal curriculum' them in a rational way - you don't need to know everything up front to be effective.