Friday, June 1, 2012

What do I want kids to learn?

Great, talk on Assessing Computational Thinking by the Scratch Ed team. 
I was sorry I missed the live version, but Memorex is just as good
(okay I'm dating myself, see video below if you don't get the reference)

Here are some of my initial notes and thoughts:

How do you Assess? 
Damn good question and I LOVED Karen's line: 
"Some of the things that are easiest to evaluate are not the things we care about."  
The problem is that the things that are easy (ie: quick and inexpensive) and "fair" (standarizable across a wide population) to assess are not what I care about.

What do I want kids to learn:
  • Certain Habits of Mind that will serve them well in life and make them better citizens.
    • Confidence that they can create things they care about.
    • Help others
    • How to work with others and build a team
    • Explore different ways of Knowing/expressing something
      • Write it in Scratch, JavaScript, programming another person, etc.
    • Balancing Churchill and Twain
      • Never, Never, Never Give Up. - Winston Churchill
      • Try, Try again, then give up. There no sense making a damn fool of yourself - Mark Twain
      • NOTE: I like giving kids conflicting suggestions.  First it forces them to think.  Second, It requires them to look for appropriate balances and realize things are not always black and white.
    • Try understanding “Why it works” (especially after "hunting and pecking" until you get an answer)
    • Look for connections
  • Things I look for and questions/comments I ask/make toward this end.
    • How is these two things the same and how are they different?
    • How else could you do this?
    • Do the simplest thing possible to make it work. Then you can refine later.
    • Its okay to make mistakes.
      • I expect mistakes. In fact if you aren’t making mistakes you aren’t trying hard enough.
      • What can you learn from that mistake?
      • Learn from the mistakes of others. You don't have time to make them all yourself.
    • Wow that’s cool, how did you do that?
    • How did you come up with that idea?
    • What did you try that didn’t work?
    • If a student finishes early, ask them to help someone else. Part of this is training them to help in a way, that builds up the other students and tries to question them toward an answer, or provide examples or small pieces of code they can look at and try and figure out. That said, sometimes, doing it for them is appropriate.
    • Make mistakes on purpose and see what happens.
      • Done with text based languages so they can see the error the compiler produces and get a better understanding and appreciation of the error messages.
    • Give them: Wheres the bug problems.
    • Read their code out loud to themselves and imagine/visulize/kineticize (move your hands/body to mimic what the code is doing, good for drawing shapes projects).
      • I tell them reading it out loud helps you slow down and see what your code is really doing, which is often NOT what you want it to do.  (“Do what I meant, Not what I said”)
    • Its okay to copy (re-use and hopefully re-mix)
    • Can you make this a re-usable compoment that you can use in other projects? Should you?
    • How is this like (fill in the blank) and How is it NOT like (fill in the blank)
      • Example 1: Scratch Draft Curricullum comparing programming each other how to Dance with how its like programming in Scratch.
      • Example 2: How are these programs, which all do the same thing, but are written in different languages (one in Scratch, one in Java Script and one in Squeak) similar and different?

I also want to comment on the question that came up towards the end
How do you encourage kids to be bold? (and not afraid to ask questions or make mistakes)
But that's another post.

No comments: