Computing education
Computer science education or computing education is the field of teaching and learning the discipline of computer science,[1][2][3][4][5][6] and computational thinking.[7][8][9] 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.[10]
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.[11]
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[edit]
The history of computer science education can be traced back to the early days of computing, when programming was primarily done by scientists and mathematicians. As computers became more widely used in industry and government, the need for skilled programmers grew, and universities began to offer courses in computer science.
In comparison to science education and mathematics education, computer science (CS) education is a much younger field.[12] In the history of computing, digital computers were only built from around the 1940s – although computation has been around for centuries since the invention of analog computers.[13]
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 in the 1980s as part of Computer science education in the United Kingdom.[6][14] Computer science has been a part of the school curricula 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 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.[15][16][17] According to a 2021 report, only 51% of high schools in the US offer computer science.[18]
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.[15] Connecting CS teachers to resources and peers using methods such as Virtual Communities of Practice has been shown to help CS and STEM teachers improve their teaching self-efficacy and implement CS topics into student instruction.[15][16]
Curriculum[edit]
The curriculum for computer science education varies depending on the level of education and country. At the elementary and middle school level, computer science education usually focuses on block or visual programming languages such as Scratch or python (in India for higher Secondary level) using basic programming concepts, such as loops, conditionals, and variables.[19] At the high school level, students may learn more advanced programming concepts and algorithms, as well as web development, networking, and data analysis.
In college and graduate school, computer science education may include courses in topics such as artificial intelligence, machine learning, data science, and computer graphics. Many computer science programs also offer courses in computer architecture, operating systems, and computer networks.
Teaching methods[edit]
Teaching methods in computer science education vary depending on the level of education and the goals of the program. At the elementary and middle school level, computer science education may focus on interactive games and puzzles to teach programming concepts. In high school and college, computer science education may involve lectures, labs, and hands-on projects that allow students to apply their knowledge to real-world problems.
Online learning platforms and coding bootcamps have also become popular methods of teaching computer science skills. These programs offer self-paced learning and can be accessed from anywhere with an internet connection, as computer science is more about practicality and real-world application.
Gender perspectives in computer science education[edit]
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%.[23] The number of female PhD recipients in the US was 19.3% in 2018.[24] In almost everywhere in the world, less than 20% of the computer science graduates are female.[25]
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.[26]
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.[26] All these characteristics seem to be more damaging for a woman as compared to a man. Therefore, in order 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 a academic track towards the hard sciences.[25]
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.[27] In 2001, 55 percent of computer science graduates in Guyana were women.[28]
Recent Trends and Developments[edit]
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 and Massive Open Online Courses (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. [29] [30]