Disequilibrium: Learning Theory and Personal Practice

IMG_5163

Notable Swiss child development theorist, Jean Piaget, explained learning as a continual process of achieving equilibrium, or balance, in our state of “knowing”…Then that balance is challenged when we encounter new stimuli, resulting in disequilibrium. When this happens, we try to apply our existing schemas (knowledge or ways of knowing) to the new stimuli (assimilation).  We also seek and adopt entirely new schemas (accommodation).  We tinker with all of this until we achieve that state of balance, or equilibrium once again.  (Until the next time we encounter new stimuli…)

Disequilibrium, also known as cognitive dissonance, is not a very comfortable state to be in.  It can feel frustrating, and challenging.  It can cause fear, anxiety, and even panic. It is, however, necessary for true learning to take place. If we never encounter anything that challenges our current ways of thinking or knowing, then we never move forward. We never get smarter, more adept, more diverse, more eclectic, and that seems like such a dull place to be!

Since I started learning how to code, I’ve been thinking a lot about disequilibrium. Continue reading

An Hour of Code with Young Friends, Part 2: Differentiated Instruction in Real Time

With one Hour of Code experience under my belt, I invited two more friends to code with me. I had explored only minimally in preparation for my previous experience, and was able to follow and support a fairly open-ended exploration by 10 year old Z. I was feeling much more brave before this second time, and was interested what it would be like to work with two children at the same time.

I invited two siblings, L and Q, to code with me. They both attend a public neighborhood school near their house in the Denver Metro Area. Their school employs a fairly traditional approach to education, incorporating computers and other technology as learning tools, balanced with common methods of teaching al subject matter. Here’s a little bit more about them as individuals:


L

L is a ten year boy in fourth grade:

  • He lists his favorite subjects as P.E. and reading.
  • He is caring, thoughtful, and has been known to win awards at school for character and citizenship.
  • He is active and loves football.
  • He loves the rain and Seattle, aspiring to live there when he grows up.
  • He has a great sense of style, from mohawks to hipster glasses.

QQ is an eight year old girl in second grade:

  • She lists her favorite subjects as reading, math, and art.
  • She loves all things creative, and is an avid crafter.
  • Has a natural and powerful connection with animals. She is a loving caretaker to many furry creatures at her home.
  • Is naturally social and enjoys getting to know all kinds of different people.
  • Her last two Halloween costumes were “Cleopatra” and “movie star”…with the big personality to pull them off.

Continue reading

An Hour of Code with Young Friends, Part 1: Hacking and Open Source

I recently completed with my first Hour of Code experiment with a young friend. I intentionally did not explore too much beforehand, wanting to experience the learning process alongside the girl (I will call her Z). I was curious what I would learn by watching a young digital native engage with coding.

Zen

Z is 10 years old, and currently a fourth grader at a Waldorf school. Waldorf schools discourage children’s use of technology at school and home. Her family takes an inspiring approach to this recommendation. They choose to not completely swear off technology, but rather to have regular conversations about when and why technology can be appropriate. Thus, Z does not use computers or watch media at school, but she engages in these things very minimally and very mindfully at home. This provides an interesting context for coding with her: She is technically a digital native, but does not actually engage with digital media herself very often. Here’s a little bit more about her:

  • She loves animals, and wants to be a vet when she grows up.
  • She is endlessly creative and self-motivated, loves art, theater and making all different types of things.
  • She insists on solving real world math problems in her head when they present themselves (before adults can tell her the answer).
  • She is compassionate and thoughtful. As long as I’ve known her, she has used gift-getting holidays as opportunities to raise money for animal charities.
  • She loves reading, and has been known to read a novel per day.

We began by watching the Hour of Code Video Introduction together, which got her excited about being one of “10 million” students to try “An Hour of Code” (and the number is currently much higher).

Continue reading

What IS Coding? Gearing up for Computer Science Education Week & An Hour of Code

I sat at a Thanksgiving dinner table about a week and a half ago with a group of friends.  We were enjoying our feast and chatting about this and that. Since most of us at the table were either teachers, spouses of teachers, or children…you can imagine how our conversation kept drifting back to issues in education.  I started telling one friend about my goal of learning to code, and she asked a simple question:

“What IS coding anyway?”

This question provoked a little nervous tingle, as I realized this was the first time I had been asked to explain something about coding to another teacher. I had to stop, rewind my brain to just over two months ago when I started to explore this very question, and try to conceive an answer that would make sense to someone with the same background and lack of technical expertise as myself. My response was something like this:

“Coding is very basically giving your computer a set of instructions that you write in a programming language. The computer then responds by doing what you told it to do.”

I was relieved when this came out of my mouth and I realized that it largely made sense. This conversation also made me realize that could be important to spend some more time considering what that coding really is, and ponder some ways to synthesize and explain it to people who might not have any background, or might never have had any interest before. 

When I was first learning to code, I would Google things like “programming for beginners”, “what is coding?” and “learning to code”. My search efforts would return tons of great resources for people who already know a little bit about computers, and are not completely intimidated by words like “algorithm”. Many of the search results assume you know what a “console” is, are already comfortable with words like “variables” and “data types”, or what a “platform” is. If you don’t already know these things, do not worry about them! I think there is a level of beginner explanation that is just plain difficult to find. Just to be clear, I recognize that there are tons of great beginner resources out there…I just found myself wishing for an even more novice level of basic description. With this in mind, I’m going to attempt to offer my own supplement, and explain programming in a way that makes sense to me and might appeal to a broad array of non-programmers. 

This seems like a particularly relevant thing to do now, since this is Computer Science Education Week (Dec. 8 – 14). All this week, millions of children around the world will participate in “An Hour of Code“. This is a challenge to teachers, administrators, community members, and families to offer children “a one-hour introduction to computer science, designed to demystify code and show that anybody can learn the basics.” Code.org is organizing and promoting this challenge, and they offer tons of great resources on their website. 

Note: Although some argue that there are differences, I use “coding” and “programming” interchangeably throughout this post in reference to “the act of writing computer programs”. 

Keep reading if:

  • You have ever wondered about coding/programming
  • You have never wondered about coding/programming (because it is never too late to start!)
  • You have tried to look up coding and programming before, and didn’t gain a whole lot of understanding
  • You do not consider yourself very tech-savvy or computer literate
  • You are curious about how someone who meets the above criteria might explain programming
  • You are curious what children are actually learning from beginner tutorials 

Continue reading

Teacher Learns to Tweet

These are my original goals identified two months ago when I started this project:

Goal #1: Learn to code

Goal #2: Write a blog about my learning in order to process my thinking, share with other people, and gain insights from readers.

I have learned a great deal since I started working toward these goals almost 2 months ago, but have recently identified an unexpected outcome: I’ve begun to consume and process my technological experiences differently. (Clarification: This outcome was unexpected to me…not necessarily anyone else!) Continue reading

Metacognition: Thinking About My Coding Thoughts

ibm_human_brain
Image source: http://www.gizmag.com/ibm-supercomputer-simulates-a-human-sized-brain/25093/

If metacognition can be considered a hobby, then it is definitely one of mine. (I fully realize how nerdy that sounds.)

I love thinking about thinking! When you work with young children, you have to become a “thought detective”. Young children’s brains are developing so quickly and efficiently, and teachers have to know how to support that. We have to be able to speak and interpret lots of different languages, many of which are nonverbal.  In order to do this, we have to really dig deep into our own analytical brains and constantly evaluate and reevaluate things we see happening in front of us.

We have to be able to think about children’s thinking, but also about our own! Continue reading

“It’s Never Too Early to Develop”…Is this Brilliant, or Simply Novel?

CLAY85941-1024x648
Photo Source: Codebabies.com

(from website) It’s never too early to be standards compliant! Show your little ones HTML markup code along with letter forms to get them started on the visual patterns and symbols that make up the essential building blocks of the Web. The first in a three-volume set, originally designed by a NYC Web Designer for his baby, this beautiful book is a fun and colorful introduction to the world of web design for babies.

I’m not too sure how I feel about this!

On the one hand:

I mean…I know that giving any book to a baby is better than giving no book to a baby.

Exposure to print is great (and necessary) for babies’ pre-literacy development.

I also know that exposure to simple, clean designs with high contrast is naturally interesting and engaging for them, while also supporting their ocular development.

I also know babies have an incredible capacity for learning language before the age of 3.  The more language exposure babies get results in more foundational neurochemistry being established for learning languages later in life.

I also know that part of the barrier to learning to code is just being exposed to it, and NOT thinking that it looks and sounds alien. (I know this from experience…I can say that now!) Thus, this simple exposure could provide some foundations for code being accepted as a cultural reality in one’s world.

I also think this is clever! I mean…”It’s never too early to develop”…that is fantastic! Continue reading

Embracing My Beginners Mindset: Avoiding Overthinking

beginners-mind-300x221

Hello. My name is Lauren and I’m an over-thinker…I’ve been learning to program for 29 days.

I commented this week that it seems like the Ruby tutorials I’ve been working through are getting harder and it’s taking me longer to figure out write the code that’s prompted. I have recently realized that half of the time I’m completely overthinking, which just makes me laugh at myself.

For example, I spent 25 minutes trying to solve one particular prompt, trying all angles of writing the code only to result in error message after error message. I stuck with it, miserable yet determined, and eventually realized that I had simply read the prompt wrong.  The prompt was to add some code before the print command, and I was adding the code after. It turned out that I had correctly written the code the first time. Rather than going back and re-reading the instructions, I just spiraled down the rabbit hole…my code getting more and more complex with each try.

This is not the first time something like this has happened. I’ve noticed that the fewer angles I examine, the faster I’m able to complete the prompts. This is interesting to me, because it does not feel natural at all!   Continue reading