# TeachTogether.tech Day 1 - Strongest predictor of learning: do you have someone to learn something with - We are social animals - Our groups decide "what is worth learning?" - The idea that we are just a neural network is ineffective - When they graduate, they are ineffective at working in teams - GPA driven teaching: No retention because presented as "Here's stuff; here's the test" and then they forget - If people learn, comeback 60-90 days later to check in to see "learning as a habit" - Our education punishes people who work in groups - Study groups +1 ## Learning Personas - Characterize demographics; who are we trying to reach? - Like a user story but for learning - General Background - Starting Point/Revelant Experience - Perceived Needs - Special Considerations - Financial constraints - Has job - How can you help them? - A "portfolio of people" to target personas - Trying to fill in some gaps - Study: search terms don't know the jargon - "How to build a website" instead of "JavaScript course" - What are they looking for? - What do they think their problem is? - They might very well be looking for the wrong thing - Explain in *their* terms - Doug Lemov (sp?) - Have class build confidence in us (instructors) - Conscious or subconcious skepticism - Start off with "something useful" and something engaging - They can follow up with "Cool, I want to learn more" - **I am not like my learners** ## Mental Models - Cognitive Progressions (Patricia Benner) - Being an experts is not just about knowing more; they start to think differently - The progression is very consistent - Novice - Advanced beginner - Competent - Proficient - Expert - We are looking mainly at 3 - Novice - Doing things by rote; not understanding the mechanism; when something goes wrong, they can't debug - Asking them to write code is less effective on gauging ability than debugging code - Asking nonsensical questions - "What color is the database?" - Using the wrong terms - Just spitting out jargon with reckless disregard - Can't tell what's relevant - Not sure what's exactly wrong and can't pick out the important things from an error message - Lack of confidence: Not reliable - Dunning Kruger Effect: Suddenly we have so many experts at basketball - Rating confidence but its based on privilege - Mac user vs. windows user on Linux proficiency - Asking people to rate themselves doesn't give you "good" information - **Novices don't have an accurate mental model of how something works"** - **Their mental models are disjointed** - Competent - **Their mental model is more connected; it may take some time to get to a specific "node"** - Expert - Experts are "not faster at thinking" - **They have many more connections and are more densely connected** - Have to relearn how to see the problem in novice's eyes - Help novices build mental models (it's okay for it to be "false" as long as it is useful) - They can then type a useful search query on Google/Stackoverflow - Can be self directed learners with our assistance instead of us guiding them step by step all the time - Can they recognize useful answers? - How to start building mental models? - Build a concept map - What do we want our students to get from the lesson? - Emphasize relationships; where does it "sit"?; what's the flow?; how are they connected? - Effective way of communication not just for students but for other instructors - Have learners draw a concept map back at us - Shows us gaps in their knowledge - Exercise: Draw a concept map on what Fullstack is about? - **It's better to be honest to students about your knowledge** - Johnson's Rule: If it seems like you slaved away at something; it is less socially acceptable to call something out on understanding other than just quick and dirty drawing something out - Concept Maps vs. Flow Charts - Depends on the lesson - Do the instructors/team members agree on the "type"? - Parts of a whole vs. Flowchart/Workflow vs. Something else? - Useful to see if there's a disconnect ## Cognitive Load - Two kinds of memory - Long term memory (permanent storage) - It's slow to take something from long term memory into working memory - Working memory - Every time you callback into working memory, it gets rewritten and put back into hard drive (potentially with falseness) - Primary channels - Image - Speech - Present diagram piecewise - it's more effective - Vision dominates senses - Coding doesn't always use images - **"Reading is weird"** - Our brain hasn't caught up to this - Text is speech in visual form - Used for accessibility reasons - Extra mental effort - "**Every inconsistency takes processing power"** - **Explicitly teaching things one component at a time** - **Parsons Problems** - Thinking about order of pieces of tasks in programming - Exercise: Jumble order of some small program and ask students to rearrange it ## Capacity - "Machine Gun Powerpoints" (Ineffective) - Load up short term memory and keep it there long enough for it to be transcribed to long term memory - How can we think larger thoughts in light of only being able to hold 7+/i stuff in memories - **Find the patterns in programming - give the pattern a name** - Ex: Add all elements of array is structurally similar to concatenating strings in an array - **Novices will learn patterns that don't exist** (I specifically think technical analysis in trading) - Think: variable names - **Pedagogical concept knowledge** - Most advanced - Sport - Music - English as Second Language - Mathematics - When Greg teaches Python - Get them writing different functions that do different things - Homework: Add one thing to Google Doc that works for you when you teach - **Democratizing Programming** ## Assessment: How Do We Tell If It's Working? - Unit Test For Learning - Diagnosing misconceptions - Having an idea but getting the wrong answer - Each of the wrong answers is based on a specific flaw (mental model that produce each of the wrong answers) - Probing for errors with unit tests - Formative Assessment - Every 10 minutes check for understanding - Try to probe it to see where the misconception lies instead of asking "Do we get it?/Are you with me?" - Unambiguous correct answers - ***Peer Instruction:* Clearing up misconceptions through disagreement and student engagement (1 on 1 mentorship based on who got the right answer to someone who has a misconception or wrong answer** - **Responsive Teaching** (like Responsive Design) - Improv as a driver for teaching - What is the game in this particular sketch? - Why does this lesson work? - Write your tests to clarify your goals - Write code to make your tests pass - Formative Assessment - How you steer yourself through the lesson - Summative Assessment - How to figure out how to move on - What's the big wrap up project/questions? - Concept map ideas should show up in summative assessment - Each "scene" informs the formative assessment - What do you do when 80% understands and 20% don't? - Sooner or later we may need to leave someone "behind" - Not fair to 80% - Perils of Pre-Assessment - Can be misleading - Can scare away some people ## Some Questions **If they are bored, turn them into a teacher as quickly as possible** **Leaky Abstraction** - Give them debugging problems where they can't understand/figure out by dropping down below the abstraction level **Inverted Classrooms** - How do we get students to do pre-reading/watching? - Study groups? **Periodically ask students for screen recordings to see if students have understanding on the tools** - Touch typing - Combinatorial iteration **Pair programming "bell" to switch who is the typist** **Pick two learners in the beginning of class and have them take notes on the class**