How To Learn
How To Learn
ALWAYS:
Journal - progress and todo
Take notes - summarise and structure
Brainstorm Questions - answer them later
Decompose
Journal
Simple bullet points for each day.
Especially important to track progress if training Live Coding, LeetCode, Interview Questions.
Coding As A Game
You learn the rules of the game to be able to build stuff.
Just like any game, you can try to learn part or all the rules before playing. But learning the rules while playing is probably best.
Decompose
Break Down Challenges in tiny separate parts you can practice in isolation - "isolated games" - i.e. tiny leetcodes, tiny tutorial
Then try integrate it in a common context — "small games" - i.e. larger leetcode, larger tutorial, or small play-project
Then try integrate it in a sequence - "medium games" - i.e. project
Go from step 2 to 1 if step 2 is too difficult. Same for step 3, go back to step 2 if step 3 too difficult.
Very similar process to when learning to juggle.
Bainstorm Questions
Ton of questions is totally ok. For each topic:
What
Why - technical reason
When - real-life use-cases
How - basic code example
Difference - between similar or related concepts i.e. X vs Y vs Z
Pair - this alway/often goes with that
Unpair - this never goes with that
Trade Offs - balancing act
History - when introduced to language
Vocab - informal jargon, formal, vocab hierarchy
Corner Cases
Always try to improve memorisation by using:
One Liners
Analogies
Mental Models
Shocking, Weird or Funny facts
LeetCode As A Gym
Going to the gym may not make you the best player, but it will increase your condition and raw power
Similarly, LeetCode won't make you the best dev, but it will increase your performance
Publish
Code on Github
Retrospectives on LinkedIn
Retrospectives on Hackernoon
Last updated