Computational Thinking And Cod

1 view
Skip to first unread message

Mohammed Huberty

unread,
Aug 5, 2024, 7:32:59 AM8/5/24
to mariteemig
Computationalthinking (CT) refers to the thought processes involved in formulating problems so their solutions can be represented as computational steps and algorithms.[1] In education, CT is a set of problem-solving methods that involve expressing problems and their solutions in ways that a computer could also execute.[2] It involves automation of processes, but also using computing to explore, analyze, and understand processes (natural and artificial).[3][4][5]

The history of computational thinking as a concept dates back at least to the 1950s but most ideas are much older.[6][3] Computational thinking involves ideas like abstraction, data representation, and logically organizing data, which are also prevalent in other kinds of thinking, such as scientific thinking, engineering thinking, systems thinking, design thinking, model-based thinking, and the like.[7] Neither the idea nor the term are recent: Preceded by terms like algorithmizing, procedural thinking, algorithmic thinking, and computational literacy[3] by computing pioneers like Alan Perlis and Donald Knuth, the term computational thinking was first used by Seymour Papert in 1980[8] and again in 1996.[9] Computational thinking can be used to algorithmically solve complicated problems of scale, and is often used to realize large improvements in efficiency.[10]


For the first ten years computational thinking was a US-centered movement, and still today that early focus is seen in the field's research.[12] The field's most cited articles and most cited people were active in the early US CT wave, and the field's most active researcher networks are US-based.[12] Dominated by US and European researchers, it is unclear to what extent can the field's predominantly Western body of research literature cater to the needs of students in other cultural groups.[12] An ongoing effort to globalize effective thinking skills in everyday life is emerging in the Prolog community, whose Prolog Education Committee, sponsored by the Association for Logic Programming[13] has the mission of "making Computational and Logical Thinking through Prolog and its successors a core subject in educational curricula and beyond, worldwide".[14]


The characteristics that define computational thinking are decomposition, pattern recognition / data representation, generalization/abstraction, and algorithms.[15][16] By decomposing a problem, identifying the variables involved using data representation, and creating algorithms, a generic solution results. The generic solution is a generalization or abstraction that can be used to solve a multitude of variations of the initial problem.


The four Cs of 21st-century learning are communication, critical thinking, collaboration, and creativity[citation needed]. The fifth C could be computational thinking which entails the capability to resolve problems algorithmically and logically. It includes tools that produce models and visualize data.[18] Grover describes how computational thinking is applicable across subjects beyond science, technology, engineering, and mathematics (STEM) which include the social sciences and language arts.


Carnegie Mellon University in Pittsburgh has a Center for Computational Thinking. The Center's major activity is conducting PROBEs or PROBlem-oriented Explorations. These PROBEs are experiments that apply novel computing concepts to problems to show the value of computational thinking. A PROBE experiment is generally a collaboration between a computer scientist and an expert in the field to be studied. The experiment typically runs for a year. In general, a PROBE will seek to find a solution for a broadly applicable problem and avoid narrowly focused issues. Some examples of PROBE experiments are optimal kidney transplant logistics and how to create drugs that do not breed drug-resistant viruses.[27]


The concept of computational thinking has been criticized as too vague, as it's rarely made clear how it is different from other forms of thought.[6][28] The inclination among computer scientists to force computational solutions upon other fields has been called "computational chauvinism".[29] Some computer scientists worry about the promotion of computational thinking as a substitute for a broader computer science education, as computational thinking represents just one small part of the field.[30][7] Others worry that the emphasis on computational thinking encourages computer scientists to think too narrowly about the problems they can solve, thus avoiding the social, ethical and environmental implications of the technology they create.[31][6] In addition, as nearly all CT research is done in the US and Europe, it is not certain how well those educational ideas work in other cultural contexts.[12]


A 2019 paper argues that the term "computational thinking" (CT) should be used mainly as a shorthand to convey the educational value of computer science, hence the need of teaching it in school.[32] The strategic goal is to have computer science recognized in school as an autonomous scientific subject more than trying to identify "body of knowledge" or "assessment methods" for CT. Particularly important is to stress the fact that the scientific novelty associated with CT is the shift from the "problem solving" of mathematics to the "having problem solved" of computer science. Without the "effective agent", who automatically executes the instructions received to solve the problem, there would be no computer science, but just mathematics. Another criticism in the same paper is that focusing on "problem solving" is too narrow, since "solving a problem is just an instance of a situation where one wants to reach a specified goal". The paper therefore generalizes the original definitions by Cuny, Snyder, and Wing[33] and Aho[1] as follows: "Computational thinking is the thought processes involved in modeling a situation and specifying the ways an information-processing agent can effectively operate within it to reach an externally specified (set of) goal(s)."


Many definitions of CT describe it only at skill level because the momentum behind its growth comes from its promise to boost STEM education. And, the latest movement in STEM education is based on suggestions (by learning theories) that we teach students experts' habits of mind. So, whether it is computational thinking, scientific thinking, or engineering thinking, the motivation is the same and the challenge is also the same: teaching experts' habits of mind to novices is inherently problematic because of the prerequisite content knowledge and practice skills needed to engage them in the same thinking processes as the experts. Only when we link the experts' habits of mind to fundamental cognitive processes can we then narrow their skill-sets down to more basic competencies that can be taught to novices. There have been only a few studies that actually address the cognitive essence of CT. Among those, Yasar (Communications of ACM, Vol. 61, No. 7, July 2018) [34] describes CT as thinking that is generated/facilitated by a computational device, be it biological or electronic. Accordingly, everyone employs CT, not just computer scientists, and it can be improved via education and experience.


Computational logic is an approach to computing that includes both computational thinking and logical thinking. It is based on a view of computing as the application of general-purpose logical reasoning to domain-specific knowledge expressed in logical terms.


Teaching materials for computational logic as a computer language for children were developed in the early 1980s.[35][36][37] University level texts for non-computing students were developed in the early 2010s.[38][39] More recently, a variety of new teaching materials have been developed to bridge the gap between STEM and non-STEM academic disciplines.[40][41][42]


Computational thinking is the thought processes involved in formulating problems and their solutions so that the solutions are represented in a form that can effectively be carried out by an information-processing agent.


Computational thinking enables you to bend computation to your needs. It is becoming the new literacy of the 21st century. Why should everyone learn a little computational thinking? Cuny, Snyder and I advocate these benefits [CunySnyderWing10]:


"Computational Thinking is the thought processes involved in formulating problems and their solutions so that the solutions are represented in a form that can be effectively carried out by an information-processing agent."


Computational thinking is a way of solving problems, designing systems, and understanding human behavior that draws on concepts fundamental to computer science. To flourish in today's world, computational thinking has to be a fundamental part of the way people think and understand the world.


Computational thinking means creating and making use of different levels of abstraction, to understand and solve problems more effectively.


Computational thinking means thinking algorithmically and with the ability to apply mathematical concepts such as induction to develop more efficient, fair, and secure solutions.


Computational thinking means understanding the consequences of scale, not only for reasons of efficiency but also for economic and social reasons.


Computational thinking makes it possible for transplant surgeons to realize that more lives can be saved by optimizing the exchange of organs among pools of donors and recipients. It enables new drug designs to be analyzed so that they are less likely to create drug-resistant strains of diseases. Artists, when given the tools to think and express themselves computationally, can create totally new modes of human experience. Users of the Internet, when empowered with computational thinking, can demystify privacy technologies and surf the web safely.


These and several other possibilities are being realized in the Center for Computational Thinking at Carnegie Mellon University through a collection of PROBlem-oriented Explorations. Working closely with Microsoft Research, PROBEs explore specific opportunities to demonstrate the power and value of computational thinking in a wide range of domains. Our vision is that computational thinking is for everyone, not just computer scientists. To see more, visit our PROBEs page .

3a8082e126
Reply all
Reply to author
Forward
0 new messages