ArticlePDF AvailableLiterature Review

Computational thinking and thinking about computing

The Royal Society
Philosophical Transactions A
Authors:

Abstract and Figures

Computational thinking will influence everyone in every field of endeavour. This vision poses a new educational challenge for our society, especially for our children. In thinking about computing, we need to be attuned to the three drivers of our field: science, technology and society. Accelerating technological advances and monumental societal demands force us to revisit the most basic scientific questions of computing.
Content may be subject to copyright.
Computational thinking and thinking
about computing
BYJEANNETTE M. WING*
Computer Science Department, Carnegie Mellon University,
Pittsburgh, PA 15213, USA
Computational thinking will influence everyone in every field of endeavour. This vision
poses a new educational challenge for our society, especially for our children. In thinking
about computing, we need to be attuned to the three drivers of our field: science,
technology and society. Accelerating technological advances and monumental societal
demands force us to revisit the most basic scientific questions of computing.
Keywords: computational thinking; abstraction; automation; computing;
computable; intelligence
1. Computational thinking
Computational thinking is taking an approach to solving problems, designing
systems and understanding human behaviour that draws on concepts fundamental
to computing
1
(Wing 2006).
Computational thinking is a kind of analytical thinking. It shares with
mathematical thinking in the general ways in which we might approach solving a
problem. It shares with engineering thinking in the general ways in which we
might approach designing and evaluating a large, complex system that operates
within the constraints of the real world. It shares with scientific thinking in the
general ways in which we might approach understanding computability,
intelligence, the mind and human behaviour.
(a)Computing: abstraction and automation
The essence of computational thinking is abstraction. In computing, we abstract
notions beyond the physical dimensions of time and space. Our abstractions are
extremely general because they are symbolic, where numeric abstractions are just a
special case.
In two ways, our abstractions tend to be richer and more complex than those in
the mathematical and physical sciences. First, our abstractions do not necessarily
enjoy the clean, elegant or easily definable algebraic properties of mathematical
Phil. Trans. R. Soc. A (2008) 366, 3717–3725
doi:10.1098/rsta.2008.0118
Published online 31 July 2008
One contribution of 19 to a Discussion Meeting Issue ‘From computers to ubiquitous computing,
by 2020’.
*wing@cs.cmu.edu
1
By ‘computing’ I mean very broadly the field encompassing computer science, computer
engineering, communications, information science and information technology.
3717 This journal is q2008 The Royal Society
abstractions, such as real numbers or sets, of the physical world. For example, a
stack of elements is a common abstract data type used in computing. We would not
think ‘to add’ two stacks as we would two integers. An algorithm is an abstraction
of a step-by-step procedure for taking input and producing some desired output.
What does it mean ‘to interleave’ two algorithms, perhaps for efficient parallel
processing? A programming language is an abstraction of a set of strings each of
which when interpreted effects some computation. What does it mean ‘to combine’
two programming languages? These kinds of combinators are themselves
abstractions that take careful thought, perhaps an entire research agenda, to
define. Second, because our abstractions are ultimately implemented to work
within the constraints of the physical world, we have to worry about edge cases and
failure cases. What happens when the disk is full or the server is not responding?
What happens when a program encounters at run-time an error that should have
been caught at compile time? How do we get a robot to move down a hallway
without bumping into people?
In working with rich abstractions, defining the ‘right’ abstraction is critical.
The abstraction process—deciding what details we need to highlight and what
details we can ignore—underlies computational thinking.
The abstraction process introduces layers. In computing, we work simul-
taneously with at least two, usually more, layers of abstraction: the layer of interest
and the layer below; or the layer of interest and the layer above. Well-defined
interfaces between layers enable us to build large, complex systems. Given the
application programming interface (API) of a software component, a user need not
know the details of the component’s implementation to know how to interact with
it, and an implementer need not know who all the component’s potential users
might be in order to implement it correctly. The layered architecture of the
Internet, in particular the ‘thin waist’ Internet protocol layer, supports both the
incorporation of new computing devices and networking technology at the bottom
and the addition of new, unforeseen applications at the top.
In working with layers of abstraction, we necessarily keep in mind the
relationship between each pair of layers, be it defined via an abstraction function,
a simulation relation, a transformation or a more general kind of mapping. We
use these mappings in showing the observable equivalence between an abstract
state machine and one of its possible refinements, in proving the correctness of an
implementation with respect to a specification and in compiling a program
written in a high-level language to more efficient machine code.
And so the nuts and bolts in computational thinking are defining abstractions,
working with multiple layers of abstraction and understanding the relationships
among the different layers. Abstractions are the ‘mental’ tools of computing.
The power of our ‘mental tools is amplified by the power of our metal’ tools.
Computing is the automation of our abstractions. We operate by mechanizing our
abstractions, abstraction layers and their relationships. Mechanization is possible
due to our precise and exacting notations and models. Automation implies the need
for some kind of computer to interpret the abstractions. The most obvious kind
of computer is a machine, i.e. a physical
2
device with processing, storage and
2
The obvious physical devices are the mechanical or electrical of today. I also mean to include the
physical devices of tomorrow, e.g. nano and quantum computers; and even the biological devices of
tomorrow, e.g. organic, DNA and molecular computers, as well (cf. §2a).
J. M. Wing3718
Phil. Trans. R. Soc. A (2008)
communication capabilities. Yes, a computer could be a machine, but more subtly it
could be a human. Humans process information; humans compute. In other words,
computational thinking does not require a machine. Moreover, when we consider the
combination of a human and a machine as a computer, we can exploit the combined
processing power of a human with that of a machine. For example, humans are still
better than machines at parsing and interpreting images; on the other hand,
machines are much better at executing certain kinds of instructions far more quickly
than humans and processing datasets far larger than a human can handle.
Operationally, computing is concerned with answering ‘How would I get a
computer to solve this problem?’ where the computer could be a machine, a human,
the combination of a machine and a human, or recursively, the combination (e.g. a
network) of such computers. Implicit in answering this question is our identifying
appropriate abstractions and choosing the appropriate kind of computer for the
task. Unfortunately, it is all too easy to answer this question by not thinking very
hard about defining the right abstraction and then choosing a machine with lots of
horsepower to solve the problem using brute force. Computational thinking can
offer more than this simple use of mechanical computers.
(b)Computational thinking everywhere
‘Computational thinking is influencing research in nearly all disciplines, both in
the sciences and the humanities’ (Bundy 2007). Evidence of computational
thinking’s influence on other fields abounds: computational thinking is transform-
ing statistics, where with machine learning the automation of Bayesian methods
and the use of probabilistic graphical models make it possible to identify patterns
and anomalies in voluminous datasets as diverse as astronomical maps, functional
magnetic resonance imaging scans, credit card purchases and grocery store receipts
(e.g. Machine Learning Department 2008). Computational thinking is transforming
biology, first with the shotgun sequencing algorithm accelerating our ability to
sequence the human genome, and now with our abstractions representing dynamic
processes found in nature, from the cell cycle to protein folding (e.g. Fisher &
Henzinger 2007). Computational thinking is transforming economics, spawning a
new field of computational microeconomics, with applications such as advertise-
ment placement, online auctions, reputation services and even finding optimal
donors for n-way kidney exchange (Abraham et al.2007).
In other fields, computational thinking is still at the stage of simple
computational thinking: spending days’ worth of machine cycles to solve
problems. Many sciences and engineering disciplines rely on enormous computer
simulations of mathematical models of physical processes found in nature.
Aerospace relies on being able to simulate an entire aircraft or space mission. The
geosciences dare to want to simulate the Earth, from its inner core to its surface
to the Sun. In the humanities and the arts, digital libraries of books, collections
and artefacts create opportunities through computational methods such as data
mining and data federation to discover new trends, patterns and links in our
understanding and appreciation of humankind.
Looking to the future, deeper computational thinking—through the choice of
cleverer or more sophisticated abstractions—may enable scientists and engineers
to model and analyse their systems on a scale orders of magnitude greater than
they are able to handle today. Through the use of abstraction layers, e.g.
3719
Computational thinking
Phil. Trans. R. Soc. A (2008)
hierarchical decomposition, we look forward to when we can: model systems at
multiple time scales and at multiple resolutions of the three space dimensions;
model the interactions of these many complex systems to identify conditions for
tipping points and emergent behaviour; increase the number of parameters and
sets of initial conditions in these models; play these models backwards and
forwards in time; and validate these models against ground truth.
Deeper computational thinking will help us not only to model more and more
complex systems, but also to analyse the massive amounts of data we collect and
generate. Through deployment of distributed sensor nets, routine use of
monitoring and surveillance systems, the prevalence of digital cameras on
mobile (cell) phones, digitizing the world’s information, running simulations of
models of complex systems, and so on, we will be collecting and generating more
and more data to analyse. It will be through computational thinking—
abstractions for representing and processing the data—that we will be able to
extract the knowledge buried within or spread throughout the data. There is an
open feedback loop: this knowledge, piquing our curiosity, will lead us to ask new
questions that require collection of more data; and this knowledge will help us to
fine-tune our simulation models, thereby generating even more data.
Vision no. 1. I envision that computational thinking will be instrumental to
new discovery and innovation in all fields of endeavour.
(c)Computational thinking for everyone
If computational thinking will be used everywhere, then it will touch everyone
directly or indirectly. This raises an educational challenge. If computational
thinking is added to the repertoire of thinking abilities, then how and when
should people learn this kind of thinking and how and when should we teach it?
Let us assume that the trend of using computational thinking in research in all
fields is already happening, thereby already influencing the training of graduate
students. Let us further assume that universities have already begun to
incorporate computational thinking in their undergraduate curricula, thereby
recognizing how the next generation will have to be able to think in order to
succeed in modern society. Thus, let us focus this question at the elementary
through high school levels of education. In fact, if we wanted to ensure a common
and solid basis of understanding and applying computational thinking for all,
then this learning should best be done in the early years of childhood.
I pose the following as a challenge to the computer science, learning sciences
and education communities.
Challenge no. 1. What are effective ways of learning (teaching) computational
thinking by (to) children?
This question raises even more fundamental questions:
What are the elemental concepts of computational thinking? Educators in
computing have answered and continue to answer this question by creating
courses, typically for first-year undergraduates, that focus on the principles
of computing rather than just on computer programming skills. As the field of
computing continues to mature, it is worth revisiting this question again, with a
specific focus on earlier years.
J. M. Wing3720
Phil. Trans. R. Soc. A (2008)
Moreover, it is worth revisiting this question in collaboration with scholars in
learning science and education. For example, what, if any, computational
thinking concepts are as innate to human cognition as is the mathematical
concept of numbers? Human vision is parallel processing. What tasks do we most
naturally do or learn to do in parallel versus sequentially? Children experience
notions of infinity and recursion through mathematics and language; naming and
teaching these fundamental concepts early on in formal learning settings would
provide powerful building blocks for computational thinking.
What would be an effective ordering of concepts in teaching children as their
learning ability progresses over the years? By analogy, we teach numbers to
children in kindergarten (when they are 5 years old), algebra in junior high (12
years old) and calculus in senior high (18 years old). There may be many possible
ways to structure the progression of computational thinking concepts; which is
the most effective for which kind of learner?
How best should we integrate the tool with teaching the concepts? Here and
henceforth, let ‘the tool’ mean the computing machine (a particular ‘metal’ tool
of §1a). Our field of computing is in a unique situation since not only are there
computational concepts to teach but also there is a tool to teach. This tool
provides some challenges and opportunities.
One challenge is that we do not want the tool to get in the way of
understanding the concepts. We also do not want people just to be able to use the
tool but not have learned the concepts (a case in point: using a calculator versus
understanding arithmetic). Worse, we do not want people to come away thinking
they understand the concepts because they are adept at using the tool. A second
challenge is that we want to track the learning of how to use the tool with the
order of learning of concepts. At what point do we introduce each of the powerful
capabilities of a computing machine? At what point do we expose children to the
intricacies of how the machine works? These questions are analogous to choosing
the right abstraction where now the criteria are defined by learning ability.
One opportunity is that we can use the tool to reinforce the concepts we teach.
Computing is cool: it is all about making abstractions come alive! Through
effective visualization and animation, even at early grades we can viscerally show
the difference between a polynomial-time algorithm and an exponential-time one
or show that a tree is a special kind of graph; in later grades through acquiring
programming skills, students can automate their own abstractions. Indeed, this
tool can be useful for reinforcing not just computational thinking concepts but
also concepts in other fields. A second opportunity is that most children today
are facile with the mechanics of using the tool and are not afraid to explore and
play with it. We can take advantage of the routine exposure children have to
computational devices at home and in school today.
Given this last observation, we should also explore informal as well as
formal learning. Learning takes place in many ways and outside the classroom:
children teach each other; learn from parents and family; learn at home, in
museums and in libraries; and learn through hobbies, surfing the Web and
life experiences.
Vision no. 2. I envision that computational thinking will be an integral part of
childhood education.
3721
Computational thinking
Phil. Trans. R. Soc. A (2008)
Caveat. There are many cultural, economic, political and social barriers in realiz-
ing this vision, especially in countries where the education system is not centrally
controlled. Striving towards this vision could still yield worthwhile benefits.
2. Thinking about computing
The field of computing is driven by scientific questions, technological innovation
and societal demands. I remind us of this point for two reasons. First, in our field,
we are often so swept up by our technological advances or societal expectations
that we forget that there are deep scientific questions that underlie our field.
Second, for others outside of computing, it is important to explain that the
weight of each, and moreover the combination of our three drivers—science,
technology and society—make our field unique, indeed distinctive from other
sciences, mathematics and engineering. Why not celebrate this distinction?
Moreover, as shown by the bidirectional arrows in figure 1, there is wonderful
interplay—push and pull—among these three drivers: in the usual loop, scientific
discovery feeds technological innovation, which feeds new societal applications;
in the reverse direction, new technology inspires new creative societal uses, which
may demand new scientific discovery. An example of how society demands new
science: the spread of our own computing and communications machinery, from
mega-data centres of tens of thousands of servers to billions of mobile phones,
requires new advances in science to use energy more efficiently. An example of
how society demands new technology: the desire for higher fidelity and more
realistic virtual environments is straining our network capability for real-time
simultaneous transmission of multiple multimedia (audio, video and text) data
streams. Another example of technology pull is how a fundamental social desire
to express one’s identity and connect with likeminded others led to the unantici-
pated and rapid rise of social networks, such as Facebook, MySpace and
YouTube, which in turn added a new industry to our economy.
Our field most naturally anticipates technology trends and embraces the
demands and expectations of society, so let us start with the technology drivers,
then societal, and then scientific.
(a)Technology drivers
Beginning at the computing substrate level, we are predicting the end of
Moore’s law within the next 10–15 years (Engadget 2006). The immediate
consequence for silicon-based technology is the production of multi-core
technologyscience
society
Figure 1. Three drivers of computing: science, technology and society.
J. M. Wing3722
Phil. Trans. R. Soc. A (2008)
architecture machines; the challenge is understanding how to program them to
use their parallel processing capability effectively.
Beyond silicon, we look at nanocomputing, biocomputing and even quantum
computing. In some sense they have already arrived. Nano is here: IBM (2006)
announced that its researchers had built the first complete integrated circuit
around a single carbon nanotube molecule. Bio is here: Adleman (1994) solved
the seven-point Hamiltonian path problem with DNA computing; Benenson et al.
(2004) described in Nature the construction of a DNA computer. We are now
building molecular machines. Quantum is coming? The Swiss (Messmer 2007)
use quantum cryptography to secure ballots in their elections. The design of
nanocomputers and bio-inspired computers must already take into consideration
quantum effects (e.g. Heller et al. 2005).
At the device level, Strukov et al.(2008)announced that they can create a
memristor (Chua 1971), the missing fourth element along with the resistor,
capacitor and inductor. At larger scales, we see a growing use of mobile phones,
radio frequency identification tags, sensors, actuators and robots. Our automobiles
are laced with embedded computers: a BMW is ‘now actually a network of
computers’ (Economist 2007).
In terms of data, we are drowning in data (cf. §1b). Sensors are everywhere,
storage is cheap and we are in a constant state of information overload.
In terms of communication, Web 3.0 or the Semantic Web is an active area of
research. We will see more sophisticated virtual worlds; Second Life is today’s
Mosaic. The scientists and engineers of tomorrow will conduct their work
through virtual organizations, facilitating international collaboration.
In terms of far-reaching technological machines, people aspire to build machines
that model the human brain. The IBM and EPFL’s Blue Brain Project (2005) aims
to create a biologically accurate, functional model of the brain. The start-up
company Numenta (2005) is building a software platform for intelligent computing
modelled after the human neocortex.
These are just a few technology trends of today; it will be interesting to read this
section of this paper in 10 years to see where we were and how far we will have gone.
(b)Societal drivers
The success of our information technology, including computers and communi-
cations, has raised society’s expectations of us. People now demand availability,
24 hours per day, every day, 100 per cent reliability, 100 per cent connectivity,
instantaneous response, the ability to store anything and everything forever, andthe
ability for anyone to access anything from anywhere at any time.
The classes of users of our technology are not limited to scientists and
engineers. Rather, our users are young and old, able and disabled, rich and poor,
literate and illiterate.
Our technology must also support a range in the number of users: from
individual to groups to populations to the global society. Individuals want highly
personalized devices and services; search companies realize this desire by
tracking our queries and personalizing the advertisements we see. Cliques of
friends lead to larger acquaintance networks such as LinkedIn or social networks
such as Facebook. Different populations may use information and networking
technology to preserve their cultural heritage.
3723
Computational thinking
Phil. Trans. R. Soc. A (2008)
The Internet and the World Wide Web together is a great equalizer. On the other
hand, there remain scientific and technical challenges regarding accountability,
anonymity, identity management and privacy.
Challenge no. 2. How do we make our technology and the wealth of our
applications accessible to all? How do we balance openness with privacy?
(c)Science drivers
Wing (2008) presented five ‘deep questions in computing’, as a way to remind
ourselves that there are scientific challenges that underlie our individual research
pursuits or innovations in technology. I repeat this set (i.e. no ordering implied)
of questions for the sake of completeness in this paper. This set is meant to be a
starting point, with new questions added by the entire community.
Does P equal NP?
What is computable?
What is intelligence?
What is information?
(How) can we build complex systems simply?
Closing question. Given (i) the philosophy of §1a, which says that computa-
tional thinking is informed by our desire to automate abstractions, where the
computer can be human and/or machine, and (ii) the technological trends
outlined in §2a, which test the adequacy of Shannon’s information theory and the
Turing machine as the fundamental model of computation, we might even ask
the most basic question of all: what is a computer?
I thank the many people who read my Communications of the ACM March 2006 viewpoint or
heard me speak about computational thinking. The outpouring of support from everyone has been
gratifying. I also thank my colleagues at Carnegie Mellon and Microsoft Research who early on
supported my vision to make computational thinking commonplace, and my colleagues at the
National Science Foundation who have helped sharpen and deepen the ideas behind this vision.
This article was based on work partially supported by the National Science Foundation, while
working at the Foundation. Any opinion, finding and conclusions or recommendations expressed
in this material are those of the author and do not necessarily reflect the views of the National
Science Foundation.
References
Abraham, D., Blum, A. & Sandholm, T. 2007 Clearing algorithms for barter exchange markets:
enabling nationwide kidney exchanges. In Proc. 8th ACM Conf. on Electronic Commerce,
pp. 295–304. New York, NY: Association for Computing Machinery.
Adleman, L. M. 1994 Molecular computation of solutions to combinatorial problems. Science 266,
1021–1024. (doi:10.1126/science.7973651)
Benenson, Y., Gil, B., Ben-Dor, U., Adar, R. & Shapiro, E. 2004 An autonomous molecular
computer for logical control of gene expression. Nature 429, 423–429. (doi:10.1038/nature02551)
Blue Brain Project 2005 See http://bluebrain.epfl.ch/.
Bundy, A. 2007 Computational thinking is pervasive. J. Scient. Pract. Comput. 1, 67–69.
Chua, L. 1971 Memristor—the missing circuit element. IEEE Trans. Circuit Theory 18, 507–519.
J. M. Wing3724
Phil. Trans. R. Soc. A (2008)
Economist 2007 Quote from R. Achatz, Seimens, from ‘Revving up’. The Economist, 11 October
2007.
Engadget 2006 See http://www.engadget.com/2007/09/19/gordon-moore-predicts-end-to-moores-
law-in-10-years/.
Fisher, J. & Henzinger, T. A. 2007 Executable cell biology. Nat. Biotechnol. 25, 1239–1249. (doi:10.
1038/nbt1356)
Heller, M. J., Sullivan, B. & Dehling, D. 2005 Fabrication of photonic transfer DNA–quantum dot
nanostructures. In Technical Proc. 2005 NSTI Nanotechnology Conference and Trade Show,
vol. 1, ch. 12, pp. 769–772.
IBM 2006 See http://domino.watson.ibm.com/comm/pr.nsf/pages/news.20060324_carbonnano-
tube.html.
Machine Learning Department 2008 Research projects home page, Carnegie Mellon University. See
http://www.ml.cmu.edu/research/index.html.
Messmer, E. 2007 Quantum cryptography to secure ballots in Swiss election. Network World,11
October 2007. See http://www.networkworld.com/news/2007/101007-quantum-cryptography-
secure-ballots.html.
Numenta 2005 See http://www.numenta.com.
Strukov, D. B., Snider, G. S., Stewart, D. R. & Williams, R. S. 2008 The missing memristor found.
Nature 453, 80–83. (doi:10.1038/nature06932)
Wing, J. M. 2006 Computational thinking. Commun. ACM 49, 33–35.
Wing, J. M. 2008 Five deep questions in computing. Commun. ACM 51, 58–60. (doi:10.1145/
1327452.1327479)
3725Computational thinking
Phil. Trans. R. Soc. A (2008)
... They are becoming core skills emerging citizens should acquire (Barr & Stephenson, 2011). Some scholars called on the research fields to cultivate them and develop corresponding pedagogy curriculums in primary and secondary school education (Vidergor, 2018;Voogt & Roblin, 2012;Wing, 2006Wing, , 2008Wing, , 2011. Meanwhile, several practical teaching activities have been implemented to help students improve their computational thinking skills (Jou et al., 2023;Wang, 2023;Li et al., 2023). ...
... Computational thinking is defined as a way of thinking like computer science, which includes sampling, design, algorithmic design, and other thought processes (Wing 2006(Wing , 2008. Later, Kalelioğlu (2015) described computational thinking as a psychological skill from a psychological perspective. ...
... Although computational thinking skills can be viewed as a component of a broader digital literacy that contains ICT literacy (information, internet, and computer literacy) (Yadav et al., 2017), some authors emphasize that computer literacy is distinct from computational thinking skills (Wing, 2006(Wing, , 2008(Wing, , 2011. Since computational thinking skills are designed to express an issue in a form that the computer can parse (Israel et al., 2015). ...
Article
Full-text available
Computational thinking skills as core skills for emerging citizens are receiving great attention from scholars and educators. Various measures have been taken to improve students’ computational thinking skills. Among these measures, the smart classroom, as a technology-enhanced learning environment, plays an important role in cultivating students’ computational thinking skills. This study aims to explore the relationship between Information and Communications Technology (ICT literacy) and secondary school students’ computational thinking skills in smart classroom environments. This study adopts clustered sampling approach to select 351 students from 8 secondary schools in H Province of China as a valid sample. This study uses questionnaire survey to collect data, which mainly includes two scales, ICT literacy and computational thinking skills. Factor analysis and Structural Equation Modeling (SEM) were adopted to analyze this survey data. The results showed that ICT literacy has a significant positive impact on secondary school students’ computational thinking skills. From the calculation results of the model, the three sub-components of ICT literacy have different impacts on secondary school students’ computational thinking with internet literacy being the most important component, followed by computer literacy and information literacy. Given this interweaving of ICT literacy and computational thinking skills, it is conceivable to state that developing students’ ICT literacy could play a significant role in ensuring that appropriate measures are taken to improve computational thinking skills. The most effective strategy to cultivate students’ computational thinking skills is to improve students’ ICT literacy and encourage teachers to support the integrating of ICT into curricula.
... It entails solving problems, building systems, and comprehending human behaviour using core computer science ideas. CT is a kind of analytical thinking that is comparable to engineering thinking in its approach to a project (Wing, 2008). Later on, CT is considered an applied term, useful to describe the increased attention given to the development of children's knowledge of computational problem-solving, algorithmic thinking and coding (Dagienė et al., 2022). ...
... Computational thinking will influence the generations in the digital age, as it can be found in various fields of activity, which highlights a new educational challenge for the societies of the world. In this respect, programming education is needed from the earliest years of life (Wing, 2008). ...
Article
Full-text available
Keywords: computational thinking, innovation in education, educational robotics, future teachers, primary and preschool education In an increasingly digitised society, the development of computational thinking has become essential for everyone. Computational thinking is defined as a process of breaking down a problem into steps that are simple enough to understand, identifying solutions that can lead to automation. New generations should have the opportunity to develop this skill from early childhood, so future teachers need to develop the skills to create innovative learning contexts. This study explores the need for initial training of students majoring in elementary and early childhood education to create learning contexts that facilitate the development of students' computational thinking. Both quantitative and qualitative data collection methods were used to identify future teachers' perceptions of the need for initial student training to build the skills required to design learning settings that aid the advancement of computational thinking in toddlers and students. In terms of qualitative methods, the focus group method was used, discussing with students based on the questions How would you describe the concept of computational thinking? Can computational thinking be included in the teaching process? What types of activities could be carried out? As quantitative methods of data collection, a questionnaire survey was used, applying a questionnaire consisting of 24 items. The results showed that the introduction of a course based on computational thinking can significantly influence the way future teachers teach.
... • Com base nas configurações de chuva, podemos antecipar a possibilidade de chuva. A abstração se apresenta como uma das ferramentas mais importantes do PC, ela corresponde a capacidade de extrair informações relevantes de contextos genéricos, sendo que é possível apresentar essa representação abstrata dos conceitos de maneira compreensível através da codificação, que é escrever um processo de maneira que possa ser executável por um computador (Wing, 2008;Gadanidis, 2017;Sawaya, 1999 • Na escrita de perguntas, ...
Thesis
Full-text available
This dissertation presents an in-depth analysis of the creation of digital games and robotic device design, conducted by high school students with the aim of promoting relief from Parkinson's disease symptoms. The research aims to discern the impact of these innovative activities on enhancing Computational Thinking. The methodology adopted involves the observation and analysis of three distinct projects, each incorporating concepts, practices, and perspectives of Computational Thinking as outlined by Resnick (2012). These projects not only fostered students' engagement with fundamental computing principles but also allowed the integration of interdisciplinary knowledge, showcasing the potential of educational technology beyond the classroom. Through a qualitative approach, collected data revealed students' ability to understand and apply Computational Thinking in practical contexts, contributing to the development of crucial skills such as creativity, collaboration, and problem-solving. Consequently, this study not only confirmed the relevance of Computational Thinking in contemporary education but also highlighted its applicability in creating innovative solutions for real challenges in the healthcare field.
... In facing the explosion of technology in the virtual environment produced by the Internet and social media, the challenge for individuals is to choose o modality to organize the language and the mind. In the wake of this technologically induced uncertainty, business schools, civil society organizations and networks (NGOs), universities, governments, and policymakers have been promoting "digitalization" on the curriculum, alongside skills such as "computational thinking" ( [43], p. 223). However, efforts to instill the participants with motivation, to increase their involvement, or even to unlock their imagination and inspiration to produce and exchange ideas regarding the project design and strategies of implementation have proved to be really challenging [44][45][46]. ...
Chapter
Full-text available
Multilingualism is a European priority in the field of projects and programs. Netherlands Business Academy has designed and implemented numerous mini MBA programs in executive education and lifelong learning. Over the last decade, Business and Leadership programs for professionals in accountancy, banking, corporations, insurance, cultural and educational sectors, as well as for doctors and tourism entrepreneurs, have been among the most successful. These programs benefit from high-class knowledge within a network of partner universities across Europe, Asia, and South America. Communication during project collaboration requires cultural and linguistic adaptation to the target language, as the original conceptualization of meaning was in Dutch, translated into English, and then further into other languages. Language, being a depository of cultural memory, encodes concepts and preserves cultural mindsets, particularly through collocations and phrases. This chapter aims to share multilingual experiences and offer solutions for translating business and cultural concepts effectively.
Article
Bu çalışmada; bilgi işlemsel düşünme kavramının gelişim süreçleri ve eğitime yansımaları incelenmiştir. Derleme yöntemi kullanılarak gerçekleştirilen bu inceleme çalışması; kavramın ortaya çıkışından günümüzün eğitim perspektifinde temel bir beceri olarak kabul edilmesine kadar ortaya konan başlıca çalışmaları sentezleyerek kavrama ilişkin bir bakış açısı oluşturmaktadır. Teknoloji öğretimine yeni bir bakış açısı getiren ve bunu insanın akıl yürütme sistemiyle açıklayan bilgi işlemsel düşünme kavramı, eğitimin tüm dallarına etki eden yeni bir yöntem sunmaktadır. Aynı zamanda bilgi işlemsel düşünme kavramıyla bütünleştirilen beceri setinin dünyanın farklı ülkelerinde eğitim ortamlarına ve uygulamalarına yansımaların üzerinde durularak, öğrencilerin sahip olması beklenen becerileri planlarken dikkate değer önemine de vurgu yapılmaktadır.
Article
Full-text available
In recent years, when computational thinking (CT) has become increasingly important, utilizing machine learning (ML) techniques provides a revolutionary method for comprehending and improving cognitive skills for young students. However, few studies deepen the process of learning ML and CT. This exploratory study aims to investigate the impact of ML activities on the CT skills of secondary school students. The participants consisted of 20 students enrolled in the 5th grade at a public secondary school. Data from interviews and screen recordings were analyzed and scored using a rubric developed by the researchers. The results indicated that the activities positively contributed to the development of abstraction, decomposition, algorithm design, and pattern recognition dimensions of CT. The study’s findings are noteworthy because they show how ML differs from traditional approaches to teaching CT in terms of concepts, learning paths, and problem-solving techniques. Both the practical application of ML and the educational goal of advancing CT to make it appealing and informative for educators who are interested in integrating ML in computer science education for young students are also included. We hope that the findings of this study will assist in designing and implementing ML activities for young students.
Chapter
Abstract The digitization of society impacts not only professional and private life, but also education. For the case of mathematics education, the question is how curricula may benefit from digital technology, and how digitization affects curricu- lum policies. To address these questions, we distinguish the intended, the implemented, and the attained curriculum. For the intended curriculum, we claim that digital technology continues to challenge traditional curriculum content, and we make a plea for more attention to data science, computational thinking, modeling, and simulation. Concerning the implemented curriculum, we highlight the need for teacher professional development and collaboration in designing and implementing digital curriculum resources. To assess the attained curriculum, we describe how technological constraints still may hinder the digital assessment of skills beyond the basic ones, and discuss what technological features platforms for digital assessment of mathematics learning need.
Article
Full-text available
This research aims to develop android-based instructional media to build computational thinking skill for High School students using the ADDIE Model. Computational thinking is studied in informatics subjects. The development product has gained an expert feasibility assessment and tested on students. The research instruments are questionnaires and test. Experts include content experts, instructional media experts, and instructional design experts. Trials to students consist of one-on-one evaluation, small group evaluation and tryout or classroom. The results of the assessment of experts show that the product is very feasible to use as instructional media. Small group evaluation and tryout at classroom shown that the product is categorized as very feasible to be used as multimedia to develop computational thinking. The effectiveness of product development is measured by pretest and posttest. The effectiveness test results show a t-test value of -14.162 with a significance level of 0.000 (p value < 0.05), meaning that there is a difference in the average value of the pretest and posttest. Thus, the use of C-Think as an instructional media is effectively to improve computational thinking skills of high school students. Highlights: Development Process: Utilizing the ADDIE Model ensures systematic development of instructional media for effective learning outcomes. Expert Evaluation: Expert feasibility assessment validates the quality and appropriateness of the developed instructional media. Effectiveness Testing: Pretest-posttest analysis demonstrates significant improvement in computational thinking skills among high school students using the developed Android-based instructional media. Keywords: Computational Thinking, Informatic Subject, Media Android-Based
Article
Full-text available
Digital citizenship is the citizenship of the algorithmized, datified, connected, sensorized world of metaverses, multiverses, big data. It is the expression of a new type of social architecture, constituted reticularly, by the continuous connectivity between humans and non-humans. An AtoBit, a symbiotic connection that enhances the emergence of a new ecology made up of people, data, algorithms, sensors, forests, climate, viruses, cities. This connection challenges us to a new cognitive policy in the Educational field. The article presents the concept of Digital Citizenship and discusses ways of knowing and producing knowledge related to the development of computational thinking in K-12 Education. Its objective is to understand how computational thinking is potentiated and produced in the city. As a research method, it uses the cartographic research-intervention method for data production and analysis. The experiences in the city develop from inventive, sympoietic, interventionist and gamified pedagogical practices. The results are based on elements present in reticular and connective epistemologies, in inventive cognition, and the concepts of transorganic connective act, transubstantiation and atopic inhabiting. Such results indicate that computational thinking is being potentiated in the co-engineering between human and non-human entities, in a perspective of citizen OnLIFE Education, contributing to its interdisciplinary and transversal understanding, as well as the community value. These results point to the emergence of an ecological cognitive policy in education, implying rethinking the curricula and teacher development. Keywords: Citizenship Education; Computational Thinking; City; Innovation
Article
Full-text available
Various aspects of computational thinking, which builds on the power and limits of computing processes, whether they are executed by a human or by a machine, are discussed. Computational methods and models are helping to solve problems, design systems, and understand human behavior, by drawing on concepts fundamental to computer science (CS). Computational thinking (CT) is using abstraction and decomposition when attacking a large complex task or designing a large complex systems. CT is the way of thinking in terms of prevention, protection, and recovery from worst-case scenarios through redundancy, damage containment, and error correction. CT is using heuristic reasoning to discover a solution and using massive amount of data to speed up computation. CT is a futuristic vision to guide computer science educators, researchers, and practitioners to change society's image of the computer science field.
Article
Full-text available
Even if they seem unanswerable, just trying to answer them will advance the field's scientific foundations and help engineer the systems we can only imagine.
Article
The fabrication of viable linear DNA photonic/electronic transfer nanostructures is an important prerequisite for the subsequent self-assembly into higher-order 2D/3D devices, structures and materials (high density memory, photonic antennas, nanoscale "fiber optics", nanocomputers, nano-sensors etc.). Unfortunately, it is very difficult to maintain the self-assembling and self-recognition properties of derivatized molecules such as biotin functionalized DNA sequences, when attempting to further derivatize the structure with multiply functionalized nanoparticles (streptavidin-quantum dots, gold nanoparticles, fluorescent polymer nanoparticles). Generally, overwhelming intra-and intermolecular crosslinking reactions prevent the formation of viable linear structures. Our goal is the development of nanofabrication techniques which will allow quantum dot functionalized linear DNA chains to be constructed without the need for complex chemical blocking group procedures.
Conference Paper
In barter-exchange markets, agents seek to swap their items with one another, in order to improve their own utilities. These swaps consist of cycles of agents, with each agent receiving the item of the next agent in the cycle. We fo- cus mainly on the upcoming national kidney-exchange mar- ket, where patients with kidney disease can obtain compat- ible donors by swapping their own willing but incompatible donors. With over 70,000 patients already waiting for a cadaver kidney in the US, this market is seen as the only ethical way to significantly reduce the 4,000 deaths per year attributed to kidney disease. The clearing problem involves finding a social welfare max- imizing exchange when the maximum length of a cycle is fixed. Long cycles are forbidden, since, for incentive reasons, all transplants in a cycle must be performed simultaneously. Also, in barter-exchanges generally, more agents are affected if one drops out of a longer cycle. We prove that the clearing problem with this cycle-length constraint is NP-hard. Solv- ing it exactly is one of the main challenges in establishing a national kidney exchange. We present the first algorithm capable of clearing these markets on a nationwide scale. The key is incremental prob- lem formulation. We adapt two paradigms for the task: constraint generation and column generation. For each, we develop techniques that dramatically improve both runtime and memory usage. We conclude that column generation scales drastically better than constraint generation. Our al- gorithm also supports several generalizations, as demanded by real-world kidney exchanges. Our algorithm replaced CPLEX as the clearing algorithm of the Alliance for Paired Donation, one of the leading kid- ney exchanges. The match runs are conducted every two weeks and transplants based on our optimizations have al- ready been conducted.
Article
Early biomolecular computer research focused on laboratory-scale, human-operated computers for complex computational problems. Recently, simple molecular-scale autonomous programmable computers were demonstrated allowing both input and output information to be in molecular form. Such computers, using biological molecules as input data and biologically active molecules as outputs, could produce a system for 'logical' control of biological processes. Here we describe an autonomous biomolecular computer that, at least in vitro, logically analyses the levels of messenger RNA species, and in response produces a molecule capable of affecting levels of gene expression. The computer operates at a concentration of close to a trillion computers per microlitre and consists of three programmable modules: a computation module, that is, a stochastic molecular automaton; an input module, by which specific mRNA levels or point mutations regulate software molecule concentrations, and hence automaton transition probabilities; and an output module, capable of controlled release of a short single-stranded DNA molecule. This approach might be applied in vivo to biochemical sensing, genetic engineering and even medical diagnosis and treatment. As a proof of principle we programmed the computer to identify and analyse mRNA of disease-related genes associated with models of small-cell lung cancer and prostate cancer, and to produce a single-stranded DNA molecule modelled after an anticancer drug.
Article
Computational modeling of biological systems is becoming increasingly important in efforts to better understand complex biological behaviors. In this review, we distinguish between two types of biological models--mathematical and computational--which differ in their representations of biological phenomena. We call the approach of constructing computational models of biological systems 'executable biology', as it focuses on the design of executable computer algorithms that mimic biological phenomena. We survey the main modeling efforts in this direction, emphasize the applicability and benefits of executable models in biological research and highlight some of the challenges that executable biology poses for biology and computer science. We claim that for executable biology to reach its full potential as a mainstream biological technique, formal and algorithmic approaches must be integrated into biological research. This will drive biology toward a more precise engineering discipline.
Article
Anyone who ever took an electronics laboratory class will be familiar with the fundamental passive circuit elements: the resistor, the capacitor and the inductor. However, in 1971 Leon Chua reasoned from symmetry arguments that there should be a fourth fundamental element, which he called a memristor (short for memory resistor). Although he showed that such an element has many interesting and valuable circuit properties, until now no one has presented either a useful physical model or an example of a memristor. Here we show, using a simple analytical example, that memristance arises naturally in nanoscale systems in which solid-state electronic and ionic transport are coupled under an external bias voltage. These results serve as the foundation for understanding a wide range of hysteretic current-voltage behaviour observed in many nanoscale electronic devices that involve the motion of charged atomic or molecular species, in particular certain titanium dioxide cross-point switches.
Article
A new two-terminal circuit element-called the memristorcharacterized by a relationship between the charge q(t)equiv int_{-infty}^{t} i(tau) d tau and the flux-linkage varphi(t)equiv int_{- infty}^{t} v(tau) d tau is introduced as the fourth basic circuit element. An electromagnetic field interpretation of this relationship in terms of a quasi-static expansion of Maxwell's equations is presented. Many circuit-theoretic properties of memistors are derived. It is shown that this element exhibits some peculiar behavior different from that exhibited by resistors, inductors, or capacitors. These properties lead to a number of unique applications which cannot be realized with RLC networks alone. Although a physical memristor device without internal power supply has not yet been discovered, operational laboratory models have been built with the help of active circuits. Experimental results are presented to demonstrate the properties and potential applications of memristors.