Session Overview
How do we learn programming languages?
- REPL
- Iteration
- Random Contextual Interference
- Programming Assistants
REPL
Read, Evaluate, Print Loop
You need to be able to be able to get immediate feedback on what you are doing!
Interactive!
Iteration
Build on immediate feedback… immediately.
- Iterate early and often.
- Just start.
- Incremental bites.
- Build from small steps, testing each step in the process.
- Leverage the REPL!!! :)
Session Overview
How do we learn programming languages?
- REPL
- Iteration
- Random Contextual Interference
- Programming Assistants
Random Contextual Interference?
- Introducing variability by practicing multiple skills in a seemingly random but intentional order.
- Contrast with Blocked Practice: Blocked practice involves repetitive drills of a single skill before moving to the next.
Why?
- Enhanced Retention: Leads to better long-term memory of skills.
- Improved Skill Transfer: Facilitates application of skills in varied contexts.
- Deeper Learning: Encourages intuitive problem-solving and adaptability.
At the beginning…
- Initial Difficulty: May cause frustration due to increased challenge.
- Learner Proficiency: Best suited for advanced learners.
Programming Assistants
- Use programming assistants to help you learn.
- Ask them to explain what they are doing and why.
- Ask them to teach you.
- (Remember, they can be wrong)