Computing Education
   HOME

TheInfoList



OR:

Computer science education or computing education is the field of
teaching Teaching is the practice implemented by a ''teacher'' aimed at transmitting skills (knowledge, know-how, and interpersonal skills) to a learner, a student, or any other audience in the of an educational institution. Teaching is closely related ...
and
learning Learning is the process of acquiring new understanding, knowledge, behaviors, skills, value (personal and cultural), values, Attitude (psychology), attitudes, and preferences. The ability to learn is possessed by humans, non-human animals, and ...
the discipline of
computer science Computer science is the study of computation, information, and automation. Computer science spans Theoretical computer science, theoretical disciplines (such as algorithms, theory of computation, and information theory) to Applied science, ...
, and
computational thinking Computational thinking (CT) refers to the thought processes involved in formulating problems so their solutions can be represented as computational steps and algorithms. In education, CT is a set of problem-solving methods that involve expressin ...
. The field of computer science education encompasses a wide range of topics, from basic programming skills to advanced algorithm design and data analysis. It is a rapidly growing field that is essential to preparing students for careers in the technology industry and other fields that require computational skills. Computer science education is essential to preparing students for the 21st century workforce. As technology becomes increasingly integrated into all aspects of society, the demand for skilled computer scientists is growing. According to the Bureau of Labor Statistics, employment of computer and information technology occupations is projected to "grow 21 percent from 2021 to 2031", much faster than the average for all occupations. In addition to preparing students for careers in the technology industry, computer science education also promotes computational thinking skills, which are valuable in many fields, including business, healthcare, and education. By learning to think algorithmically and solve problems systematically, students can become more effective problem solvers and critical thinkers.


Background

In the early days of computer programming, there wasn't really a need for setting up any kind of education system, as the only people working with computers at the time were early scientists and mathematicians. Computer programming wasn't nearly popular enough to warrant being taught, nor was it at a point where anyone who wasn't an expert could get anything out of it. It was soon realized however, that mathematicians were not a good fit for computer science work and that there would be a need for people fully focused around the subject.Tedre, M., Simon, & (2018). Changing aims of computing education: a historical survey. ''Computer Science Education'', ''28''(2), 158–186. As time went on, there was a greater need for those who were specifically trained in computer programming to match the demands of a world becoming more and more dependent on the use of computers. Initially, only colleges and universities offered computer programming courses, but as time went on, high schools and even middle schools implemented computer science programs. In comparison to
science education Science education is the teaching and learning of science to school children, college students, or adults within the general public. The field of science education includes work in science content, science process (the scientific method), some ...
and
mathematics education In contemporary education, mathematics education—known in Europe as the didactics or pedagogy of mathematics—is the practice of teaching, learning, and carrying out Scholarly method, scholarly research into the transfer of mathematical know ...
, computer science (CS) education is a much younger field. In the
history of computing The history of computing is longer than the history of computing hardware and modern computing technology and includes the history of methods intended for pen and paper or for chalk and slate, with or without the aid of tables. Concrete devices ...
, digital computers were only built from around the 1940s – although
computation A computation is any type of arithmetic or non-arithmetic calculation that is well-defined. Common examples of computation are mathematical equation solving and the execution of computer algorithms. Mechanical or electronic devices (or, hist ...
has been around for centuries since the invention of
analog computer An analog computer or analogue computer is a type of computation machine (computer) that uses physical phenomena such as Electrical network, electrical, Mechanics, mechanical, or Hydraulics, hydraulic quantities behaving according to the math ...
s. Another differentiator of computer science education is that it has primarily only been taught at university level until recently, with some notable exceptions in Israel, Poland and the United Kingdom with the
BBC Micro The BBC Microcomputer System, or BBC Micro, is a family of microcomputers developed and manufactured by Acorn Computers in the early 1980s as part of the BBC's Computer Literacy Project. Launched in December 1981, it was showcased across severa ...
in the 1980s as part of
Computer science education in the United Kingdom Computer science education in the United Kingdom is carried out in the UK mostly from the age of 11. It is a predominantly male subject. In their teenage years, around 3% of girls are interested in computing as a career, as opposed to 17% of boys ...
. Computer science has been a part of the school
curricula In education, a curriculum (; : curriculums or curricula ) is the totality of student experiences that occur in an educational process. The term often refers specifically to a planned sequence of instruction, or to a view of the student's experi ...
from age 14 or age 16 in a few countries for a few decades, but has typically as an elective subject. Primary and secondary
computer science Computer science is the study of computation, information, and automation. Computer science spans Theoretical computer science, theoretical disciplines (such as algorithms, theory of computation, and information theory) to Applied science, ...
education is relatively new in the United States with many K-12 CS teachers facing obstacles to integrating CS instruction such as professional isolation, limited CS professional development resources, and low levels of CS teaching
self-efficacy In psychology, self-efficacy is an individual's belief in their capacity to act in the ways necessary to reach specific goals. The concept was originally proposed by the psychologist Albert Bandura in 1977. Self-efficacy affects every area of hum ...
. According to a 2021 report, only 51% of high schools in the US offer computer science. Elementary CS teachers in particular have lower CS teaching efficacy and have fewer chances to implement CS into their instruction than their middle and high school peers. Connecting CS teachers to resources and peers using methods such as
Virtual communities of practice An online community of practice (OCoP), also known as a virtual community of practice (VCoP), is a community of practice (CoP) that is developed and maintained on the Internet. OCoPs include active members who are practitioners, or "experts," in t ...
has been shown to help CS and STEM teachers improve their teaching self-efficacy and implement CS topics into student instruction.


Generative AI and Computing Education

Generative Artificial Intelligence Generative artificial intelligence (Generative AI, GenAI, or GAI) is a subfield of artificial intelligence that uses generative models to produce text, images, videos, or other forms of data. These models Machine learning, learn the underlyin ...
(GAI) is becoming more popular and widespread in the public sector. Both teachers and students have reported to believing that it is a useful educational tool, while expressing concerns about over-reliance during learning. GAI has been known to hallucinate information, causing concerns for the trustworthiness of the information it provides. More work on how to use these tools needs to occur for effective teaching.


Curriculum

As with most disciplines, computer science benefits from using different tools and strategies at different points in a student's development to ensure they get the most out of the teaching. Visual programming languages like Scratch and
MIT App Inventor MIT App Inventor (App Inventor or MIT AI2) is a high-level block-based visual programming language, originally built by Google and now maintained by the Massachusetts Institute of Technology (MIT). It allows newcomers to create computer applicat ...
are effective in elementary and middle schools as a good introduction to how programming languages function with a simple and easy to understand block-based programming structure.Garneli, V., Giannakos, M. N., & Chorianopoulos, K. (March 2015). Computing education in K-12 schools: A review of the literature. In ''2015 IEEE Global Engineering Education Conference (EDUCON)'' (pp. 543–551). IEEE. Once students have gotten a grasp for the very basics of programming through these languages, usually teachers will move on to an easy to use text-based programming language, such as
Python Python may refer to: Snakes * Pythonidae, a family of nonvenomous snakes found in Africa, Asia, and Australia ** ''Python'' (genus), a genus of Pythonidae found in Africa and Asia * Python (mythology), a mythical serpent Computing * Python (prog ...
, where syntax is much simpler compared to more complex languages. Generally, students are taught with languages that are popular among professional businesses and programmers so that they can become familiar with languages actually used in the workforce. Thus, in high school and college, classes tend to focus on more complex uses of Python as well as other languages such as
Java Java is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea (a part of Pacific Ocean) to the north. With a population of 156.9 million people (including Madura) in mid 2024, proje ...
, C++, and
HTML Hypertext Markup Language (HTML) is the standard markup language for documents designed to be displayed in a web browser. It defines the content and structure of web content. It is often assisted by technologies such as Cascading Style Sheets ( ...
. Despite this, it isn't completely necessary to focus on the most popular or used coding languages as much of computer science is built off of learning good coding practices that can be applied to any language in some form.


Teaching methods

Effective teaching methods in computer science often differ from that of other subjects as the standard slideshow and textbook format often used in schools has been found to be less effective compared to standard academic subjects.Cheah, C. S. (2020). Factors contributing to the difficulties in teaching and learning of computer programming: A literature review. ''Contemporary Educational Technology'', ''12''(2), ep272. Due to the problem-solving nature of computer science, a kind of problem focused curriculum has been found to be the most effective, giving students puzzles, games, or small programs to interact with and create. Rather than applying techniques or strategies learned to tests or quizzes, students must use material learned in class to complete the programs and show they are following the class. On top of this, it has been found that developing teaching methods that seek to improve and guide students problem-solving and creative abilities tend to help them succeed in computer science and other classes. The problem-solving aspect of computer science education is often the hardest part to deal with as many students can struggle with the concept, especially when it is likely they have not had to apply in such a way before this point. Something else that has become popular in more recent times are online coding courses and coding bootcamps. Due to the nature of computer science as a discipline, there are many who realize there interest for it only later in life, or maybe it wasn't widely available when they attend high school or college. These opportunities often involve rigorous courses that are more geared to getting people ready for the workforce rather than a more academic focus. Coding bootcamps have become a great way for people to break out into the computer science market without having to go to school all over again.


Algorithm Visualization

It can be difficult to effectively teach the interactive components  of computing or the way an algorithm works with static text and images that are popular in textbooks and lectures. Instructors often utilize document cameras or classroom boards to draw out the processes and supplement the verbal explanation. The drawings are subject to frequent changes throughout the walkthrough of the process, causing challenges for students to grasp the concepts. To combat this problem, an interest in Algorithm Visualization has developed to demonstrate dynamic systems. Algorithm Visualization dates back to the early 1980’s with Baecker's Sorting Out Sorting. If used effectively, it can graphically demonstrate different states of algorithms in engaging ways. This helps students focus on the conceptual aspects of a process without worrying about the implementation such as memory addresses and specific function calls. Increased use of algorithm visualization engagement by students typically results in better learning for the students. Algorithm Visualization can be used for a myriad of different topics. Data structures, graph algorithms, and sorting algorithms are all examples of computation based concepts where students can benefit from learning about with the aid of an algorithm visualization.


Computing education research

Computing education research (CER) or Computer science education research is an interdisciplinary field that focuses on studying the teaching and learning of computer science. It is a subfield of both computer science and education research, and is concerned with understanding how computer science is taught, learned, and assessed in a variety of settings, such as K-12 schools, colleges and universities, and online learning environments.


Background

Computer science education research emerged as a field of study in the 1970s, when researchers began to explore the effectiveness of different approaches to teaching computer programming. Since then, the field has grown to encompass a wide range of topics related to computer science education, including curriculum design, assessment, pedagogy, and diversity and inclusion.


Topics of study

One of the primary goals of computer science education research is to improve the teaching and learning of computer science. To this end, researchers study a variety of topics, including:


Curriculum design

Researchers in computer science education seek to design curricula that are effective and engaging for students. This may involve studying the effectiveness of different programming languages, or developing new pedagogical approaches that promote active learning.


Assessment

Computer science education researchers are interested in developing effective ways to assess student learning outcomes. This may involve developing new measures of student knowledge or skills, or evaluating the effectiveness of different assessment methods.


Pedagogy

Researchers in computer science education are interested in exploring different teaching methods and instructional strategies. This may involve studying the effectiveness of lectures, online tutorials, or peer-to-peer learning.


Diversity and inclusion

Computer science education researchers are interested in promoting diversity and inclusion in computer science education. This may involve studying the factors that contribute to under representation of certain groups in computer science, and developing interventions to promote inclusivity and equity.


Research communities

The
Association for Computing Machinery The Association for Computing Machinery (ACM) is a US-based international learned society for computing. It was founded in 1947 and is the world's largest scientific and educational computing society. The ACM is a non-profit professional membe ...
(ACM) runs a
Special Interest Group A special interest group (SIG) is a community within a larger organization with a shared interest in advancing a specific area of knowledge, learning or technology where members cooperate to effect or to produce solutions within their particular f ...
(SIG) on Computer science education known as SIGCSE which celebrated its 50th anniversary in 2018, making it one of the oldest and longest running ACM Special Interest Groups. An outcome of computing education research are
Parsons problems Parsons problems are a form of an objective assessment in which respondents are asked to choose from a selection of code fragments, some subset of which comprise the problem solution. The Parsons problem format is used in the learning and teaching o ...
.


Gender perspectives in computer science education

In many countries, there is a significant gender gap in computer science education. In 2015, 15.3% of computer science students graduating from non-doctoral granting institutions in the US were women while at doctoral granting institutions, the figure was 16.6%. The number of female PhD recipients in the US was 19.3% in 2018. In almost everywhere in the world, less than 20% of the computer science graduates are female. This problem mainly arises due to the lack of interests of girls in computing starting from the primary level. Despite numerous efforts by programs specifically designed to increase the ratio of women in this field, no significant improvement has been observed. Furthermore, a declining trend has been noticed in the involvement of women in past decades. The main reason for the failure of these programs is because almost all of them focused on girls in high school or higher levels of education. Researchers argue that by then women have already made up their mind and stereotypes start to form about computer scientists. Computer Science is perceived as a male dominated field, pursued by people who are nerdy and lack social skills. All these characteristics seem to be more damaging for a woman as compared to a man. Therefore, to break these stereotypes and to engage more women in computer science, it is crucial that there are special outreach programs designed to develop interest in girls starting at the middle school level and prepare them for an academic track towards the hard sciences. Evidently, there are a few countries in Asia and Africa where these stereotypes do not exist and women are encouraged for a career in science starting at the primary level, thus resulting in a gender gap that is virtually nonexistent. In 2011, women earned half of the computer science degrees in Malaysia. In 2001, 55 percent of computer science graduates in Guyana were women.


Accessibility

Both government and private industry are showing increasing interest in developing software that is accessible to everyone, including people with disabilities. Although there is a strong demand, only 2% of industry leaders indicate that finding candidates with the required accessibility skills is easy or very easy. As a result, teaching accessibility in computer science classrooms is becoming more important, which involves the communication of metainformation surrounding information and accessibility. Current approaches include course integration and teaching accessibility knowledge. Course integration takes multiple disciplines and combines them into one class or program. There are three main types of integration: special topics courses, thematic courses, and module integration. Special topic courses is when a given discipline is the entire topic of a course, i.e. a course on accessibility within an
Information school An information school (sometimes abbreviated I-school or iSchool) is a university-level institution committed to understanding the role of information in nature and human endeavors. Synonyms include school of information, department of informat ...
. Thematic courses are when a class is not about a given topic directly, but rather use a topic as a focus or lens to teach the primary topic, for example teaching
User experience design User experience design (UX design, UXD, UED, or XD), upon which is the centralized requirements for "User Experience Design Research" (also known as UX Design Research), defines the experience a user would go through when interacting with a compa ...
through the perception of disabled users. Module Integration teaches a given topic in an isolated unit, like a web design class having a unit on optimizing a website for screen-readers. Teaching accessibility knowledge directly teaches accessibility throughout an entire program by teaching how a subfield can encourage accessible practices. This includes, but is not limited to, screen readers, adaptive keyboards, and screen magnifiers, captioning and subtitle services, and diction software. These can be applicable in several computational subfields such has web development, human computer interaction, and software engineering. There exists a gap in the support that instructors have while teaching accessibility that is rooted in a lack of knowledge on the different approaches to teaching accessibility. University of Washington, Gallaudet University, Tufts University, and University of California Irvine have collaborated with AccessComputing, a program designed to help instructors and students increase disability representation in careers in computing.


Recent Trends and Developments

Recently, computational education has had an increased emphasis on incorporating computational knowledge into education on all levels. This is due to the world becoming more and more technologically driven. Organizations like Code.org and initiatives like the
Hour of Code Code.org is a non-profit organization and educational website founded by Hadi and Ali Partovi, aimed at K-12 students who specialize in computer science. The website includes free coding lessons and other resources. The initiative also targets s ...
, and
massive open online course A massive open online course (MOOC ) or an open online course is an online course aimed at unlimited participation and open access via the World Wide Web, Web. In addition to traditional course materials, such as filmed lectures, readings, and p ...
s (MOOCs) have played a significant role in promoting computer science education and making coding accessible to students worldwide; especially making a difference for women, underprivileged and underrepresented communities. These online learning platforms have also made computing education more accessible, allowing individuals to learn coding remotely. Additionally, we see technology increasingly being found in numerous fields like health, business and technology.


Challenges

Over the years, computing education has faced many various issues that have in one way or another contributed to its unpopularity. One of the most impactful of these issues is the equipment cost of effectively teaching the discipline.Morreale, P., & Joiner, D. (2011). Changing perceptions of computer science and computational thinking among high school teachers. ''Journal of Computing Sciences in Colleges'', ''26''(6), 71–77. In the past, there were not many affordable options for providing computers for each and every student that wanted to learn the discipline. Due to this, computing education suffered in many areas with little to no funding left over to adequately teach the subject.Goode, J., & Margolis, J. (2011). Exploring computer science: A case study of school reform. ''ACM Transactions on Computing Education (TOCE)'', ''11''(2), 1–16. This is the main reason why computing education is either extremely lackluster or non-existent in many schools across the United States and UK. The subject's unpopularity for many years mostly stems from it being reserved for those who could afford the necessary equipment and software to effectively teach it. There have also been issues with finding and training good teachers for the subject. Many schools in the past didn't see the value in paying for training for teachers to be able to teach computer science or get the licenses required. This has led to many schools in disadvantaged areas, or simply areas with not a lot of people, to struggle to hire the teachers necessary to provide a good computer science curriculum. Another issue with the teacher side of the discipline is the nature of computer science itself, and that a standard teaching structure using slides and textbooks has often been found to be ineffective. Computer science is a very problem solving oriented subject and it has often been found that teaching can be more effective when approaching it from this perspective rather than the standard lecture format. Computer science is also notorious for being a very difficult subject in schools, with high failure and dropout rates over the years it has been taught. This is usually attributed to the fact that computer science as a subject is very problem-solving heavy and a lot of students can struggle with this aspect. This is especially true for high-school, where few other subjects demand as high caliber of problem-solving ability as computer science. This is compounded by the fact that computer science is a very different discipline from most other subjects, meaning that many students who encounter it for the first time can struggle a lot. Despite the challenges faced by the discipline, computer science continues to grow in popularity as a subject as technology grows and computers become more and more important in the classroom as well as in everyday life.


See also

*
Tech ed Technology education is the study of technology, in which students "learn about the processes and knowledge related to technology". As a field of study, it covers the human's ability to shape and change the physical world to meet needs, by mani ...
* Career and Technical Education


References

{{DEFAULTSORT:Computer Science Education Education by subject