According to Jeanne Wing, computational thinking as a way of solving problems, designing systems, and understanding human behavior by drawing on the concepts of computer science. Although the definition sounds super menacing, computational thinking is a concept that is essential to the modern classroom as I learned in ECI 201. Before this unit, I had no idea what computational thinking was and when the topic was initially introduced I was very confused as to how it would tie into different curriculums. However, after performing several activities and doing my own research I can see the importance of Computational thinking across the curriculum.

Computational thinking is not one demential it can be broken down into four categories: Algorithmic Thinking,  Decomposition, Abstraction, and Pattern Recognition.

Algorithmic Thinking

Algorithmic Thinking can be found in the classroom whenever students create or use a well-defined series of steps to achieve a desired outcome. Specifically in ECI 201, we have done several assignments that have required the use of algorithmic thinking such as coding the Sphero. The Sphero is a robot that follows directions based on the code the user develops and will follow the steps/program created by the code. For our task, we were required to make a code for the robot to navigate around NC State making various stops at different buildings. Besides coding the directions of the Sphero, my team was also required to have lighted animation at one point, a scrolling message at two points, and sounds/ speech at three points. In order for the Sphero to move, my team used algorithmic thinking by creating a code that was a series of well defined steps. We also used algorithmic thinking in this task as we tried to keep our code as simple as possible and have the Sphero follow simple steps to successfully stop at each destination on our map. When building the code, our algorithmic thinking was very trial and error. It was difficult to code the Sphero as it would often roll in the wrong direction, stop prematurely, or not stop at points on the map. Despite this, we were able to eventually figure out a step by step code using algorithmic thinking. If I were to perform this activity again, I would be sure to keep my code simpler to further enhance my algorithmic thinking skills. Besides using the computational skill of Algorithmic Thinking this task also required the 4Cs, creativity, collaboration, critical thinking, and communication.

In the future, I plan to incorporate algorithmic thinking in my classroom using the Sphero. I specifically plan to do this in Language Arts by having my students create simple directional codes to have the Sphero navigate a plot chart. I plan to have the students code the Sphero to stop at each part of the plot chart. This includes the exposition, rising action, climax, falling action and conclusion. I would have the students code the Sphero to land on each spot of the plot chart and then discuss the element based on the events in the story. By creating a step by step code as well as following the step by step plot chart, students would be able to use their algorithmic thinking skills Another creative idea I saw was that one New York Language Arts teacher reinforced themes within Grapes of Wrath by creating a mountain that the students had to navigate the Sphero over. The purpose was to help the students experience some of the challenges felt by the main character as well as further the students’s algorithmic thinking skills. Therefore, I will use my new found algorithmic thinking skills developed by using the Sphero to embed computational thinking into my future classroom.

Decomposition

Decomposition is the process of breaking down a complicated problem into its components and working on a component at a time. As humans, we tend to see large problems as unsolvable or impossible and tend to shut down as a result. When faced with difficult tasks, I often feel very overwhelmed and panic as I do not know where to start. Decomposition is the perfect strategy for large problems as it allows one to break down the problem into solvable pieces and in turn makes complications more approachable. Just like algorithmic thinking, decomposition has also been a major theme in ECI 201 as we used it to build a Piper. A Piper is a computer which can be built by students as well as other adults such as teachers and parents. When I first found out that we were building a computer in ECI 201, I completely panicked as I had no idea how my group was going to construct a fully functioning model in a class session. Despite this initial panic, we decided it was best to break down the directions or decompose them to successfully build the Piper. We followed the blue print in sections, breaking down the steps into several parts and worked collaboratively to make the Piper. As a result of decomposition, we were able to successfully break down the directions into simpler steps and craft a fully functioning computer.

Last year, I was fortunate enough to student teach in a first grade classroom and witnessed the process of decomposition first hand. Specially in math when the children were learning addition, we decomposed the addends into tens and ones places using tens rods and units cubes for the students to visualize the problems at hand. This strategy seemed to help the students really understand why each number was being added as well as reinforced the concept of place value. Furthermore, I plan to incorporate decomposition in my classroom in other areas of the curriculum. In language arts, I could use decomposition to help students break down words or sentences to help them understand the different parts as well as the meaning.

In other classrooms across the United States, I have also found teachers that use decomposition to break down interesting problems. A seventh grade class in  Green Dot Public Schools Washington dissected the American criminal justice system, identifying problems and proposing solutions that better represent a fair and balanced system. Another six grade class decomposed a LeBron James dunk, using the NBA’s public motion tracking data to plot and analyze motion graphs to better understand the offensive strategy. Finally, a common core standard in kindergarten is the decomposition of numbers which allows students to see the groupings, relationships and patterns in numbers.

Piper in action

Abstraction

Students use abstraction to strip away unnecessary details to develop a generic solution, or represent a complicated system with a simple model or visualization. This is useful as it allows students to see the main ideas without distracting details or unimportant information. Moreover, abstraction allows students learn what information is important and what can be left out which is a critical skill as problems grow in complexity. We specifically used this skill in ECI 201 for the Time Line of Educational Technology. For this activity we had to select 10 important events that represented the evolution of technology in the classroom as well as 5 significant technological events in our own lives. I personally used abstraction to create this timeline as I had to narrow down important events and facts about these events to create a single, simple timeline visual. Additionally, I had to create a screen cast that had to be under 5 minutes. In order to successfully be in the time range, I used abstraction to only discuss the bigger picture, why these events were significant to history as well as my own learning. By creating a single visual screencast, I also used abstraction to get rid of unnecessary visuals and details of my time line.

In the article, “Computational Thinking Across the Curriculum” the author reveals that in his school district, Green Dot Public Schools Washington, educators use abstraction across the curriculum. In humanities class, students of the authors district simulate their own ancient civilization by choosing natural resources and technologies and seeing how their populations fare over centuries, while ignoring complexities like government structures and religion. While learning about human anatomy, seventh graders team up to create 3D amusement parks based on a human body, representing blood cells with bumper cars and neural networks with zip-lines, without stressing over details like molecular composition or energy production.

I plan to use abstraction in my future classroom when teaching reading or writing. I plan to have my students look at the big picture or main idea of stories as well as the main focuses of their writing which will allow them to eliminate necessary details and facts. In math, I plan to use abstraction when teaching my students about word problems. Word problems often have unnecessary details in them and can often be confusing for younger students. I plan to teach students how to  strip away unnecessary details and develop a solution.

Check out my screen cast! Check out my Technology Timeline!

 

Pattern Recognition

Students leverage pattern recognition by analyzing trends in data and using that information to work out solutions. This skill is very useful in the classroom as it allows students to critically think about the information they are learning to create possible solutions. Applying a real-world context to lessons helps students realize that the skills they are learning are not just relevant but vital beyond the classroom. In fact, for ECI 201 I used pattern recognition when performing my hour of code. For this activity, we were required to select an activity on the Moodle page and complete an hour of introductory coding. I decided to do a Moana activity in which users were required to build codes for Moana and Maui in order for them to successfully complete a mission. Users could code for simple tasks such as moving forward or more complicated tasks such as turning, dodging and striking.  While creating the code I performed pattern recognition as I was able to recognize that the same pieces of code could be repeated to perform the same functions. Therefore, pattern recognition was very useful as it allowed me to analyze the trends in the code to work out a simpler solution.

In other classrooms, teachers also use pattern recognition. Students in engineering classes around the country can analyze earthquake data by building their own seismograph. The students then work in groups to represent an engineering firm that must analyze the seismograph for how it works and how to read the seismogram it creates. Due to lessons like these, I only assumed that pattern recognition could be used in higher level classrooms but now I know it can be incorporated into younger classrooms as well. In the future, I plan to incorporate pattern recognition in the classroom by using a Sphero. First I will have my students draw a pattern on the floor of shapes, numbers, letters, etc. Then, I will have my students create a code and find patterns within the code so that they can repeat the code. This will not only improve their pattern recognition but will also improve their critical thinking skills as well.

Conclusions

I think all students should use computational thinking across the curriculum because it can be applied to all facets of learning. Computational thinking allows for students to draw parallels between what they are learning and how they are approaching problems across all disciplines. Moreover, it can be used to help students achieve learning objectives set by their teachers. Computational thinking breaks down and builds up concepts in order for students to have a better understand of the material being covered. Finally, it is essential for students to learn and apply computational thinking because it is a vital skill needed in future endeavors and will become more prevalent in the classroom setting.