From 70 MPH to 55 MPH

There is a feeling when you are driving on the open road and just enjoying the flow of the traffic and you are just cruising and advancing at a constant pace, that is satisfying. Then, there is the feeling when you enter the big city, at peak traffic time, when you feel you are never arriving at your destination and then you are stuck behind a nice sweet grandma driving. Well, these are feelings I have gotten to know well in my teaching life. Throughout my 19 years of teaching Computer Science, I have had the opportunity to teach all divisions from K-12 and all of them have their rewarding and challenging moments. This year I was asked to teach 6-8. I have to say that I am in my first semester and I have gotten a huge sense of respect for Middle School teachers.

When you teach Pre-school or Elementary you feel like you are getting bright new brains that are waiting to be filled in with new information. When you teach High School, you get kids that are going through the maturity process of finally getting that what they do in this stage will determine what they decide to do for their higher education. And then there is Middle School, that limbo stage of it all. That peak hormonal stage where kids are confused about everything. Their priorities change not only every day but several times throughout the same day. This has made me change and adapt to the way CS should be taught.

I had never had to modify so many plans on the go as I have this year. You plan and plan and then somedays it is the best lesson ever and somedays it just not. So how do middle school teachers do it? I am relearning how to teach CS and I have a lot of help from my colleagues in the same hallway. They have been the best induction to teaching Middle School as no book or article can tell you how to best get these kids inspired or show their creativity like another teacher doing the same, does.

My kids have achieved amazing projects, but in the process, I have learned who has a crush on whom, who is now friends with whom and just a plethora of gossip that I did not know had to be now part of my information bank. It is amazing that they can be programming a Micro: Bit, creating a videogame using Scratch, designing 3D models, all while socializing and sharing their lives both in-person and digitally. I now have a new definition of multitasking. I have also learned that even if they are doing this, as long as they are working, everyone is happy! Thank goodness for headphones. One of the most wonderful things is that this is the age where they don’t hide their passions for something and if I am smart, I use these snippets to my advantage and plan lessons accordingly. Keeps me on my toes. This is a crucial moment when I can open their minds to all CS has to offer, I just have to move all the other clutter in their heads to a side.

So I might not be driving at 70 MPH as I was when I was teaching High School but while driving at 55 MPH I can see what’s going on in this big city called Middle School and how these kids are shaping their lives and finding themselves one CS project at a time. Once again, my biggest applause and respect to all those Middle School CS teachers out there.

Michelle Lagos

Representative at Large

My Summer PD looks like a Promising New Adventure…

The CSTA conference has been my summer PD for many years now, and it is incredible all the things I’ve been able to learn and bring back to my classroom for the new school year. This year I started thinking about this and how my instruction is always enhanced by the workshops and sessions I attend.

This year, I was looking for fresh new ideas. After teaching High School Computer Science for the last few years, this year I will be teaching Middle School. I needed ways to make my class engaging without eliminating the element of fun. I attended many great workshops and sessions at the conference but a session about Flipping, Agile and Gamification was particularly enlightening. This session talked about how to truly engage students and teach collaboration. It talked about adding game-like elements to projects and instruction to motivate and engage students. It was a great session given by Mr. Brandon Milonovich.

After the conference, I decided I wanted to learn more and felt I had a road to follow and a goal to meet. During my research, I came upon a book called EDrenaline Rush by John Meehan (@MeehanEDU) that talks about how to engage students using several elements that are used in Theme Parks, Mud Runs and Escape Rooms. This was a game-changer. I started planning my year with a new perspective. It talks about how “classroom walls belong to the learners inside as much as the teacher”. It talks about how your class needs a story. This book is not specifically about Computer Science, but it is so applicable.

I am using Avengers as my classroom theme this year. I am introducing middle schoolers to the Problem-Solving Process and how to apply Computer Science to engineering and I thought this will make a great story for my class. Some of the Avengers were born with their powers but others were self-made. Tony Stark is a great inventor and engineer who created Iron Man, Captain America was also made through science and innovation. This is opening a door for my students to become Everyday Heroes doing extraordinary things. They will have a mission to improve their world through Innovation, collaboration all using Computer Science Skills. They will feel they belong to a team with a purpose and a mission, all the while earning points and badges. Gamifying my class. I want them to think, ask, research & create using Computer Science skills.

I was really nervous and stressed about the move to a new division and now I am really excited to see all the great things my students will be able to do throughout this year. If you have the chance, please do not doubt to register for the CSTA conference 2020 in Arlington, Virginia. There has not been a year so far that I have not used some of the knowledge I got at the conference in my class the following year.

I will let you know how the adventure goes. To be continued…

Michelle Lagos
Representative At Large

Teacher, Facilitator or Guide?

These past weeks I have been thinking about how Computer Science education and the way to teach it has evolved. I have been a teacher for about 19 years now, and most of the time my students make the most interesting questions that get me thinking and researching about certain topics. That is how this blog was conceived. I am currently teaching my 9th graders how to work with BBC Microbits. (By the way, Microbits are awesome!) To introduce them I start giving them instructions that are very detailed about how the Microbits work and to get acquainted with the Make Code interface. When I say detailed, it is very detailed. I give them a step by step guide including screenshots of where to find the necessary blocks, how to save, download the program and upload it to the Microbit. How to use the Microbit simulator included in the Make code interface. Once we do several projects in which we learn how to make the Microbit sing, how to work with the LED screen and how to connect alligator clips, I assign a project in which they have to come up with a character and incorporate the Microbit as part of it adding at least 2 actions with it. That’s when it all goes south!!!!

Many kids seem lost. It’s like they have never used a Microbit before. That got me thinking. When I started learning programming, I learned using Pascal with a green and black screen and all programming was text based. It was hard!!! But I also remember a professor telling us that if we learn the hard way then after any programming language should not be as hard to learn as we had the base and logic to programming. At the time I really hated that comment as any student would’ve but today as a teacher I wonder if I am up to something here. Am I, as a teacher, allowing my students to really think on their own? To really grasp the logic of creating a program. Or are they just little robots following my instructions?

I decided to analyze the progression of my students to get to ninth grade Computer Science. Throughout their early years we want to engage them and get them to like and be interested in Computer Science and all the possibilities they have with it. As we introduce them to all the wonderful things that we can achieve with Computer Science, we look for tools that are engaging and fun. Many companies have helped produce such introductory tools, which make it so easy for kids to learn that they start enjoying programming. However, they get so used to it that then the progression to more complex programming seems harder. Emphasis on “seems”. Making the transition from block programming to text programming is set by many of these tools, including the Microbit. The Microbit can be programmed using blocks, JavaScript or Python so that is covered. But there is an element that only teachers can do and it is to facilitate the transition between just giving guidelines that are so specific that it seems students are only copying a program while truncating their creativity and promoting the ability to create and discover on their own or by giving a task for them to solve on their own. I realize that although I am teaching Computational Thinking skills my kids are used to getting very specific instructions for programming. This is not bad it’s just that the transition is not as seamless as it seems. So how should the transition take place? I believe a good starting point is to be cutting on the screenshots on the instructions guide and limit them to the instructional part of the lesson, by going through the steps with them and let them take their own notes. Then when a project is assigned, they can take a look back at their notes as a reference. Another tip is to include videos as additional help but getting away from giving too detailed step by step instructions starting in the Middle School area so that when presented with these kinds of projects in High School, they have a base on how to solve them. Let the instructions be a guide and not a solved problem for them to copy.


Michelle Lagos
Representative at Large



Never too late to innovate

Last summer, after nearly 19 years as a CS teacher, I started thinking how my class has evolved exponentially over the years and how this school year I wanted more of those deeply gratifying “Aha” moments from my students. So, I started researching ways in which my Computer Science class should evolve beyond updating the content to align the new standards. I realized I was giving myself a big task, considering that I was still mapping my curriculum to the new CSTA standards which it is a lot of work by itself. My goal, my hope is that my experience is useful to other CS teachers out there looking to make some reinvigorating and refreshing changes.

So here is my journey to start the new school year. Part of my research included finding out how important Computer Science skills are in the work force. What would my kids really need once they leave our school and be prepared for both college and “real world”? There is so much information out there that is easy to become overwhelmed so I had to narrow it down to focus on my goal. What would bring those “Aha” moments to balance the covering of my content and preparing my students for when they leave High School? I remembered that when I was in High School, I was required to take a home economics and woodwork shop class. I remembered the best part about these classes was the satisfaction when I finished a project and could take it home to show off. The closest to that emotion I have seen in my students is when a program finally works and they get the result they want, or when a robot finally performs as expected due to its programming. So, I thought why not combine the CS skills and content with that satisfaction of creating something tactile that can be used in real life besides software. Basically, bring CS alive through STEM and real-world applications. I was able to pull this off with 3 simple steps that did not break my school’s budget:

Step # 1: I redesigned my computer lab. I didn’t want to be a makerspace; after all this is a Computer Science class not an engineering course but I needed some elements of the engineering process. This didn’t require a large budget so it is always good to start to look at what you have and how to use it, what your school has and how to recycle any pieces of furniture you can find. I’ve never had a class with more than 24 students as that is my school’s policy but my lab had 30 student PC computers. I took 6 student PCs out and kept 24 which left me with 3 long tables. I used two of those to create a working area, where students could 3D print and assemble robots & collaborate on other innovations. Now I had 3 main, clearly identified areas in my lab: The Research & Innovation Area, which is where the PCS are located, students can research and investigate prototypes, program and research. The Engineering Area, which is where students get their hands “dirty” building their prototypes and The Robotics Area where I have my robotics table to assemble and test robots.

Step # 2: I requested the school purchase materials that I needed that were not your typical Computer Lab things like included drills, screw drivers, sand paper, tweezers, wrenches, solders, cable strippers, etc. I also got lucky when my school got two 3D printers donated so now, I had 3 at my lab. These are part of the Engineering Area.

Step # 3: I had to “spice up” my projects for the semester so they were fun, engaging and aligned with the content I needed to cover. I took some time to research many innovative projects and found some that were just right. My students are now creating digital pets with Microbits, which are cheap and simple yet very adaptable electric boards, they are making collaborative projects like designing a drone 3D model that can be printed and programmed using two Microbits, building hats that sing and even video games played with controllers that they designed. Other simple yet valuable projects include measuring the humidity in soil.  

This past December I finished the first semester and I can say that these changes have been successful. It is possible to integrate Computer Science into STEM without losing the essence of what Computer Science is. The students were very engaged, they treaded unfamiliar territory with power tools and allowed their minds to be challenged while having fun. Yes, at times the classroom was a little bit of an organized chaos, but this is exactly how learning should be; challenging and fun.

Michelle Lagos

Michelle Lagos
Representative at Large

What does it mean to be a Computer Science Teacher?

Two weeks ago, I had the opportunity to attend a robotics competition with a team of students that I coached through the summer, and I was amazed by the feeling I got being in the same room as many other CS teachers. This got me thinking about the CS teacher profession. I believe that CS teachers are a unique breed. I’ve read so many articles, seen so many posts from other CS teacher friends and all have something in common, one way or another at some point the fact that it can be a “lonely” position is brought up.

Indeed, almost everywhere CS teachers may be the only one within their departments, their school or even their district. Honestly, CS is an amazing, beautiful and engaging subject but none the less not an easy subject to teach. Many of us who have embarked in this adventure for a while now know that being a CS teacher means you become a life time learner and that mapping a curriculum every 3 to 4 years is just part of the main to do list. Other subjects have many years’ worth of curricula with minor changes happening through the years, but computer science is constantly on the move and the content becomes obsolete fast. So, a lesson plan that might have worked wonderfully 5 years ago might not be useful now. Of course, there are the basics that are modified but not vastly changed. So, creating a curriculum is just part of our daily tasks.

A computer science teacher may have different backgrounds. Some come from the CS industry and have a CS background, others are “imported” from teaching other subjects such as science or math and some have a technology education degree. I was searching online for a specific degree in Computer Science education and although you can easily find a master’s degree with a CS education concentration, I had a hard time finding a CS education bachelor’s degree. What most colleges or universities recommend is getting an education degree to later get a CS education master’s degree or have a CS degree and get a teaching license. All that is perfect, but I think that CS teachers need better training and just as I mentioned before it can become hard to teach a subject you are not properly trained for. I read this past week a post from a CS friend on Facebook that was asking mostly himself if he knew “too much” about CS to teach a beginner’s class, and I thought that this is the kind of things that make us unique. A math teacher will probably never ask themselves if they know too much math, or maybe they do, and I just don’t know.

A Computer Science teacher also becomes a “fix it all” individual, the teacher that quite possibly has a charging cable in their labs, knows the basics of fixing a computer and has students going into their class asking if you how to fix theirs.

Throughout the years organizations such as CSTA, ISTE, Code.org, Oracle, and the College Board among others have taken big steps to support CS teachers and making our jobs easier in the planning phase, prepping and the dreaded paper work part. Still, in our own hometown, there is yet a very small number of Computer Science teachers and that needs to change. Every time I have the chance to attend a conference, event, competition or workshop that is specifically for CS, that is when I feel I am home. I know that the people around me have the same challenges and successes, have the same feeling of sometimes teaching a lonely subject. So, getting this sense of community goes along way. I hope that at the rate CS education is growing around the world, that sense or community remains.


Michelle Lagos
Representative at Large

The What, When & Where to Implement a CS course

Great things are happening for Computer Science (CS) education these days. It is exciting to see news and posts about more schools & districts incorporating CS courses. However, with the increasing speed that technology is changing and the more embedded it becomes in our everyday life, the conversation now derives on when and what to teach. The conversation also includes what knowledge or profile should a CS teacher have. There is no magic formula to incorporate CS into a school.  Every school is different, every group of students is different, and every teacher is different.

The whole idea of CS education is to introduce our students to the wonderful world of being creators of technology. Most of us are avid technology users and especially our students which are digital natives. So, what should a school or teacher take into consideration to begin their CS courses. Where does it fit in the curriculum? Are the credits part of math, science, STEM? What background should the teacher have? Should CS courses begin in elementary, middle school or high school or even younger?

So, what should we teach? Should we implement an introductory CS course? A programming, engineering, robotics, or a web and game design course? Should digital citizenship be part of it? Well, there is no curriculum in a box that would fill everybody’s needs, although there are organizations such as Code.org, CS for All, Oracle, to name a few that are producing and publishing material and provide professional development doing an amazing job orienting teachers, schools and districts on how to successfully implement CS.  It is also important to know that there is a huge community going through the same process and there are organizations such as CSTA that also support teachers in this endeavor.  Another option is to develop their own curriculum taking into consideration the school’s budget, student’s needs and teacher’s experience, but to be able to do that there will usually be the need to have an expert in curriculum development that can analyze all these needs and customize how a CS course will be implemented. There is not a standardized profile for a CS teacher, some won’t even have a CS background, which is not a requirement, but it is important to have a notion on teaching critical and computational thinking.

Before starting is important to know the school, district, students and teachers.  Once there is a clear picture, identifying if there is already a faculty member familiar with the school culture and environment who can fit into the profile of CS teacher the school needs. Determining standards, content and scheduling will come next. Some schools start CS as an elective course until they are ready to embed it into their regular course load, which is a good option. The ideal is to introduce CS on the lower grades, so the expectation and content to be taught in the upper grades can become either a college preparatory course or fulfilling the skills to be able to work developing different kinds of technology while still in high school or while in college, allowing them to start having an income at this age. Some schools have a one to one program established, some have computer labs, and some have devices that can be reserved and checked out from a media room or library. Depending on the type of devices that the school or district counts with is where the decision to what kind of software or online product can be used for the course. Fortunately, more and more there are products and resources available on a browser version and can be used with most devices that have an Internet connection and can be opened with most common web browsers.

In the end, each school or district must create its own customized blueprint that will work for taking advantage of all the resources and communities out there to help.


Michelle Lagos
Representative at Large

The role CSTA has played in my professional life

This month the announcement for nominations for the board of directors made me think about my path through CSTA. The first time I heard of CSTA was in 2008; starting a new job in a new school having been teaching CS to High School students and was embarking on a new adventure of teaching K-5 Computer Science. It was the first time I was teaching Computer Science to that age group and I was apprehensive about some of the content and available resources. I teach at the American School of Tegucigalpa in Honduras, a small under-developed country in the heart of Central America. AST is a N-12 non-profit bilingual school, so we are an English spoken campus. Even though most schools offer computer classes, my school has always strived to give the best college preparation possible. So the expectations for me as a teacher were high. Being part of the smallest department in my school, it can be a challenge getting PD and resources. Luckily, I found the CSTA website and went directly to their resources and curriculum sections. As I explored the page I got interested and decided to become a member. As a new member of a community of teachers I now know we share similar challenges when teaching CS.

In 2012 CSTA was calling for nominations for the board’s upcoming elections. I was hesitant, thought the odds were not good for a Latin-American teacher. Turns out I got elected as the International Representative. I got to be part of their meetings which dealt with important topics, looking to improve and support K-12 CS education. I worked with the curriculum committee, alongside Deborah Seehorn and Tammy Pirmann reviewing the published CSTA K-12 Standards. Later I collaborated on my favorite project translating the Standards to Spanish which have been helpful for those teachers teaching CS in Spanish.  CSTA is not only meetings, it is also a place to grow and share, like the Annual CSTA conference which I always attend and volunteer to help out. It takes a lot of people and work to put it together. There are many ways to volunteer at the conference and it is a wonderful way to get involved and advocate for CSTA as well as make connections.

In 2016 I ran for a second term on the board, this time as Representative at Large and once again was elected to serve. This time around the experience was different as I was able to be part of different committees and meet more of the active, engaged and passionate members. I now know more about all the resources, workshops, scholarship, keynotes, PD opportunities CSTA brings to the K-12 CS teachers and how much heart is put into these. We hope that these efforts will improve CS education around the world. Family. My best advice as a CSTA member? Get involved, be an advocate, join a chapter or collaborate with other members. I guarantee that it will be worth it.


Michelle Lagos, Representative at Large