An Analysis of High School Computer Science Education (HSCSE)
Chris Chan | Chris Estreich | Andrew Parker | Avichal Garg
overview statistics factors solutions interviews international findings
Overview An introduction and high-level summary of our analysis.
Statistics A collection of telling statistics pertaining to the current state of HSCSE.
Factors The identification of 4 principal factors that affect the breadth and quality of HSCSE.
Solutions An synthesis of several proposed solutions that address the 4 contributing factors we identified.
Interviews A revelation of the real-world conceptions of HSCSE through the eyes of 2 ACM SIGCSE leaders/3 high school teachers.
International A juxtaposition of the status quo of our domestic programs with the established programs of several other countries.
Findings Summary of findings, and an expression of each of our personal feelings on the matter.

A Statistical View Of The Current State Of HSCSE

The statistics relating to HSCSE are particularly useful in that they serve to identify 4 fundamental factors that prevent strong nation-wide computer science programs from materializing at the high school level. Below are carefully selected statistical figures from two authoratative sources.

C. Stephenson's "A Report On HSCSE In Five U.S. States"

| Original Document |

For many years there has been considerable debate over the place of computer science education in the high school curriculum and despite increasing industrial demands for high skilled technology workers, figures released by the College Board indicate that fewer students are actually taking programming courses in high school. This article reports on a survey of over 2500 schools in five U.S. states. The results include information on teaching responsibilities, hardware use and purchase criteria, programming language use and purchase criteria, and teaching resource and skills upgrading preferences. This survey was supported by funding from IBM.

| Top |

1. Computers In Schools

Between 1984 and 1994 American schools expended nearly $500 million to add between 300,000 and 400,000 computers to their inventory. The total number of computers in high schools increased by 57% so that by 1994 the typical high school had 54 (median) computers (Becker, 1994). According to Coley, Cradlet, and Engel (1997) by 1997, 98% of all U.S. schools had computers and the average student-to-computer ratio was 10:1. At the state level, this ratio differed greatly, from approximately 6:1 in Florida, Wyoming, Alaska, and North Dakota to 16:1 in Louisiana. The reported student/computer ratio in the states which were the subject of this study were as follows:

California 2:1
New Jersey 12:1
New Hampshire 6:1
Massachusetts 14:1
Washington 2:1

Figures released by the College Board in 1996 indicated that while 24% of college-bound students had taken at least one computer programming course in high school there was a significant gender-based difference, with 29% of male students and 20% of female students. The College Board also reported an overall decline in the number of college-bound students taking computer programming courses from previous years. Percentages determined from previous years were as follows:

1987 45%
1990 40%
1993 30%

| Top |

2. Arguments Against Languages

Wittenburg (in Burd et al, 1997) contends that while visual programming tools such as Visual Basic are useful in the hands of expert users for rapid application development and prototyping, "they tend to drag the focus of the course away from solving problems using a programming language toward interface design".

C++ has become an industry standard despite the fact that the language itself is not standardized (Weiss, 1997). Moylan (1992) argues, however that C++ provides poor support for modularity, minimal error checking, and continues the tradition that "everything should be legal". These characteristics allow programmers to create unreadable code and limit the compilerís ability to detect errors. He further argues that the extended features of C++ are extremely complex and cause programmers to misuse them.

Java should in no way be considered a simple or easy language to learn. As a result many educators do not consider it suitable for novice programmers (Biddle and Tempero, 1999; Andreae et al. , 2000). The most commonly noted Java complexity relates to its I/O model. While standard output in Java is relatively straightforward, standard input (for example from the keyboard) requires several declarations to set up the input stream and conversion methods to read numeric values. As Lewis (2000) notes, these steps are often considered unnecessarily complex for introductory students. Biddle and Tempero (1999) also identify a number of challenges that Java using educators must be aware of, including:

ï Poor enforcement of encapsulation;
ï Differences between primitive and object types;
ï Implicit pointers;
ï Problems associated with genericity;

| Top |

3. Why Choose A Certain Language To Teach (Motivations)?

Overall 23.5% of schools report that perceived industrial relevance (use in business and industry) plays a major role in programming language selection. This is echoed in the state-by-state results, where industrial relevance is the most commonly reported criterion in New Hampshire (42.3%), New Jersey (29.4%), Washington (22.0%), and Massachusetts (19.1%). In California it is the second most reported criterion (19.3%). The second most common criterion reported by all states is the Advanced Placement exam. Overall 17.3% of respondents indicate that the programming language used for this exam (as mandated by the College Board) determines which technology they will use for instructional purposes. While California is the only state where the Advanced Placement exam is the most commonly reported criterion (19.9%), it is also a major decision factor in both New Jersey (23.5%) and New Hampshire (15.4%). In Massachusetts (8.5%) and Washington (4.9%) it is the third most commonly reported criterion. Educators also indicate that ease-of-use is a factor in instructional programming language selection. Overall 13.1% of respondents from all states list it among their selection criteria.

| Top |

4. Regarding Study Resources

Students and teachers listed the value of 6 different forms of resources in order from most valuable to least valuable (1 is most valuable, 6 is the least). While the results differ from state-to-state, the combined results show an essentially two-tiered response, with textbooks (2.4), teachers guides (2.4), and example programs (2.4) achieving the highest rating, followed by electronic lessons (3.0), student workbooks (3.0) and finally project collections (3.3).

Teachers need to stay current with changing curriculums, so they have a need for continuing education resources. The following is a ranking of teachers continuing education needs. Conferences (2.4) closely followed by self-directed learning (2.5) are reported as the most valuable sources of continuing education for computer teachers. Inservice (workshops provided by the school or school district) and upgrading (courses provided by college/university institutions) fall into the middle ground with ratings of 3.1 and 3.4 respectively. The Internet (3.6) is ranked as the second least valuable source for continuing education and vendor events (4.4) are ranked least valuable.

The popularity of C++ in all grades may be explained in a number of ways. First, C++ is an object-oriented language with all of the required object-oriented features such as classes, inheritance, and concurrency. C++ is also seen as an industrially relevant language, leading students and some educators to believe that learning C++ contributes significantly to employability upon graduation. Finally, the Advanced Placement exams in Computer Science must now be written in C++. This final factor provides a powerful incentive for schools to use C++ as an instructional programming language, especially in Grades 11 and 12.

The extent to which the Advanced Placement exams influence high school programming will become even more apparent in the next four years. In 2000 the College Board announced that beginning in the 2003-2004 school year the exams must be written in Java (as opposed to C++). This decision, combined with the growing number of college/university institutions that have already switched to Java or are planning to do so (Stephenson and West, 1998) is likely to have a profound impact on high school computer science over the next few years. The results reported for new programming languages being considered provides some early evidence of this impending shift to Java. Among the schools reporting that they are considering switching to C++, Java, or Visual Basic, the results for Java are marginally higher.

| Top |

5. Opportunites For Continuing Education

Constantly changing technology creates a pressing need for computer science teachers to upgrade their skills but opportunities for doing so can be restricted by resources available for inservice (learning opportunities provided by the school district) and limited access to upgrading by outside agencies such as local colleges and universities. The latter is particularly difficult for teachers in isolated rural areas. It is therefore not surprising that many teachers rely primarily on self-directed learning (teaching themselves about new hardware, networks, and software for example by reading textbooks and manuals). While this kind of learning can support teachers in learning new technical skills, it is less effective in helping teachers improve and expand their teaching strategies. The value computer teachers place on conferences therefore comes as no surprise, since discipline-based educational conferences provide a unique "all in one" opportunity to learn about new tools and ideas and to build networks with teachers from other schools, districts, states, and even countries.

The significantly lower rating for the Internet as a vehicle for teacher skills upgrading may come as a surprise to some, especially if they see distance education as a panacea to teacher learning needs. This data may result from a lack of access, lack of awareness, or lack of materials specially designed to address the computer science curriculum from the teacherís perspective. It is likewise not possible to determine from the data why vendor events were perceived to be the least useful venue for teacher learning. Again, the data may result from too few vendors providing teacher training or from a perceived lack of direct classroom relevance for events that are vendor sponsored.

| Top |

6. Preliminary Conclusion

Although in a less direct manner, this survey also points to the need for a profound engagement with issues relating to teacher training (both preservice and inservice) as teachers endeavor to keep up with constantly changing technology and, at the same time, improve their teaching skills. If teachers are to meet the demand for professional development their academic discipline and their students require, more effective and assessable kinds of training will have to be made available.

| Top |

UIUC's "Partnership In Computer Science Education"

| Original Document |

The K-12 education field is failing to recognize and respond to the rapid growth of Computer Science job market in the past decade. What follows is the textual evidence.

| Top |

1. Overview

        During the period 1980-2000, the number of persons with at least a bachelor's degree who were employed in nonacademic (industry and government) Computer Science (CS) positions grew by 600%, from 210,000 to 1,250,000. By comparison, the total nonacademic science and engineering workforce grew at a rate of about 70% during that same period [NSF01]. In response to this growth in demand, the annual number of CS bachelor's degrees in the US grew from 89 to 46,543, master's degrees grew from 238 to 19,577, and PhD degrees grew from 19 to 830 during the period 1966-2001 [ACM68, Bryant01]. Simultaneously, university and industrial R&D investments in CS nearly tripled in the period 1986-1999, from $321 million to $860 million, a growth rate far higher than that of academic R&D in the related fields of engineering and mathematics.

    At the same time, significant evidence confirms a widespread non-response to the growth in demand for CS from the K-12 community. A survey (http://www.acm.org/education/k12/research.html) conducted in 2002 confirms that neither the 1993 ACM model curriculum [ACM93] nor any other model achieved recognition as a basis for teaching CS at the K-12 level. Only one state in this survey identified a separate CS course at each grade level (9-12), while another designated ìIntroduction to the Computerî and ìInternet Use of the Computerî as the only two state-mandated courses (grades 9-10). Even for states that identify at least one CS course, these are only suggested electives. As for teacher preparation and certification, most states require no CS certification to teach CS courses. Most sources report that CS courses are usually taught by faculty certified to teach mathematics.

    Nearly 75% of tomorrow's jobs will require use of computers [US Labor Statistics: JOBS 2000]. As the long-term goals of ubiquitous computing and embedded systems technologies become closer to realization, even the everyday and commonplace activity will involve interacting with a computing device. In this context, it is unacceptable that so few high school graduates understand (and so little of our K-12 curricula address) the fundamental principles of data, information, process, algorithm, logic, relation, and the discrete mathematical structures (lists, trees, and graphs) that are widely used to model computational phenomena.

    "Programming" skills are becoming necessary in virtually every sector of society - especially in business and the sciences. Let there be no confusion; by programming we are not talking about the narrow domain of writing code in Java, C++ or Basic. People also program when using Excel in a variety of spreadsheet problem solving activities, when using advanced scientific visualization software, and when using Filemaker to retrieve information from a large database. Programming is not a task limited to computer programmers in the traditional sense; every information worker is required to adapt available software tools to her task and thereby is programming.

| Top |

2. International Ties

    In fact, the development of K-12 CS is making more headway internationally than in the United States. In Israel, a secondary school CS curriculum [Gal-Ezer99] was approved by the Ministry of Higher Education and implemented in 1998. It blends conceptual and applied topics, and is offered in grades 10-12. All students in grade 10 are required to take a half-year course in the foundations of CS. In Ontario, Canada, a comprehensive curriculum in CS was recently implemented at all secondary schools [Ontario02]. All courses balance foundational knowledge with skills acquisition, and they prescribe outcomes for all students, whether they are workplace bound or college bound. Similar programs have been initiated in many other nations in the industrial world.

| Top |

3. What Is Being Taught?

    Until now, attempts to articulate the fundamentals of CS at the K-12 level have largely been set aside as unimportant relative to the more pressing need of training students to use application software and become technologically literate. As a consequence, responsibility for defining "computer science" has fallen to users, and the idea of information technology and application software is confused with the underlying science of computing. In some schools, for example, the CS program is a course in Cisco Networking.

| Top |

4. Who Is Teaching Computer Science To Our Children?

    Computer science educators in K-12 schools are by and large non-CS trained personnel. In the majority of cases, motivated math or science teachers, hobbyists, and IT and business teachers fill this role despite their lack of formal CS education [Deek99]. Most states require no CS certification to teach computer science courses.

| Top |

5. Computer Science Student Stereotyping

    Tightly coupled with this inequity [in gender and minority balance] is the widespread misconception about the nature of computer science, which in turn influences how it is perceived. For most, the misconception is that CS means learning to use particular tools such as word processors. While the study of computer science is seen as dry and boring, ironically the educational technology arising from the field serve to make other areas more exciting. Another misconception is that CS is "only for geeks" (quotes of high school women commenting on the AP classes). The low representation of women in computing appears to be a direct result of these misconceptions about CS as a field that is somehow the reserved domain of males. This misunderstanding clearly germinates in the middle and high school years, and is reinforced (inadvertently) by various common public stereotypes (e.g., movies such as The Matrix and AI).

| Top |