Maker Monday: Anyone Can Code

Coding is still something new for me, but the idea that teaching coding is not too different from teaching writing blew my mind when first presented to me in the Learning Creative Learning course by MIT Media Lab and Lifelong Kindergarten Group. My first exploration in coding was animating my name as an assignment for this course. I did this using Scratch, a free online programming tool developed for children by MIT Media Lab. It resembles blocks that users play with, putting them together and taking them apart, tinkering until the desired effect is reached. With Scratch, it is easy to make games, animations, stories, and all kinds of interactive programs. It's also easy to share projects and connect to a global community of makers, where collaboration is encouraged. The site has numerous tutorial videos (one of which I used for animating my name), step by step guides, and lesson plans for educators. Although programming had always seemed hi-tech and scary to me, I fell in love with this playful approach, knowing that it could pair well with English language learning, and I determined to discover more.

In this post, I'll share a few things I've learned, and am still learning. If you click on any of the links to my Scratch projects, you will have to be on a computer and not a phone in order to interact with them.


One thing I really respect about the philosophy behind this tool is that anyone can code. Seymour Papert, a pioneer educator who developed a programming language that was a predecessor for Scratch, talked about low floors--meaning anyone can start with the basics, and high ceilings--meaning makers can go as in-depth as they wish. Mitchel Resnick, whose work helped develop Scratch and a number of other highly-influential maker initiatives, added the dimension of wide walls--meaning that there is no one way to reach the top, but countless options for learners to explore. He says that, as educators, we can provide students with basic stepping stones, rather than a step-by-step guide. I think that should be a relief to many of us who are reluctant to use technology that we don't know all the ins and outs of. Resnick brings back an old saying by affirming that a teacher is "a guide on the side, not a sage on the stage."

Through coding, young people are not limited to being users of tech toys, but have a chance to be creators, learning important skills like collaboration, as well as problem-solving and critical thinking as they work out bugs. They can even develop empathy as they consider the user, programming with them in mind. So how can we teach English language through coding? Here are some ideas based on my experience.

If starting out for the very first time in Scratch, I recommend showing students a tutorial, found under that tab on the site. They are brief, basic, and give students what they need to get started. One tutorial is enough to get going on a specific project. The rest comes from tinkering. If students have an email address, they can create their own account and save their projects. If not, create an account for the class and save them there. When I open Scratch here in Brazil, it defaults to Portuguese, but I always set it to English language. This way, students will pick up words like move 10 steps, glide, if/then, as they work.

Animating a name or a collage of interests would be a great get-to-know-you activity early in the semester. Show students an example of your own, and explain some of the choices you made, encouraging them to do the same. In my animated name, I chose the tree background because I like trees, I liked the colors, and it looked mysterious. The color changes and motion I chose for the letters were from messing around with the blocks and seeing what I liked. My favorite is the A, which distorts into a weird spiral.

After they've animated their names, a later assignment could be to animate a vocabulary word. This might involve making individual voice recordings of the sounds of letters and their sounds, or adding sprites--characters--and a backdrop that illustrate the meaning of the word.

Another basic assignment, guided by a tutorial, is to make something move. This could have something to do with the theme of the unit, such as transportation--make something move in a city. It doesn't have to be a car or a bus--my student made a milk carton and muffin move in her city! As students tinker, let them explore wild ideas, and then get them to develop a story around them. The most important part of making something in Scratch is sharing it with others afterward. If they are sharing something they put effort into and are proud of, they will be more excited about learning the language necessary to talk about it.


Giving students a chance to explore their interests and passions is a great way to take advantage of emergent language, teaching them new words and expressions in the moment. An example of this, though not Scratch related, was in a workshop where I helped students make a pinball game out of a peg board, elastic bands, and various other items. (You can see it on my Instagram @danimakerelt) They designed a trap for the ball, but didn't know the word for it, so they said it in Portuguese. I taught them the word, and then I showed them the famous clip of Admiral Ackbar from Star Wars saying "It's a trap!" The kids thought it was funny, and they didn't stop saying that phrase for the rest of our time! When it and the verb to be are often forgotten by language learners, it was by allowing this group to briefly explore something not directly related to the lesson that helped them nail this expression. And not only the grammar, but the pronunciation of stressed words and the schwa sound in a! There is so much language to learn by having fun and exploring through making.

Just as simple as making something move, is making something with sound. (And why not make something move together with sound? You can!) There are a number of pre-recorded sounds to choose from, and students can record their own voices, too. This could be great for teaching animals--they can program animal sprites that say the name of the animal or a sentence about it (recording their own voices), and make the noise of the animal when clicked. You can also make a sprite say or think something in a balloon, which is great for adding written text.


Scratch can definitely be time-consuming, because there is so much to learn and try, so it's important to have a clear goal ahead of time. But also, remember to give students plenty of room to express themselves. Make the challenges open-ended, such as:

  • Animate your dream pet. Then tell the class about it! 
  • Make two characters have a dialogue (using a particular set of vocabulary or a theme.)
  • Make a click game or a chase game (using a particular set of vocabulary or a theme--see tutorials!)
  • Show a new way to play an instrument or a sport. Then teach someone else to play, using imperatives. (Click the green flag. Then click on the piano...)
  • Think of a problem you want to solve (in the school, in the city, etc.) and show a possible solution. 

You can also have students create something based on a grammatical construction they are learning about. For example:

  • Have them create and describe a scene using present continuous:         
          The cat is walking, the robots are dancing, the ghost is flying...

  • Give them a prompt in simple past:          
          I went to the...and I saw...
          Have them complete the sentence and show what happened next.

  • Show and tell something about their life in present perfect:
          I have never...but I have...

  • Illustrate a conditional:
          If you lived in outer space, how would you travel?
          If a monster came to the city, what would you do?
          If you could...what would you...?

Start small, and try to revisit Scratch when you can. As students get more comfortable with it, they can do more complex things. Why not have them do a writing or research project in Scratch? The project page has a space to give instructions or notes and credits. If students are stuck for ideas about a story, perhaps let them play around with the sprites and backdrops to figure out the characters and conflict. Once they get some ideas, they can create a scene from the story, finally writing the story in the notes. Rather than making posters and using lots of paper, have students program something and add text, written, spoken, or both.

I recently had an eight-year-old student research an animal habitat and make a Scratch program with what she learned. She wanted to study narwhals, and since there weren't any such sprites pre-programmed into Scratch, we got an image from the Internet (and I totally forgot to save the source to have her cite it!) You can also draw and upload your own images. This student did an amazing job of recording her voice in small clips, which she programmed to play one after the other. She used simple present and the infinitive of purpose, which we had been working on in the book. You can interact with her work here, or watch the video below as a summary.


These ideas are really just "scratching" the surface. (I just couldn't avoid that pun.) And Scratch is only one of many programming languages that young people can use. Have you tried any? What has been your experience? What other intersections of language learning and coding can you imagine? What would you code if you had the chance? Why not take the chance and see what you can do? Trust me, if I can code, anyone can code!

Comments