How Much Theory Should You Learn for Practical Skills?

I’ve met a number of self-taught programmers. These are people who make their living programming every day, but never went to school to learn how to do it.

A few of these people have expressed a mild regret for not learning more computer science. They know how to program well, but they don’t have a good understanding of some of the deeper math and theory behind the programs they write.

Which brings me to my question: Should these programmers learn more theory? Would they be better programmers if they did?

Learning Bottom-Up or Top-Down

The way a lot of self-taught people learn skills is purely through usage. Programmers start trying to program from an early age, maybe to make games or websites. Everything they learn is motivated by trying to figure out how to do something they want to do. Let’s call this style of learning bottom-up.

This differs a lot from the approach that happens in academic environments. In those settings, recognized experts decide what theoretical knowledge will be useful to students and push them to learn it, even if learning those things isn’t obviously useful to the immediate practical ends of the student. Let’s call this style of learning top-down.

Bottom-up learners only pick up the theory they need to solve the problem in front of them. If you’re learning another language through immersion, you’ll pick up grammatical rules when you need to express yourself, understand another person or notice you’re not saying it right. You don’t learn the rules in advance and then wait for a situation to apply them.

Is it Better to Learn Top-Down or Bottom-Up?

I’ve thought a lot about which approach is better for learning, bottom-up or top-down. In truth, I’ve used both. The MIT Challenge was clearly a top-down learning project, as I aimed to follow a particular curriculum rather than teach myself. The Year Without English, on the other hand, was mostly bottom-up, using immersion to drive improvement.

My feeling tends to be that in the short-term, bottom-up tends to do better. It’s very hard for anyone (even an expert) to know exactly what concepts should be learned in what order. If you learn from trying to do things and pick up theory as-needed, you rarely learn anything that isn’t useful. In contrast, much, perhaps most of the time, in school is learning things which aren’t useful.

The long-term picture is less clear, however. In the long-term, there’s probably some advantages to a top-down approach, because often there are ideas which only appear useful after you’ve learned them. A bottom-up approach misses these opportunities entirely.

This suggests to me that, if your goal is to learn a skill you intend to use, then you should start closer to bottom-up and shift to top-down only later. What would this look like, in practice?

  • Programming. Start by learning via a particular goal: making a game, website or app. Once you’re pretty good, then start to introduce more top-down theory to round out your knowledge.
  • Languages. Start by learning via immersion. Once your conversational, spend time on those tricky grammar points with a textbook.
  • Business. Start by running a business or working in it. Once you have some experience, then go back and build your theoretical knowledge (say with an MBA or self-education).
  • Art. Paint, draw and sketch a lot. When you get stuck, look for advice on your specific weakness. Once you’re decent and stop improving as fast, learn more about theories of composition, colors, art history, etc.

You’ll note that this is the opposite approach most learners use. Most learners start top-down, and only move to bottom-up strategies once they feel confident enough.

Why Learn Theory?

Of course, all of this assumes your goal is to learn a practical skill. If your learning goal is more abstract knowledge in the first place (psychology, economics, math, etc.) it’s probably not possible to learn bottom-up.

Bottom-up learning also requires more confidence and motivation. Starting directly from a real-use situation when your ability is quite low can feel daunting. Getting through that initial frustration period can overwhelm less experienced or casual learners, so for those people, taking a class which is less efficient but less overwhelming may not be a bad idea.

I’m curious to hear your thoughts. Do you think learning extra theory (beyond what you need to solve immediate problems) is important for a skill you know well? Are there any traps that come from learning something bottom-up first? Share your thoughts in the comments.

  • Joshua Stark

    Can’t thoery learning and practice being the two paralleled sides of a rail ?when learning theory,we always try to make it more concrete and try to find out more potential meaning in it to enhance our understanding,we use metaphors,we build models and we try as hard as we can to explore it ,to build a construct.Isn’t practice a natural weapon to aid us in this course?
    And when we are bottom-up learners,making an approximate theory map in adanve won’t cost much time,cause we just have a glance at the city of theory but not get into the alleys.but this might help us have a co-ordinate in our mind and benifit our thoery learning.
    so I don’t think there should be a “theory first and then practice” or “pracce first and then theory” order(some subjects except).i think we should have the flexibility to commute between theory and practice.

    btw,Scott,I’m your fan from China.
    Chinese students are the typical top-down English learners.Having been leaning English for more than ten years,this is my first time to comunicate with a foreigner.so don’t blame me for my poor expression.And do you have any suggestions on how to transform my academic learning into practical use?

  • Joshua Stark

    Can’t thoery learning and practice being the two paralleled sides of a rail ?when learning theory,we always try to make it more concrete and try to find out more potential meaning in it to enhance our understanding,we use metaphors,we build models and we try as hard as we can to explore it ,to build a construct.Isn’t practice a natural weapon to aid us in this course?
    And when we are bottom-up learners,making an approximate theory map in adanve won’t cost much time,cause we just need to have a glance at the city of theory but not get into the alleys.but this might help us have a co-ordinate in our mind and benifit our thoery learning.
    so I don’t think there should be a “theory first and then practice” or “practice first and then theory” order(some subjects except).i think we should have the flexibility to commute between theory and practice all the way .

    btw,Scott,I’m your fan from China.
    Chinese students are the typical top-down English learners.Having been leaning English for more than ten years,this is my first time to comunicate with a native speaker.So don’t blame me for my poor expressions.And any suggestions on how to transform my academic learning into practical use?

  • The “traps” as you call them from bottom up learning have to do with variations. Either you want to do something differently OR a problem presents itself that is not exactly the same pattern as what you’ve learned. Without some theory it’s impossible to adapt. The best example would be baking. Following a recipe is bottom up with without theory you won’t know how to modify a recipe and keep the mix of wet to dry and temp to time in line to get good results. OR if the situation changes (extra humidity, a slightly different kind of flour) you won’t be able to adapt the recipe properly.

  • John Seiffer

    The “traps” as you call them from bottom up learning have to do with variations. Either you want to do something differently OR a problem presents itself that is not exactly the same pattern as what you’ve learned. Without some theory it’s impossible to adapt. The best example would be baking. Following a recipe is bottom up with without theory you won’t know how to modify a recipe and keep the mix of wet to dry and temp to time in line to get good results. OR if the situation changes (extra humidity, a slightly different kind of flour) you won’t be able to adapt the recipe properly.

  • Lucky

    I agree with the approach! For vocational skills, a bottoms up approach is the quickest and most efficient and cost effective route. I think the top down approach is needed in situations where stakes are high such as medicine or aviation industry, where mistakes can cost lives or be very expensive. Top down approach combined with good skills also gives you more credibility and increases your chances of being a high achiever – eg. An academic with or without a role.
    Both have their place!

  • Lucky

    I agree with the approach! For vocational skills, a bottoms up approach is the quickest and most efficient and cost effective route. I think the top down approach is needed in situations where stakes are high such as medicine or aviation industry, where mistakes can cost lives or be very expensive. Top down approach combined with good skills also gives you more credibility and increases your chances of being a high achiever – eg. An academic with or without a role.
    Both have their place!

  • Fernando Belmonte Archetti

    I like the idea of going back and forth from these two approaches. In College, I was almost entirely a top-down learner, studying often highly abstract ideas. I had to adapt, and still feel the need to, when I started working as researcher for a private institution. When you have timetables, different expectations, fixed goals, being a top-down learner means that you’re probably won’t achieve much. Having been forced to learn through bottom-down, which was very hard for me at the beginning, I learned so much, and also have become more productive. The idea of balance and adaption between the approaches attracts me.

  • Fernando Belmonte Archetti

    I like the idea of going back and forth from these two approaches. In College, I was almost entirely a top-down learner, studying often highly abstract ideas. I had to adapt, and still feel the need to, when I started working as researcher for a private institution. When you have timetables, different expectations, fixed goals, being a top-down learner means that you’re probably won’t achieve much. Having been forced to learn through bottom-down, which was very hard for me at the beginning, I learned so much, and also have become more productive. The idea of balance and adaption between the approaches attracts me.

  • Satvik Beri

    I seem to be one of the few people who learns *better* from a top-down approach than bottom-up. For example, I significantly improved my social skills by…reading books on social skills. Conversely, most bottom-up attempts to learn something have failed for me, because I have trouble even remembering things without a coherent framework. So whenever I’m trying to learn a new skill, at this point I try to read a lot about it first.

    It’s possible that this has a lot to do with practice–I studied Math pretty intensely for most of my life, and mathematical theory is definitely top-down.

  • Satvik Beri

    I seem to be one of the few people who learns *better* from a top-down approach than bottom-up. For example, I significantly improved my social skills by…reading books on social skills. Conversely, most bottom-up attempts to learn something have failed for me, because I have trouble even remembering things without a coherent framework. So whenever I’m trying to learn a new skill, at this point I try to read a lot about it first.

    It’s possible that this has a lot to do with practice–I studied Math pretty intensely for most of my life, and mathematical theory is definitely top-down.

  • Rodrigo Nasc

    Joshua, I think I’ve understood this a little different.

    You see, bottom-up or top-down are not intimately related to theory VS practice.

    Let’s imagine that bottom-up will focus on the resolution of clear short-term goals like “I want to make an music app”. Then you will start with as little theory as you need to get you hands on work – let’s imagine Coursera, for example. You will practice and, when you get stuck get back to theory but only until you get what you need to go on. Coursera’s Android Specialization, for example, will give you only enough theory to keep going.

    On the other hand, on my city, for example, there is a “Android Specialization” on a Physical University. This specialization is focusing on explaining the basic principles of the hardware and software architecture, going through some operating system and memory management, explaining some market and entrepreneurship tips and some part of it will teach you how to develop an App.

    The difference between these two approaches is quite simple. The bottom-up will give you immediate response to your need but, different to top-down approach, you will not have as many related information. This means that a bottom-up programmer would get a job really faster than a top-down programmer, but the later could have a much bigger salary.

    The point is: whatever approach you choose, you will need to complement with the opposite approach to complete your learning. If the bottom-up don’t study after his job, he may get stuck in the same salary forever. But if the top-down don’t practice outside of the classroom, he will have no use to the market.

    And my primary formation is in Software Engineer. If I only rely on my University curriculum, it would be impossible to get a job on my city.

  • Rodrigo Nasc

    Joshua, I think I’ve understood this a little different.

    You see, bottom-up or top-down are not intimately related to theory VS practice.

    Let’s imagine that bottom-up will focus on the resolution of clear short-term goals like “I want to make an music app”. Then you will start with as little theory as you need to get you hands on work – let’s imagine Coursera, for example. You will practice and, when you get stuck get back to theory but only until you get what you need to go on. Coursera’s Android Specialization, for example, will give you only enough theory to keep going.

    On the other hand, on my city, for example, there is a “Android Specialization” on a Physical University. This specialization is focusing on explaining the basic principles of the hardware and software architecture, going through some operating system and memory management, explaining some market and entrepreneurship tips and some part of it will teach you how to develop an App.

    The difference between these two approaches is quite simple. The bottom-up will give you immediate response to your need but, different to top-down approach, you will not have as many related information. This means that a bottom-up programmer would get a job really faster than a top-down programmer, but the later could have a much bigger salary.

    The point is: whatever approach you choose, you will need to complement with the opposite approach to complete your learning. If the bottom-up don’t study after his job, he may get stuck in the same salary forever. But if the top-down don’t practice outside of the classroom, he will have no use to the market.

    And my primary formation is in Software Engineer. If I only rely on my University curriculum, it would be impossible to get a job on my city.

    *OFF TOPIC
    BTW, Scott, I’m your fan from Brazil. 😉

  • gkittinger

    I’m a fan of the OODA loop concept. A significant element of the value of the OODA loop is in building a web of different models from which we can draw ideas and cross-apply to other situations. To me, this is what theory provides – an understanding of various models (whether language, organic chemistry, biological systems, or computer code). Thus I believe in both. Often the theory from some other pursuit will provide the answer to a practical learning challenge, and visa versa.

  • gkittinger

    I’m a fan of the OODA loop concept. A significant element of the value of the OODA loop is in building a web of different models from which we can draw ideas and cross-apply to other situations. To me, this is what theory provides – an understanding of various models (whether language, organic chemistry, biological systems, or computer code). Thus I believe in both. Often the theory from some other pursuit will provide the answer to a practical learning challenge, and visa versa.

  • artie

    I always enjoy your writing. However I do believe you can never know too much theory. the way to pick it up is what I would call collateral learning(opposite of collateral damage). theories may with a little imaginative stretching be carried from one set of problems or one subject) to another. Of course there is or was a popular notion that all theory serves practice(the practical) but as we learn from mathematicians whose theories my find application generations later, this isn’t so. Anyway good luck and keep on thinking and trying to help others reach their full potential.

  • artie

    I always enjoy your writing. However I do believe you can never know too much theory. the way to pick it up is what I would call collateral learning(opposite of collateral damage). theories may with a little imaginative stretching be carried from one set of problems or one subject) to another. Of course there is or was a popular notion that all theory serves practice(the practical) but as we learn from mathematicians whose theories my find application generations later, this isn’t so. Anyway good luck and keep on thinking and trying to help others reach their full potential.

  • Moeti T

    I believe any type of learning that has an end goal of you acquiring a new skill, the bottom-up approach will always work. You can’t substitute experience, it’s as simple as that.

  • Moeti T

    I believe any type of learning that has an end goal of you acquiring a new skill, the bottom-up approach will always work. You can’t substitute experience, it’s as simple as that.

  • John Goode

    Another benefit of bottom up learning is knowing when the theory guys are full of bovine crap. In all of the fields I know something about, the theory guys are at least full of it 20% of the time. And, sometimes woefully wrong.

    That having been said, If you have a little experience and then learn some theory, the effect can be powerful.

  • John Goode

    Another benefit of bottom up learning is knowing when the theory guys are full of bovine crap. In all of the fields I know something about, the theory guys are at least full of it 20% of the time. And, sometimes woefully wrong.

    That having been said, If you have a little experience and then learn some theory, the effect can be powerful.

  • Today

    What about learning the theory and putting it to practice at the same time?

  • Today

    What about learning the theory and putting it to practice at the same time?

  • 大海 方

    Based on my personal experience, to gain entry-level knowledge of some new skill, “bottom-up” is better.

    After that, if someone wants to master the new skill completely, “top-down” is a better choice.

  • 大海 方

    Based on my personal experience, to gain entry-level knowledge of some new skill, “bottom-up” is better.

    After that, if someone wants to master the new skill completely, “top-down” is a better choice.

  • Josh Amore

    I just stumbled on your blog, and I have to say… Damn! You’re one interesting person.

  • Josh Amore

    I just stumbled on your blog, and I have to say… Damn! You’re one interesting person.

  • Miguel Benavidez

    The both are important !! very important !! but for me the education should start with the practice !! trying to do your occupation because you get experience, practice, dudes and after you can beef up with the theory and take it a high professional level !!

  • Miguel Benavidez

    The both are important !! very important !! but for me the education should start with the practice !! trying to do your occupation because you get experience, practice, dudes and after you can beef up with the theory and take it a high professional level !!

  • Deyanira Nuñez

    I think that it is important to know theorycal concepts, because if you don’t know the theory how you suppose to do the practical job, you need to know the steps and why you are doing it. It is not just about to do the job in a empiric way.

  • Deyanira Nuñez

    I think that it is important to know theorycal concepts, because if you don’t know the theory how you suppose to do the practical job, you need to know the steps and why you are doing it. It is not just about to do the job in a empiric way.

  • enrique colombatti

    i know that theory is important because it gives you a wider vision of problems in general.
    when do you consider that practical skills converge with theoretical knowledge?

  • enrique colombatti

    i know that theory is important because it gives you a wider vision of problems in general.
    when do you consider that practical skills converge with theoretical knowledge?

  • Dayan Del Pino

    According your article, I agree with you. In fact it is a good idea to learn the theory while you are learning the practical because it is easier to understand and remember. I firmly believe that knowledge is very important to any career and in any point of our life. The practice can only take us so far if we apply the theory, because it helps us to apply what we’ve learned solving one problem to different problems.

  • Dayan Del Pino

    According your article, I agree with you. In fact it is a good idea to learn the theory while you are learning the practical because it is easier to understand and remember. I firmly believe that knowledge is very important to any career and in any point of our life. The practice can only take us so far if we apply the theory, because it helps us to apply what we’ve learned solving one problem to different problems.

  • Deyanira Nuñez

    Theory is important to develop essential skills that will let us to put in practice in the real world what you have already learn. On the other hand there are some people that are more relate with the practical skills instead of the theory.

  • Deyanira Nuñez

    Theory is important to develop essential skills that will let us to put in practice in the real world what you have already learn. On the other hand there are some people that are more relate with the practical skills instead of the theory.

  • Manuel Patiño

    Interesting article. I believe in the practical way of learning. You really learn something when you do it or discover it by youself. However, it is actually important to complement this learning with theory, which are rules that have been argued and backed up by great minds of each field. This leads to a full comprehension of the topic and opens the opportunity for the individual to continue to fill knowledge gaps.

  • Manuel Patiño

    Interesting article. I believe in the practical way of learning. You really learn something when you do it or discover it by youself. However, it is actually important to complement this learning with theory, which are rules that have been argued and backed up by great minds of each field. This leads to a full comprehension of the topic and opens the opportunity for the individual to continue to fill knowledge gaps.

  • Liseth Moran

    According to article I think it’s important to learn and know the theory, because it is a knowledge base is very important to be ready and be able to perform in any area wok.

  • Liseth Moran

    According to article I think it’s important to learn and know the theory, because it is a knowledge base is very important to be ready and be able to perform in any area wok.

  • David Coto

    Is a very interesting article. Sometimes people think that the theory is not important, but that is not true, because if you know the theory you will able to develop many skills in differents sectors and be a good professional

  • David Coto

    Is a very interesting article. Sometimes people think that the theory is not important, but that is not true, because if you know the theory you will able to develop many skills in differents sectors and be a good professional

  • Geanella Albán

    From my point of view i thank bota are very important. Maybe Will be easier start doing something with some knowledge rather than start from no basis. In that case you can improve the way of putting on practice what you have learnt because you probably Will know what is thi about.

  • Geanella Albán

    From my point of view i thank bota are very important. Maybe Will be easier start doing something with some knowledge rather than start from no basis. In that case you can improve the way of putting on practice what you have learnt because you probably Will know what is thi about.

  • Sergio Rosero

    I believe that both: bottom-up and top-down are important, it will depend on what you want to learn or specialize. Extra theory for a skill I know well is important as long as it does not deviate of my main objective, because I will be prepared for harder obstacles and I will be ready with an action plan. I dont think there are any traps from learning something bottom-up first, it depends on your skills and what you like, because if you have a passion for what you do you won´t have any problem learning from doing rather than from a lecture.

  • Sergio Rosero

    I believe that both: bottom-up and top-down are important, it will depend on what you want to learn or specialize. Extra theory for a skill I know well is important as long as it does not deviate of my main objective, because I will be prepared for harder obstacles and I will be ready with an action plan. I dont think there are any traps from learning something bottom-up first, it depends on your skills and what you like, because if you have a passion for what you do you won´t have any problem learning from doing rather than from a lecture.

  • Christian Cevallos

    Learning the theory is important for knowing the structure to work properly and well.
    It is a great point of view when you get a job and start to create the ways to do your work efficiently.

  • Christian Cevallos

    Learning the theory is important for knowing the structure to work properly and well.
    It is a great point of view when you get a job and start to create the ways to do your work efficiently.

  • Gabriela Rosero

    I think both things are important. First of all you need to know theory in order to put it in practice. You wont be able to practice something if you dont know what you are trying to do. Learning new theory allows you to have more perspectives about situations, find new ways to solve problems.

  • Gabriela Rosero

    I think both things are important. First of all you need to know theory in order to put it in practice. You wont be able to practice something if you dont know what you are trying to do. Learning new theory allows you to have more perspectives about situations, find new ways to solve problems.

AS SEEN IN