Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Learning how to learn

Learning how to learn

A non-technical guide to help programmers become a learning machine.

Anh Thi Nguyen

December 07, 2020
Tweet

More Decks by Anh Thi Nguyen

Other Decks in Programming

Transcript

  1. Learning how to learn A non-technical guide to help programmers

    become a learning machine. THI, NGUYEN DANG ANH
  2. CONTINUOUS LEARNING IS THE MINIMUM REQUIREMENT FOR SUCCESS IN ANY

    FIELD Brian tracy Learning new things help you generate more ideas, lead to more opportunity in your life The ones who refuse to learn. Instead, they remain stagnent and neglect to develop their skills are soon left behind, miss future opportunities
  3. ACTIVE LEARNING YOU WON'T REALLY LEARN HOW TO RIDE A

    BIKE UNTIL YOU ACTUALLY RIDE IT.
  4. STEPS TO APPROACH A NEW SUBJECT CHOOSE A BOOK, A

    DOCUMENTATION - SKIM THROUGH IT START PLAYING AROUND, START EXPERIMENTING, HAVE QUESTIONS GO BACK TO THE MATERIAL TO FIND THE ANSWERS REAPPLY WHAT YOU'VE LEARNED TO YOUR DAY-TO-DAY LIFE EXPLORE NEW AREAS AND UNLOCK NEW QUESTIONS THAT NEED SOLUTIONS REPEAT THE CYCLE OVER AND OVER AGAIN
  5. 3 MAIN THINGS TO KNOW WHEN LEARNING A TECHNOLOGY HOW

    TO GET STARTED? Things I need to know to start using whatever i was learning THE BREADTH OF THE SUBJECT Have a decent overview of what you could do and what was possible. There are things that you can comback to learn later. THE BASIS Basic use cases of a technology What was the 20% I could learn that would cover 80% of my daily usage
  6. Do these once STEPS 1 - 6 Repeat multiple times

    STEP 7 -10 PREPARE LEARN 2 - STAGE PROCESS
  7. STEP 1: GET THE BIG PICTURE Unkonwn unknowns Do basic

    research on the topic within a few hours of research How big the topic is? What kind of subtopics exist? Don't spend to much time on this step
  8. STEP 2 - DETERMINE THE SCOPE Break down a big

    topic into smaller scopes Narrow down your focus to determine exactly what you want to learn Put a reason for learning into a properly scoped topic Have a deadline, time frame. How long to learn the topic? You can't learn everything Original topic Scoped topic Learn golang Learn to use go routines to create a web crawler in 2 days
  9. STEP 3 - DEFINE SUCCESS Have a clear picture in

    your mind of what success will look like Bad success criteria Good success criteria I can learn the microservices I can build, deploy an application, a business demo using microservice design patterns
  10. Books Blog posts Online videos Expert or people who already

    know deeply a bout a topic Source code Example projects Online documentatoin STEP 4 - FIND RESOURCES Don't just read one book on the subject Find as many resources as possible, don't worry about quality as this point
  11. STEP 5 - A LEARNING PLAN A goal without a

    plan is just a dream Find the correct path that help you learn the materials in the least amount of time, hitting all of the major landmarks Thinks of its as an outline for a book you'd write on the subject, your path will be similar to the table of contents of a book
  12. STEP 6 - FILTER RESOURCES There is too much information

    Go through all the resources you've gathered, figure out which ones are the most important, and might have the biggest impact on your learning process Take a look at reviews, try to determine which resources are of the highest quality
  13. STEP 7: LEARN ENOUGH TO GET STARTED Mistakes to avoid

    Jumping in without knowing, acting too soon Prepare too much before jumping in, acting too late Do these instead Get enough information about the topic to get started and playing around Skim the material to have a basic idea of what you are doing
  14. STEP 8: PLAY AROUND Start doing Start experimenting, don't worry

    about the outcomes As you play around, your brain naturally form questions, write down the questions that you don't have the answer for Build a small project, self-generated challenges No fear of failure No fear of making
  15. STEP 9: LEARN ENOUGH TO DO SOMETHINGS USEFUL Learn you

    module in depth Find answers to the questions that you don't have the answer for Take much time to thoroughly understand the subject Only read or watch what the parts that are relevant to what you are trying to learn right now
  16. STEP 10: TEACH Richard feynman "If you want to learn

    something well, teach it" You only need to be one step of someone to teach them You'll find that there are many things that you thought you understood that you didn't You'll begin to make connections that you didn't see before Ways to teach Write a blog post Create a Youtube video Give a presentation Have a conversation with your friend, coworker
  17. RETENTION Free recall Ask questions After reading a book, watching

    a video, write down what you've just learned Think about, have some reflections on the thing you've learned Keep asking questions about the gap that you don't understand, find answers for it
  18. Facts Concepts You need to remember and understand it You

    can look it up SOLID Principle Clean architecture How databases work? Language syntax Function signature Framework / tools
  19. GO TO BED A LITTLE WISER THAN YOU WERE WHEN

    YOU WOKE UP Charlie Munger