Disequilibrium: Learning Theory and Personal Practice


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. Now I did expect this, as I’ve chosen to mindfully toss myself into a situation in which the whole point is to feel disequilibrium. For a psychology-minded, art-loving, people-oriented thinker like me, learning to code throws me as off balance as I possibly can be! The unexpected part is that it seems like the more I learn, the more disequilibrium I feel. This isn’t necessarily bad, but rather just something I know I have to examine.

I have achieved some small victories, and gained a sense of confidence around knowing the vocabulary and foundations of coding. However, the newfound confidence comes with a newfound sense of the gravity and scale of this project, and also more innate anxiety about the possibility of failure.

This challenge is causing me to examine all kinds of mental messages that are fairly entrenched.  For example, the message “I’m bad at math, and math-related endeavors” keeps creeping up every time I get to a tough point in one of my coding tutorials or challenges. The message “I might just not be good at this, and might have to quit soon”, keeps tempting me. Now just to be clear, I’m fully committed to pushing through the disequilibrium and playing with different strategies until I figure out my challenges. However, my commitment to learning to code is fairly new, and the negative messages have been with me since childhood.  It seems like the more I think I can actually do this, the more my brain examines the notion that maybe I actually can’t, and searches for ways out.

Through my time spent at a wonderfully intellectually engaging school, as well as my personal yoga practice, I have come to believe that a real test of our humanity is how we deal with our feelings around disequilibrium. Disequilibrium is always challenging, and there are many possible ways to deal with it, for example:

  1. We can back off when we feel it, assuming it means we have entered into territory in which we should not be.
    • When we are in the habit of backing off, we tend to never move forward.
    • As dedicated as I am to learning to code, I’m having a hard time preventing my brain from going here first!
  2. We can fight it.   
    • When we fight, we use our energy in all kinds of ways that may or may not be productive.
    • Fighting through difficulty is necessary in some
      situations, but also can produce even greater fatigue and burn-out in others.
    • Every time I encounter an urge to quit, my next instinct is to fight!
  3. We can just relax, accept it, and breathe into it.
    • Often when we can really just accept and explore our disequilibrium, we move forward in the most profound ways.
    • This is what I’m trying to do after I work through quitting and fighting!

I don’t mean to imply that #3 is the only way disequilibrium should be worked through, but rather that it’s what I’m trying to do.  The more I breathe into my challenges, the more I discover about my struggles. I am working hard to acknowledge, but reject the negative messages.  The tutorials are getting harder, and I’m taking longer to complete tasks, but I just keep telling myself that it doesn’t HAVE to mean dire things ahead.

Going back to Piaget’s theory, I wonder if I’ve been practicing more assimilation than accommodation. I’ve been using my existing learning schemas to approach coding, but I think my existing learning schemas might be reaching their limit. Perhaps what I’m going to need to do is learn and adopt some entirely new schemas and ways of thinking about these challenges.

This is intimidating, as changing our ways of thinking is never easy.  This is also exciting, however, because part of the reason I want to learn to code is to discover for myself the types of thinking necessary to successfully do it. I feel as though I might be on the precipice of some big shifts in my thinking. I also realize that I’m going to have to work even harder, but also feel my disequilibrium even more consciously in order to discover those shifts.

What do you do when you find yourself in a state of disequilibrium?

IMG_5229 IMG_5260 IMG_5224

(Photos were taken at the Chihuly Exhibit at the Denver Botanic Gardens.  They have nothing to do with coding, but the exhibit provokes a certain sense of disequilibrium between nature and humanity, which I think is relevant!)


8 thoughts on “Disequilibrium: Learning Theory and Personal Practice

  1. Beautiful Art Glass
    i’m a constructivist at heart, I love Piaget

    I think how to react to dissonance for myself or the children, depends on whether one is is entirely in the dark, or they actually have the foundation (schemas) to build upon.

    Is it an emerging skill to be worked on, or do we have to back up and work on something more foundational.


    • Piaget is the best! (So nerdy, don’t care!)

      I agree with you. I think maybe my challenge right now is that I’m trying to act as my own teacher, and I’m not exactly sure if my schemas are enough or not.

      I’m learning, but it’s getting harder. I think I’m mostly relying on how I’ve learned print-based things in the past, as well as how I learned Spanish…but those need to be combined with schemas for learning and executing math. My math schemas were long ago tucked away. I never thought I’d really have to understand or use “algorithms” again…My schemas for that were trash compacted for sure, but I’m not sure if they were actually disposed of, or just stashed really deep. I’m actually not sure if I need to dig deep, or just redefine for myself…it’s a weird place to be! I don’t at all like the idea of backing up to work on foundations, but I also know that I might just have to do that at some point. (or continuously! ha!)

      When you are working with your kids, are they pretty good at recognizing when they don’t have the foundations? Or do you really need to get in there and encourage the backing up? How do you make it appealing to back up?

      Liked by 1 person

  2. You: “Going back to Piaget’s theory, I wonder if I’ve been practicing more assimilation than accommodation. I’ve been using my existing learning schemas to approach coding, but I think my existing learning schemas might be reaching their limit. Perhaps what I’m going to need to do is learn and adopt some entirely new schemas and ways of thinking about these challenges.”

    Me: Computer programming is like learning a foreign language. There is the syntactic aspect – making grammatically correct sentences, and there is the semantic aspect -creating sentences that have some effect. The nearest to coding is recipe writing and other types of instructions. There is no substitute for DOING. If someone cannot understand the recipe then we have syntax errors. If someone competent follows the recipe exactly and the result is uneatable then we have semantic errors. The recipe is your program, the cook is the computer.

    I am going to write a test for you unless you say “Please, no, no, not yet!”.
    It is a low-stakes test !


    • I like that analogy a lot, but if the recipe is the program, and the cook is the computer, then who am I?

      I’m (nervously) open to a low-stakes test! That would probably be good for me (as long as it is open-book and not timed!)


      • You are the author.
        Definitely not timed.
        There will be an open book section and a closed until you are desperate section ! !
        And in the spirit of CCSS you have to explain why you think you have the right answer !!!!!


    • I just spent most of this afternoon investigating Ruby. This is a serious programmers language, with classes and objects, and it has been done in a very thorough and consistent way. I am impressed. At the same time it is quite straightforward for doing short programs without all the heavy stuff (which will NOT be tested !)


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s