Comprehensible Input
Comprehensible input was developed by Steven Krashen as a method for language learning. I believe this can be applied in other areas of learning.
The basic idea is to learn enough about the concept that you can explore the concept further simply by applying the concept. It may be uncomfortable when you come across things you don't know, but since you have a some familiarity the context may help you understand those things you don't know.
Language learning
In language learning, this can be achieved through reading and listening. When you don't know certain words, you can derive their meaning from context (or by looking them up). By experiencing these words in the context that they are used, it can help to solidify your learning.
Applied in programming
I believe this concept can be applied to learning programming languages
on some level.
I often see programming courses try to teach several fundamental
concepts at once. For a beginner, this can be a lot to internalize. I'd
like to experiment with teaching a minimal amount of concepts that will
get someone started developing and that will be enough to propel them
into learning more advanced concepts. This might start as a "learn
functions first" method of learning programming.
I found a paper that seems to align with these thoughts. I might chose this method for the python course I'm putting together.