Coding is for all! For primary ESL students, too!

My current lane is secondary ESL, however my first experience in preK-12 was in the primary grades. My National Board Certification is in English as a New Language (ages 3-12) and I spent 9 years teaching primary with a focus on sweet ESL students ages 4-5. To renew my original certification, I crafted a coding lesson for a group of “borrowed” students at the local primary school. Here are the slides that I created to support my lesson. Feel free to use them!

When I observed prior to teaching the guest lesson, I saw that the students were reviewing life cycles—YES! There’s an opportunity for sequencing! Perfect. What subject matter? Animals? Plants?

Corn! A big lump with knobs, it’s got the juice! No–that viral Tiktok video came out a year later. I had a better hook.

I pulled the kids into the lesson with a big bag of Maseca, which has a picture of corn on the front. Maseca is corn flour, primarily used by my hispanic families to make tortillas. In fact, they will often call corn flour by it’s company name, just as in English a person will say, do you have a Kleenex meaning facial tissue, they will say I bought Maseca, meaning, corn flour.


I then taught the life cycle of corn with beautiful images by Mommyhood Montessori Learning, purchase yours from her store on teacherspayteachers here.

In this lesson, I focused on the skill of debugging, that is, problem solving. For English language support, I taught the students to first identify what was missing and then, explain where it belongs. These students were Level 2 students and needed opportunities to extend their discourse. Explaining is one of WIDA’s Key Language Uses, it’s a prominent use of language across the curriculum as we see here in the Language of Science Standard and also, I’d add, the language of computer science.

Each student identified what was missing then we explained in chorus, “______ is missing! It is not where it belongs. It belongs after the ______.” See one of the five images on missing stages below.

The sprout is missing! It is not where it belongs. It belongs after the seed!

After the students practiced verbally identifying and explaining, we moved into the coding portion of the lesson. At what stage does the Harvester pick the corn? When it is ripe. I took them to’s free PreReader Express curriculum and introduced them to Lesson 5: “Programming the Harvester,” the students would program the harvester to pick the ripe corn.

Now these primary EL students had practice problem solving, they simply needed some simple, explicit vocabulary instruction before we watched the tutorial. We learned code, blocks, and attach.

Next,’s tutorial on the Harvester:

Result? The students were more than prepared! Using the same language that we used with the life cycle activity, when they encountered a bug (CS for an error), they identified what block was missing, explained that it was not where it belonged, and solved the problem, “It belongs after the ____ (in the code!).”

The students identified and explained in two contexts–the life cycle activity and coding. The coding reinforced the WIDA Key Language Use, explaining. Students learned the Language of Science and had an introduction on how to code!

Upon reflection, my one piece of advice would be to split this into two 30 minute lessons. I fit it all into one, and we would have loved more time to code! If you’re a primary ESL teacher, try this lesson out, and let me know how it goes!

Listen Up! The Tutorial Video in a Coding Lesson

Who? You!

Many of us would self describe as being a liason, advocate, or my favorite, school mom. There can be an invisible barrier between our language learners and monolingual student body and faculty. This is not an unfamiliar role. It is this very role, which is exciting! EL teachers are uniquely positioned to carve out a door to coding for our students.

I recently had the privilege of meeting such passionate educators in Prince George County in Maryland who are about to launch into a semester long class through Loyola University on integrating coding in English language learning. I’m also thrilled to present soon at the 2023 Virginia English Supervisor’s Association on Coding for ELs. The movement is beginning!

Hi! It’s you! You’re the solution, it’s you!


If you’re reading this and an ESL teacher, you are familiar with language acquisition supports because you regularly utilize them as you craft your lessons. What are some opportunities for language development in a coding lesson?

The list is just a start! What would you add?

Tutorial Videos

Today let’s dig in to tutorial videos. Before I start my students on a coding assignment, they watch an accompanying tutorial video.

I have found that tutorial videos for CS platforms like CS First for Google and do not assume background knowledge. Further, they are unparalleled in their step-by-step, explicit breakdown. They are created for those with no coding experience. This approach is unsurprising– computer scientists are computational thinkers who regularly communicate with machines whose algorithmic needs demand explicit, precise, perfect directions. Their slow, careful explanations are a boon for our students! Boom!

These tutorial videos are listening practice. These platforms often make their videos accessible in an alternative format. CS First for Google, for example, makes its videos downloadable. publishes its videos on YouTube. This provides opportunity for the EL teacher to embed comprehension questions in educational platforms. I link them in Edpuzzle or Nearpod.

The kinds of comprehension questions I embed teach my EL students the importance of context, multiple meanings of words, and difference between general vocabulary and technical vocabulary usage. Check out an example with my commentary HERE!

Some questions read:

The best synonym for “sprite” in computer science is______.

A. drink.

B. character.

Click the code tab and select the “Looks” menu. The word “menu” here means ______.

A. a list of appetizers, lunch, drinks, and dinner options.

B. a list of direction options that can be selected.

Blocks from the event menu tell the computer when to run code. This can be best described as:

A. cause & effect

B. explain & reexplain

The World Cup & Tynker’s Coding Cup!

For the first and only time ever, the FIFA World Cup occurs during the school year. Usually held in the summer, the heat of the host country Qatar had FIFA move the soccer tournament to the early winter for its balmy 85-90 degree days. In the summer, temps reach a scorching 120 degrees!

This makes for a lot of passion in the classroom! But where there’s excitement, there’s opportunity. It’s been a springboard for a thematic unit where we have explored symbolism of flags, geography, politics, predictions & justification, competition, idioms, surveys, data, graphs, and more.

Tracking the Group Stage!

As we approached #CSEdWeek2022 and #HourofCode during our unit, promoted its Coding Cup by BYJU. Sounded like a great extension and an opportunity to revisit coding!

Explicit vocabulary instruction first! To support my students, I taught & reviewed some key terms in a Quizlet set.

They included soccer vocabulary: players, jersey, to train, to be on defense, striker, goalie and also CS subject & process vocabulary: strategy, evaluate, loop, command, upgrade, conditional logic. Students repeat the vocabulary 3x. We identify its equivalent in Spanish, discuss its definition with a visual, and sometimes, an example turns out a laugh–A loop is like what I see some of you doing in the hallway on a bathroom pass! I see you walk around and around and around over and over again!

To warm up, we loved the Kahoot! World Cup sponsored by Tynker. Even the most diehard futball fans had to think about the regulation size of a soccer ball and the sequential order of the last 4 World Cup hosts–I mean, were they even born 12 years ago in 2010 when South Africa hosted? Well, done.

Creating the team and designing the jerseys was a win–“I’m going to make Honduras!” I overheard.

Next, the training. The students coded their players moves in the training modules. They would have enjoyed being able to challenge each other to a match, not be relegated to play against random teams, but it was still highly enjoyable. I know, though, if they had that option, they would never stop coding!

We ran out of time so we extended our hour of code into the next class. I fronted the next lesson with an unplugged activity to explain the concept of conditionals. I had the students prepare a game in the mode of the classic children’s movement game red light/ green light. Each student wrote two direction cards for the game following the sentence frame “If_______, then_______, otherwise (else)_______.” Most questions written were strategic! “If you have a bird as a pet, take two steps forward, otherwise take zero steps.” Then they lined up and followed the directions as I read the directions.

Support includes vocabulary, sentence frames, translation, and examples!
Students writing & preparing the game!

This eased my students into manipulating conditionals again. Now there was a more solid understanding of what a conditional required, e.g., If I have the ball, then shoot. Else (Otherwise) move to the ball.

What I would have loved to see would be to be given access to the analytics without a paid prescription, so I could centralize tracking my student’s progress through the modules. offers theirs free, so I was really left wanting. No doubt it would be great to have a paid account! I’d explore Tynker’s Coding Cup with my students again–sooner than 4 years from now when there’s the 2026 World Cup!

DIESOL Podcast Interview! & the Evolving Role of the EL Teacher

It was a fun time being interviewed by DIESOL hosts Ixy Reyes and Brent Warner on the DIESOL Podcast, which highlights #edtech for ESL. Listen HERE to episode 74!

We talked across the country coordinating three time zones! The message emphasized how accessible it is to integrate coding in EL instruction and why we in the EL community should open up to computer science integration.

I enjoyed particularly talking about why EL teachers. We traditionally come from world language and ELA backgrounds, and computer science seems techy, mathy, and left-brained.

We EL teachers are a unique set, on the forefront in the education community with supporting language development and content knowledge to speakers of other languages. This means we are particularly positioned to forge new pathways of accessibility for our students in areas of study where they would historically have had limited to no access.

Forge New Pathways

Crosscurricular Nature

Important for EL teachers to realize is computer science and coding is crosscurricular. And we teach language through content. Coding itself integrates with and enhances the core subjects ELA, science, social studies, math, and more! (Social & Instructional language, art, and marketing anyone?) The WIDA standards are the language of ELA, the language of science, the language of social studies, the language of math.

Let this grab your attention, EL community!

With such a connection, there is opportunity. Let’s break open opportunity for our students. When you include coding in your instruction, you are not just integrating coding–you are teaching language in the subjects. Our students leave our class with extensive language practice, increased content knowledge, and have explored a new discipline.

Computer Science-Like Language-is Crosscurricular

Advice to Start

Become the student again. Explore. Try. Fail. Succeed. Positioning ourselves in this role is powerful for us and our students. As learners, and can share this learning experience beside our students. We can! EL teachers, let’s go, let’s code!

Lesson Sequence- Unplugged to Plugged

How do I incorporate coding into my lessons? Is it a replacement? Is it an extension? It can be both- the field of computer science supports integration. Let’s look at this practically. Let’s look at lesson design.

We can take a lesson from the field of computer science with the lesson sequencing approach from unplugged to plugged.

An unplugged activity is just that– unplugged from a digital device. It is a real world application or problem that introduces and practices the concept later to be used in coding.

Stay real!

An unplugged activity is often what we would think of as a traditional EL language activity. For example, write directions to a place in the school or community. “Turn left,” “Move forward,” “Pass the library.”

A plugged activity is the digital application or problem to be solved in coding.

Now plug in!

For example, code a digital sequence that moves your sprite from one location to another. Also, “Move forward,” “Turn left,” etc.

Sound familiar? Maria Montessori talked about a similar instructional sequence for math. “Concrete -> Representational -> Abstract.” She’d have her students manipulate physical items before expecting them to write representations and then work equations.

See this in action!

Unplugged– Write directions to a place in school. In groups of 3, my students had to write specific directions to a place in the school. Their instructions would tell them where they needed to end up and some told them where they could NOT go. For example, “Start at room 207. Go to the clinic. Do NOT pass the library.” They had to write out each physical step. “Move forward.” “Move forward.” etc. Then when complete, they exchanged directions with another group and had to follow them. Upon arrival, they had to take a group selfie in the location. Successful algorithms, directions, would lead the group there, and ones that needed work would, well, need work.

Plugged– Write directions (code) for your robot to reach the finish line. Students select and sequence the appropriate blocks to help their robot reach its destination.

Their unplugged experience gave them vocabulary exposure, problem solving practice, and interaction to be confident as they approached coding! And, it was super fun! Great job guys!


CodeVA Featured Educator

It was an honor to be a featured educator for CodeVA this October! CodeVA is a nonprofit based in Richmond, VA which partners with schools, parents, and communities to bring computer science education opportunities to all students. All should follow CodeVA for CS news, engagement, training opportunities, and more!

CodeVA was a sponsor at #SETESOL22, where I presented Leveraging Coding & Computational Thinking to Learn English. I had the best conversations with Kristin Hott, their engagement strategist on CS in EL education. Finding like-minded educators is explosive! We talked about how Scratch listens to educators for feedback, Virginia’s CS SOLs, and how block based coding with its collocations and phrasal groupings in blocks mimics how the brain learns language, making it a must-use tool for EL educators. From these conversations came the connection which led to the spotlight.

Read the spotlight here! Thank you, CodeVA! CS for all, especially multilingual learners!

“I think everybody in this country should learn how to program… it teaches you how to think,” Steve Jobs.

The first line hear grabbed me. ML teachers, we teach the everybody in this country. We are know where to begin. We are the resource. We are the first hello.

The second line hooked me. I thought I knew how to think? Is thinking something I can be taught? Are there different ways of thinking and what different modality of thinking does coding teach? And how can this benefit my everybody-my language learners. Watch:

This mode of thinking has been hard to capture. It is now referred to as “Computational thinking,” but that may be a little off-putting because it seems like it could be “Thinking like a computer,” which… it is… but thinking like a computer is only a fraction of what computational thinking entails and what it can do for our students if taught and put in practice.

So what is computational thinking? How are these aspects similar to or just different enough to the language learning process that this can help my language learners? Look for posts that address each of these. What connections are you making with language instruction? Do you see overlap and opportunity yet?

This discussion will be informed by Jacob, Sharin & Nguyen, Ha & Tofel-Grehl, Colby & Richardson, Debra & Warschauer, Mark. (2018). Teaching Computational Thinking to English Learners.

Why should EL teachers integrate coding in their English instruction?

Since beginning my journey on integrating introductory CS in my ELD instruction, the reasons of why EL teachers can, should, (need to?) to integrate coding in their instruction have grown. And with each project, another reason pops up and waves its hands, “Hey, you forgot about me!” I am digging into each, then exploring how.

A participant at my #SETESOL2022 presentation added, coding provides immediate feedback. And my daughter has scrutinized this list and said, “Mom! It’s fun!!

What would you add?

Block Based Coding and the Language Learner’s Brain

There are different computer programming languages, Block Based Programming, Python, Java Script, C++ and more.

For beginners and language learners–our target group of learners–Block Based Programming is widely used.

I love Block Based Programming, particularly for EL students. Here’s why:

Language is learned chunks and collocations. Lewis (1997) in The Lexical Approach lists formulaic expressions:

  • Sentence Starters – Today I will ______.
  • Phrasal Verbs – to break down, to get over
  • Expressions – You’re kidding me!
  • Idioms – to have a hard time of it
  • Formulaic expressions and more. I’ve got it!

Block Based Programming capitalizes on this natural way the brain learns vocabulary and phrases. Directions/ lines of code are chunked, a boon for the language learner, showing a more complete picture of language in use-a word hanging out with its other word friends.

Scratch Tutorial on Turning a Sprite (A Character).

Blocks also include input parameters- places where you can change the number, direction word, sequence, or sound for example. This shows the language learner the flexibility of the language and what types of similar words in the same semantic category could replace the word. Bonus: note below the gradiency that the student is introduced to here.

Drop down menu from Build a Flappy Bird Game in

Get started!: MIT designed created a free coding platform Scratch for students to create digital stories, games, and animations. Also, utilizes block based programming.

Read more from about Chunking & Collocations in this article. Learning Language in Chunks.