An Experience Report on Reducing Barriers by Removing Prerequisites for a CS 1 Introductory Programming Course
By: Dr. Udayan Das, Saint Mary's College of California and Chris Fulton, Loyola University Chicago
Abstract
Even though many CS programs continue to evolve in considering what is required for students to begin a program, a majority of programs continue to have math or CS0 prerequisites to begin taking a CS1 programming course. This experience report discusses the impact of removing the math prerequisite at an R2 university (Loyola University Chicago) and a liberal arts college (Saint Mary's College of California). Our experience shows that the removal of prerequisites, making the course readily available for those interested in pursuing CS, did not affect student performance negatively but allowed a wider body of students to begin taking the program sooner. Having minimal prerequisites has beneficial effects in terms of diversifying the CS student body as well as enabling students to begin CS coursework early, often in the first semester, potentially impacting persistence, but also enabling students to decide, early, if CS is right for them. Programs should evaluate what prior knowledge is required to be successful in a CS program. The high success rate of students of various backgrounds taking CS certificates and pursuing graduate school also shows that aggressive prerequisites may be functioning as barriers to entering CS programs. If we are serious about supporting diversity, we need to acknowledge the wide disparity in high school education nationwide and that prerequisites are perhaps functioning as a needless barrier. Where the CS0 course doesn’t count towards a degree, or there isn’t space for that requirement in the program, it is also worth considering whether the CS0 prerequisite is necessary.
This paper will discuss the results of an analysis of 50 CS programs in the US representing a wide cross section of type and size of institution. These programs included many top CS programs as well as academic institutions of various types, including Carnegie Classified R1 and R2 universities, private and state universities, liberal arts colleges, as well as community colleges. 30% of CS1 courses at surveyed programs have no prerequisites to start the course. (Note that no prerequisites in this context includes high school completion or GED.) Of the CS1 courses that have prerequisites the breakdown is as follows. calculus or precalculus is a requirement in 24%. Another 12% require calculus or precalculus as a corequisite. Other math such as college algebra or mathematical reasoning account for 12%. CS 0 is an accepted prerequisite for the CS1 course in 30% of institutions. Note that the numbers do not add up to 100 because the listed requirements sometimes overlap.
We consider a CS 1 course to include the following topic areas guided by ACM Curriculum 2013 and 2023 beta:
Variables
Data types
Console I/O
Expressions
Branching and selection
Loops
Functions
File I/O
Modules and libraries
Objects
Recursion
The paper will include detailed instructor reflections from 2 instructor-program-directors as well as a detailed discussion regarding implications and incorporation of the approach in other institutions, which includes more reliance on active learning and project-based learning as well as strong student supports.
The removal of prerequisites has significant benefits in terms of allowing a wider variety of students to take the CS 1 course earlier in their programs. The rationale of requiring students to take calculus prior to taking a CS 1 course should be reconsidered. Not only is there no dependence of a standard CS 1 programming course on calculus, but this requirement can also function as discouragement and a delay in students interested in taking the CS 1 programming course. Towards broadening participation in computing and supporting students from a wide variety of backgrounds, bringing differing prior experience a big step would be making it easier for students to begin programming as soon as possible.
Are you a researcher? Would you like to cite this paper? Visit the ASEE document repository at peer.asee.org for more tools and easy citations.