Computer Science

Computational Thinking

Computational thinking involves breaking down complex problems into smaller, more manageable parts, and then solving them using logical and algorithmic thinking. It emphasizes the use of abstraction, pattern recognition, and algorithm design to tackle problems in a way that can be executed by a computer. This approach is fundamental to problem-solving and programming in computer science.

Written by Perlego with AI-assistance

8 Key excerpts on "Computational Thinking"

Index pages curate the most relevant extracts from our library of academic textbooks. They’ve been created using an in-house natural language model (NLM), each adding context and meaning to key research topics.
  • Teaching Computational Thinking and Coding in Primary Schools
    • David Morris, Gurmit Uppal, David Wells(Authors)
    • 2017(Publication Date)
    • Learning Matters
      (Publisher)

    ...In addition to its clear links to computing, the potential of Computational Thinking to enhance learning across other curriculum areas also offers exciting opportunities. To recap, Computational Thinking encompasses a range of processes and approaches which can be utilised to tackle a problem or create a solution. Commonly used processes and approaches include: Computational Thinking processes: •    Logical reasoning – to predict, analyse and check information; •    Decomposition – breaking up problems into separate parts; •    Abstraction – removing irrelevant details; •    Pattern recognition or Generalisation – the identification and use of similarities; •    Algorithms – clear and precise step-by-step procedures or rules; •    Evaluation – ongoing decision making to check the solution meets the requirements of the problem. Computational Thinking approaches: •    Tinkering – experimenting and playing; •    Creating solutions; •    Debugging – finding and fixing errors; •    Perseverance; •    Collaboration. (CAS Barefoot Computing, 2014) It should be noted that Computational Thinking does not always require a computer and so-called ‘unplugged’ approaches should not be overlooked in developing children’s approaches to problem solving (see Chapters 2 and 10 for more on unplugged approaches). This chapter will explore how and where Computational Thinking can already be seen in the classroom and how it can be applied to different subject areas. It should be noted that strong cross-curricular links between computing and other subjects have also been explored elsewhere in this book, for example, how floor robots can be used in geography and mathematics in Chapter 3...

  • The SAGE Encyclopedia of Out-of-School Learning

    ...Irene A. Lee Irene A. Lee Lee, Fred Martin Fred Martin Martin, Computational Thinking Computational Thinking 117 120 Computational Thinking Computational Thinking is the human ability to formulate problems so that their solutions can be represented as computational steps or algorithms to be carried out by a computer. The term was popularized by computer scientist Jeannette Wing (2006) who said that “Computational Thinking involves solving problems, designing systems, and understanding human behavior, by drawing on the concepts fundamental to computer science” (p. 33). Computational Thinking involves processing information and performing tasks systematically and efficiently. Different researchers and organizations have different definitions of Computational Thinking. In addition to the Wing definition, the International Society for Technology in Education, in partnership with the Computer Science Teachers Association, produced an “operational definition” of Computational Thinking intended for a lay audience. It describes Computational Thinking as a problem-solving process that includes a set of seven practices ranging from organizing data to automating solutions. The operational definition also laid out a set of dispositions important to Computational Thinking. Karen Brennan and Mitch Resnick described Computational Thinking in terms of a set of concepts, practices, and perspectives that included software development concerns such as debugging, reusing, and remixing as well as sharing one’s creations with a broader community. In its definition of Computational Thinking, Google added a set of techniques widely used in its products, such as pattern recognition and pattern generalization. Exploring computer science’s definition of computational thinking incorporated the analysis of one’s own and other’s computational artifacts...

  • Fostering Computational Thinking Among Underrepresented Students in STEM
    eBook - ePub

    Fostering Computational Thinking Among Underrepresented Students in STEM

    Strategies for Supporting Racially Equitable Computing

    • Jacqueline Leonard, Jakita Thomas, Roni Ellington, Monica Mitchell, Olatokunbo Fashola(Authors)
    • 2021(Publication Date)
    • Routledge
      (Publisher)

    ...Yet, others emphasize the importance of using a computer to solve problems (Barr & Stephenson, 2011). Moreover, Sengupta et al. (2013) contend that CT allows students to deal with abstractions, which allow children to receive inputs that lead to executing a series of steps that produce outputs to satisfy a specific goal (Wing, 2006). However, CT goes beyond technology and computer science and is applicable to a variety of activities including computer modeling, robotics, and game design (Leonard et al., 2016, 2018 ; Sengupta et al., 2013 ; Sullivan & Heffernan, 2016). Defining Computational Thinking Wing (2006) was the first to propose a general definition of Computational Thinking, which she described as “solving problems, designing systems, and understanding human behavior by drawing on the concepts fundamental to computer science” (p. 33). She later defined Computational Thinking as “the thought processes involved in formulating problems and solutions so that the solutions are represented in a form that can be effectively carried out by an information-processing agent” (Wing, 2010, p. 1). With many scholars and educators beginning to recognize CT as a competence domain (Yadav et al., 2017), several other definitions of CT have emerged (Grover & Pea, 2013 ; Wing, 2008). One of the simplest definitions describes CT as formulating problems in such a manner that they can be solved by “computational steps and algorithms” (Aho, 2010, as cited in Grover & Pea, 2013)...

  • Coding as a Playground
    eBook - ePub

    Coding as a Playground

    Programming and Computational Thinking in the Early Childhood Classroom

    • Marina Umaschi Bers(Author)
    • 2017(Publication Date)
    • Routledge
      (Publisher)

    ...In the process of using the language of computation (LOGO, ScratchJr, KIBO, or any other programming language), one learns to think in different ways. Seymour Papert’s Computational Thinking invol ved problem solving, but also the notion of expression. I call this the “Computational Thinking as expression” metaphor, as opposed to the more traditional “Computational Thinking as problem solving.” The notion of Computational Thinking encompasses a broad set of analytic and problem-solving skills, dispositions, habits, and approaches most often used in computer science, but that can serve everyone (Barr & Stephenson, 2011; International Society for Technology Education & The Computer Science Teachers Association, 2011; Lee et al., 2011). In 2006, Jeannette Wing’s influential article “Computational Thinkin g” appeared in the Commun ications of the ACM and caught the attention of many researchers, computer scientists, and educato rs across the U.S. Wing created quite a stir by arguing that Computational Thinking, a problem-solving skill set rooted in computer science, is a universally applicable skill that should be part of every child’s analytical ability (Wing, 2006). According to Wing (2006), Computational Thinking is defined as “solving problems, designing systems, and understanding human behavior, by drawing on the concepts fundamental to computer science” (p. 33). Computational Thinking includes a range of mental tools that are inherent to the field of computer science, including thinking recursively, using abstraction when figuring out a complex task, and using heuristic reasoning to discover a solution (Wing, 2006). Computational Thinking represents a type of analytical thinking that shares similarities with mathematical thinking (e.g., problem solving), engineering thinking (designing and evaluating processes), and scientific thinking (systematic analysis) (Bers, 2010)...

  • Computational Thinking in Education
    eBook - ePub

    Computational Thinking in Education

    A Pedagogical Perspective

    • Aman Yadav, Ulf Berthelsen, Aman Yadav, Ulf Dalvad Berthelsen(Authors)
    • 2021(Publication Date)
    • Routledge
      (Publisher)

    ...1 Computational Thinking A Professional and Historical Perspective Matti Tedre and Peter J. Denning DOI: 10.4324/9781003102991-1 The current Computational Thinking (CT) movement in computing education began in 2006 when Jeannette Wing declared that “Computational Thinking is a fundamental skill for everyone, not just for computer scientists” and that “everyone can benefit from thinking like a computer scientist” (Wing, 2006, 2010). Her declaration came at a time when everything was being digitized and people were finding themselves in a world where algorithms and computing machines made many decisions that affected their work and their lives every day. The unfamiliar logic of computing was bringing great benefits, such as connectivity, along with great worries, such as loss of jobs to automation. Wing called on educators to help everyone learn how computing works, how they can harness it in their own lives, and when they can trust it. This is not the first Computational Thinking movement. As early as 1960, educators who saw the computing revolution coming worked hard to bring computer literacy courses and then computer fluency courses into K-12 curricula, but they never got much traction at the scale of nations. In the 1980s, a comprehensive computational science movement emerged that declared CT as the thought processes behind a new, computational way of doing science. Whereas literacy and fluency were movements to teach people how to better use computers, the computational sciences declaration and then Wing’s declaration aimed to teach people how to think in order to understand computing and design computer programs. These declarations have resonated across the board. The current CT movement has had some noteworthy achievements. Numerous organizations, such as code.org, sprung up to propose K-12 curricula and run coding workshops for children...

  • Epistemological Approaches to Digital Learning in Educational Contexts
    • Linda Daniela(Author)
    • 2020(Publication Date)
    • Routledge
      (Publisher)

    ...Chapter 3 The role of algorithmic thinking development in the learning of elementary school pupils aged 10–13 Miroslava Černochová, Hasan Selcuk, and Milan Svoboda Introduction Over the last decade, a great deal of attention has been given to Computational Thinking (CT) by scholars worldwide. The concept of CT was used by Seymour Papert (1980), and since then (as highlighted by Grover & Pea, 2013), CT has been discussed by various scholars in respect of its definition, planning, and implementation in teaching and evaluation. CT can be seen as “taking an approach to solving problems, designing systems and understanding human behaviour that draws on concepts” (Wing, 2006, p. 33). Moreover, Weintrop et al. (2016, p. 127) defined CT in the context of mathematics and science education as “the form of a taxonomy consisting of four main categories: Data practices, modelling and simulation practices, computational problem-solving practices, and systems thinking practices”. Aho (2012, p. 832) described CT as “the thought process involved in formulating problems so their solutions can be represented as computational steps and algorithms”. In this study, our focus is concerned with algorithmic thinking (AT). Being an important part of Computational Thinking skill, AT can be defined as the ability to understand, implement, assess, and design algorithms to solve a range of problems. Algorithmic design as an outcome of AT can be understood as a process of “creating an ordered series of instructions for solving similar problems or for performing a task” (Hsu et al., 2018, p. 299). As stressed by Hromkovič and Lacher (2017, p. 4) already Euclid formulated algorithms in his ‘Elements’, among them being the famous Euclid’s algorithm. The term ‘algorithm’ is due back to al-Khwarizmi, who wrote a book about Indian digits around the year 825. Humankind tried to develop algorithms as long as anyone can remember...

  • Teaching the Primary Curriculum
    • Colin Forster, Rachel Eperjesi, Colin Forster, Rachel Eperjesi(Authors)
    • 2019(Publication Date)

    ...This suggests that we need to think like a computer to solve real world problems, breaking down a problem into small stages or looking for patterns. Computing at Schools (CAS) is a grass roots organisation which was set up to support and develop excellence in the teaching of computing in schools, with the Barefoot project developing resources specifically to support primary schools to teach computer science concepts. The Barefoot CAS Computing model of Computational Thinking (2014) (Figure 3.3) advocates six different concepts developed through five approaches to learning, to develop children’s thinking skills. It proposes that concepts of logic, evaluation, algorithms, patterns, decomposition and abstraction can be developed through tinkering, creating, debugging, persevering and collaborating. Figure 3.3 Computational Thinking poster Interpreting the terminology of Computational Thinking In Table 3.2, we have provided some clear definitions of terms, with some examples to further clarify meaning. In our opinion, the concepts outlined by Barefoot provide a good starting point for teachers new to the subject. You can see from Table 3.2 that many of the concepts, such as using logical reasoning, spotting patterns and evaluating outcomes, are already familiar from subjects such as mathematics and design and technology. These are also ideas that can be developed without the use of technology. For example, the writing of an algorithm might involve the everyday example of sequencing the instructions for making a recipe, for which precise amounts of ingredients are required to be used in a specific order if the outcome is to be successful...

  • Lessons in Teaching Computing in Primary Schools
    • James Bird, Helen Caldwell, Peter Mayne, James Bird, Helen Caldwell, Peter Mayne(Authors)
    • 2017(Publication Date)
    • Learning Matters
      (Publisher)

    ...Chapter 1 Algorithms and Computational Thinking in KS1 apply the fundamental principles of computer science Learning outcomes This chapter looks at how to develop pupils’ understanding of algorithms and Computational Thinking and how this may relate to the use of technology in the wider world. By the end of this chapter you should be able to: •    develop an understanding of the terms algorithm and Computational Thinking; •    develop an awareness of how Computational Thinking can be embedded in good primary school practice. Teachers’ Standards Working through this chapter will help you meet the following standards: 3a.   Have a secure knowledge of the relevant subject(s) and curriculum areas, foster and maintain pupils’ interest in the subject, and address misunderstandings. 4b.   Promote the love of learning and pupils’ intellectual curiosity. Links to the National Curriculum Pupils should learn to: •    understand what algorithms are and how they are implemented on digital devices; and that programs execute by following precise and unambiguous instructions; •    recognise common uses of technology beyond school. Introduction Although terminology is used for clarification, it can also be a hindrance to embracing new ideas. The terms algorithm and Computational Thinking are not new and don’t have to represent difficult concepts, but used in connection with young pupils for the first time they may cause some anxiety. The purpose of this chapter is to demystify these terms and consider how we can meet the National Curriculum Programme of Study requirement for pupils in Key Stage 1 (KS1) to understand what algorithms are and how they are implemented on digital devices; and that programs execute by following precise and unambiguous instructions (DfE, 2013). The focus is on meeting the statutory requirement in a manner which professionals would consider manageable, appropriate for the age range and embedded in good practice...