Your alarm on your smart phone wakes you in the morning—that’s powered by computer science. You ask your smart speaker what the weather will be that day—that’s also powered by computer science. You order coffee on the Starbucks app on the way to school—you guessed it. You log in to your school computer and pull up your—computer science, again.
We can continue, but that would grow old quickly if it hasn’t already. The point is that computer science shapes so much of our day-to-day experiences from the type, design and structure of the digital tools we use to the interfaces, interconnectivity and functionality of our favorite programs.
Definition of Computer Science
The definition of computer science encompasses the systems and processes of developing and using technology and computational systems as well as the mindset and thinking of the scientists behind it. Computer science ranges from the digital skills needed to use technology to the advanced programming skills needed to design that technology.
Computer Science in the Classroom
In many ways, computer science exists in classrooms already if students are using technology, but this just scratches the surface for the possibilities. Teaching computational thinking and coding to kids are also important to learning, and not just from a programming perspective. Computational thinking teaches students how to think critically and logically. It enables students to leverage advancements made possible by computer science, from data collection to in-depth research.
With coding, students learn to translate critical thinking and problem solving into algorithms that can leverage the power of technology to perform work. It teaches students how to communicate clearly, plan well-articulated and efficient processes and work within the parameters set by any problem, like the resources or inputs and the desired outcomes or outputs.
Computer science is a game-changer for what education looks like, and it is at the core of new approaches to teaching and learning, like project-based or inquiry-based learning, personalization, gamification and technology integration. And these approaches also benefit from students having experience with computational thinking and coding.
Definition of Computational Thinking in Computer Science
Computational thinking encompasses a set of skills and processes that enable students to navigate complex problems. Though often used to develop code, computational thinking can be much more broadly applied. This process is a map from curiosity to understanding that makes it easier to tackle large and small problems in both “plugged” and “unplugged” scenarios. Computational thinking results in an algorithm, ensuring the process can be replicated. In other words, it is about the problem-solving process itself just as much as it is about solving the problem.
Moreover, computational thinking builds metacognitive skills that teach students how to think, which is especially important as education moves from content acquisition to higher-order thinking skills.
Computational thinking includes four key concepts: decomposition, pattern recognition, abstraction and algorithmic thinking.
- What is Decomposition? Decomposition is the process of breaking down problems into smaller, more manageable parts.
- What is Pattern Recognition? Pattern recognition seeks out connections and similarities amongst the different parts.
- What is Abstraction? Abstraction removes the ‘noise’ of irrelevant information to find the most important pieces in each decomposed problem.
- What is Algorithmic Thinking? Algorithmic thinking details the problem-solving process into easily understood steps.
It is essential to remember that algorithmic thinking doesn’t necessarily result in code. Instead, algorithmic thinking is a reflection on the process and its multiple iterations, challenges and solutions. It can help facilitate endeavors like research, project planning, or literary analysis.
Coding and Computer Science
While computational thinking is the problem-solving process that can lead to code, coding is the process of programming different digital tools using algorithms. It is a means to apply solutions developed through the processes of computational thinking. Algorithms, in this case, are a series of logic-based steps that communicate with technological tools and help them execute different actions.
When coding programs, there are existing algorithms, like scheduling, route-finding or compression algorithms, that coders need to know, but there is also the need to create new algorithms.
Beginning to develop students’ coding prowess, however, does not require formal practice with either of these or even access to technology. Have students map directions for a peer to navigate a maze, create visual flowcharts for tasks, or develop a coded language.
In whatever way it’s approached in the classroom, coding encourages students to communicate clearly and logically through an algorithm. To arrive at an algorithm (especially as algorithms advance in complexity), they must apply computational thinking to solve problems and practice metacognition as they do so. In this process, students become more adept technology users in general and can leverage these to advance and deepen their learning as they inherently practice computer science both in and out of the classroom.
Computer science, computational thinking and coding are important in education as they teach students crucial problem solving and critical thinking skills, as well as preparing them with career-ready skills for the future.
Learn more about EasyTech, the computer science curriculum program for K-12 students or EasyCode, a K-12 coding program, by Learning.com by clicking below.
Founded in 1999, Learning.com provides educators with solutions to prepare their students with critical digital skills. Our web-based curriculum for grades K-12 engages students as they learn keyboarding, online safety, applied productivity tools, computational thinking, coding and more.
Learning.com is delighted to share that Joey Norris, Coordinator of Technology Integration at McDowell County Schools in West Virginia, has been...
Computational thinking, because of its name, is often misunderstood as being interrelated to technology (computers, in particular), making it often...
For many people, computer science has been considered synonymous with coding or computer programming. And as the founder of Codesters, a platform...