Parenting || Programming…

My daughter is almost two. She’s hilarious and wonderful. She is a girl who loves to explore. She loves trucks and getting dirty in the garden just as much as she loves dolls and reading books.

finger painting

As I watch her learn and interact with the world I’m continually struck by the impact of framing. The way that I frame things is helping her form her worldview; my interpretations inform the way she thinks about herself and her own possibilities.

Imagine we’re playing together. She grabs a cardboard box and starts putting other items into it. I could say, “Oh! Are you cooking up some soup in your kitchen?” I could also say, “Oh! Are you doing an experiment in your lab?”

There’s a big difference. I hear the outside world giving my daughter a personal vocabulary that leans heavily towards purses, babydolls, and playing house. I am going to do my best to diversify her vocabulary and broaden her horizons.

So what does this have to do with programming?

Variables = Vocabulary

When we build our programs, we give them a vocabulary. The variables that we write into our programs become a way for them to store data and communicate about that data. Every time we create a new variable, it would behoove us to consider the underlying assumptions that we’re building into our program.

Methods = Behaviors

The methods we write determine the behavior within our programs. Defining new methods broadens the possible actions. Again, our decisions create a frame of possibilities within the world of our program. What frame are we creating?