<?xml-model href='http://www.tei-c.org/release/xml/tei/custom/schema/relaxng/tei_all.rng' schematypens='http://relaxng.org/ns/structure/1.0'?><TEI xmlns="http://www.tei-c.org/ns/1.0">
	<teiHeader>
		<fileDesc>
			<titleStmt><title level='a'>What is an Algorithms Course?: Survey Results of Introductory Undergraduate Algorithms Courses in the U.S.</title></titleStmt>
			<publicationStmt>
				<publisher></publisher>
				<date>03/02/2023</date>
			</publicationStmt>
			<sourceDesc>
				<bibl> 
					<idno type="par_id">10429057</idno>
					<idno type="doi">10.1145/3545945.3569820</idno>
					<title level='j'>SIGCSE 2023: Proceedings of the 54th ACM Technical Symposium on Computer Science Education</title>
<idno></idno>
<biblScope unit="volume">1</biblScope>
<biblScope unit="issue"></biblScope>					

					<author>Michael Luu</author><author>Matthew Ferland</author><author>Varun Nagaraj Rao</author><author>Arushi Arora</author><author>Randy Huynh</author><author>Frederick Reiber</author><author>Jennifer Wong-Ma</author><author>Michael Shindler</author>
				</bibl>
			</sourceDesc>
		</fileDesc>
		<profileDesc>
			<abstract><ab><![CDATA[]]></ab></abstract>
		</profileDesc>
	</teiHeader>
	<text><body xmlns="http://www.tei-c.org/ns/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink">
<div xmlns="http://www.tei-c.org/ns/1.0"><p>analysis and recursive analysis, among others. Shindler et al. <ref type="bibr">[12]</ref> perform a replication study of <ref type="bibr">[19]</ref> that targeted misconceptions about dynamic programming. &#214;zdener <ref type="bibr">[9]</ref>'s study identifies students' misconceptions about time-efficiency of algorithms, while Vel&#225;zquez-Iturbide <ref type="bibr">[16]</ref>'s work addresses misconceptions about optimization problems and their corresponding algorithms.</p><p>Other research related to algorithms concerned effective teaching and evaluation strategies <ref type="bibr">[5,</ref><ref type="bibr">11,</ref><ref type="bibr">18]</ref> and means to incorporate responsible-computing content into the course structure <ref type="bibr">[6]</ref>.</p><p>More relevant to our work is the study conducted by Hertz <ref type="bibr">[7]</ref>. Their survey was focused on CS 1 and CS 2 course topics, whereas our survey concerned all algorithms course topics. Similar to our own work, they found significant divergence between courses.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">RESEARCH METHODS 3.1 Data Collection</head><p>The first step of our data collection process entailed creating a (noncomprehensive) list of academic institutions to include in the study. We only included universities in the United States that had a 4-year computer science (or related) program. We also ensured that each of the 50 states was represented, at least to some extent.</p><p>Once our list of institutions had been constructed, we began examining the catalog descriptions of undergraduate courses at each institution in order to identify a suitable course. If the course title indicated the class was introductory and solely an algorithms course (e.g., &#322;Design of Algorithms, &#382; &#322;Analysis of Algorithms, &#382; &#322;Fundamental Algorithms,&#382; etc.), we included it. Otherwise, if there was no such course, we would include another course with &#322;algorithm(s)&#382; in the title so long as there was evidence that at least one topic from the ACM's &#322;Algorithmic Strategies&#382; was included. This condition was most often applied to &#322;Data Structures and Algorithms&#382; courses, which were often a terminal algorithmic course.</p><p>After creating lists of undergraduate algorithms courses, for each course, we compiled a list of up to three instructors who had taught it within the past 2 years. To find the instructors for each course, we applied a variety of methods. The most common way was through looking at publicly viewable course schedules which list instructors' contact information, though other sources were employed, such as course websites. After finalizing the list of emails, we sent an invitation to participate in the survey to all instructors in that email list. Each survey respondent was offered a $25 Amazon gift card for completing the survey.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.2">Survey Design</head><p>When designing the survey, our goal was to gain insight into both the course structure and the topics typically taught. The survey contained two main parts. The first, consisting of three sections, focused on the organization of the course. These sections ask about general course details, such as grading breakdowns, dedicated class section times, programming assignments, written assignments, and in-class assessments (exams and quizzes).</p><p>One of our motivations behind these questions was to determine emphasis on the theoretical components versus applied components of the courses. As such, we asked questions about both the content and number of assignments.</p><p>In the second part, based on the core topics from the ACM Computer Science Curricula 2013 <ref type="bibr">[8]</ref>, we asked where the topic is first taught (i.e., prerequisite course, the algorithms course in question, other elective or required courses, nowhere in the curriculum, unsure, or other). Multiple core topics under Basic Analysis were combined into the topic &#322;Asymptotic Analysis&#382; to simplify and shorten the survey length. Similarly, we included an abridged version of the Proof Techniques section from the Discrete Structures knowledge area to identify how proofs were integrated into the course. The &#322;Basic Automata, Computability and Complexity&#382; and &#322;Advanced Data Structures, Algorithms, and Analysis&#382; sections were preceded by a question on whether the instructor taught any topics that could fall under either section and if not, the section was skipped.</p><p>Finally, we asked three open ended questions, on issues encountered, desired course changes, and any other comments.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.3">Threats to Validity</head><p>The most significant threat to the validity of our survey is in the selection process of courses and institutions. In the first wave, we selected the initial universities ourselves. As such, the first institutions we reached out to were more often well-known universities. Our second and third waves addressed this problem by attempting to be almost fully comprehensive in previously uncovered states along with a few other states. However, it should be noted that this means we do not have a perfectly random sample. Secondly, while &#322;properly titled&#382; introductory courses would always be surveyed, programs that didn't have such a course were only surveyed if they included a topic from &#322;Algorithmic Strategies. &#382; This criterion, however, may cause some confirmation-bias, since this pre-supposes that algorithms courses need to cover these strategies.</p><p>Another threat comes from the six adjunct respondents. While adjuncts likely know the course they are teaching very well, it is possible that they are less familiar with the general curriculum of the institution as a whole. A survey by the TIAA Institute indicates around 23% of adjuncts have jobs outside of academia, and 26% teach at multiple institutions <ref type="bibr">[17]</ref>. As such, this could lead to certain information being omitted or misrepresented.</p><p>Finally, there are threats related to doing surveys. All of the data is given voluntarily by those who responded, which can bias the sample. There can be errors when filling out surveys. For ours particularly, we allowed the final two sections to be skipped if the instructor indicated they did not teach any topic in the section. It could be that in these cases, the topics are taught in different locations at these universities. There is also the issue of sample size; we only received responses from 87 instructors.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4">RESULTS</head><p>Our initial list had 615 higher-education institutions. Of these, 495 had a 4-year computer-science adjacent program, and 373 of those had an applicable algorithms course. From this, we were able to send out emails to 411 instructors from 302 institutions whose contact information we were able to find. We were able to gather responses from 87 instructors across 79 institutions in 34 states. 57 of these responses were from doctoral universities with 36 being from an R1 university, 12 from an R2 university, and 9 from a doctoral/professional university as defined by the Basic Carnegie</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5.2">Themes from Free Response Questions</head><p>When teaching algorithms, by far the most common issue instructors reported facing was insufficient background on prerequisite concepts, with 54 of the 80 (68%) responses to Q1 exhibiting this (Theme 1). 40 out of those 54 (74%) made references to students' weak foundation in mathematics and proof-writing. Only nine responses (17%) expressed concern with a lack of programming skills to properly implement algorithms (the final 10 responses (19%) not elaborating on the prior knowledge students were lacking).</p><p>Another concern raised was the assessment of students' algorithm design skills (Themes 4 and 7). Instructors frequently commented on the difficulty in creating assessments and assignments for students to apply their knowledge in designing algorithms. A key difficulty is to come up with novel problems, unique from those discussed online. Another is that some students are unable to apply algorithm design beyond problems encountered in class.</p><p>Respondents also noted the abstract nature inherent in learning these topics as a struggle. Themes 5 and 6 illustrate this as instructors note students' struggles in recognizing the importance of algorithms and their relevance with real-world applications. Some instructors listed particular algorithmic concepts that students had trouble with as well, most commonly dynamic programming, greedy algorithms, and NP-completeness.</p><p>Of the 46 responses we collected for Q2, we witness two categories of themes: those expressing desires to add to the course in some way, like adding more material, emphasizing particular topics, or providing more opportunities to apply what they learned (Themes 6, 9, 10) and those which seek to address the difficulty of the course by reducing the amount of material covered or ensuring prerequisite courses cover the concepts needed (Themes 7 and 8).</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5.3">Associations Among Survey Variables and Institution Data</head><p>We looked to see if there were any associations between the survey variables and additional data we collected on the institutions we surveyed <ref type="foot">5</ref> . We also used our previous categorization of instructors' research in algorithms or non-algorithms adjacent research as a variable. We obtained these associations by calculating the Cram&#233;r's V measure for each pair of variables <ref type="foot">6</ref> . We found that there are some moderate associations between variables from the same sections of the survey. We first see this with the variables from the &#322;Evaluation of Student Mastery&#382; sections where question types on the homework and exams were correlated with one another. Likewise, for the Fundamental DSA topic section, there are moderate associations between quadratic sorting algorithms, hash tables, binary trees, and heaps, having Cram&#233;r's V values in the range 0.18 and 0.55. On the other hand, graph representations, depth-and breadth-first search, shortest-path algorithms, and minimum spanning tree algorithms, the most common topics from the DSA section, have Cram&#233;r's V measures less than 0.13 with the other topics (and associations between 0.13 and 0.78 amongst the topics). Given these observations, it is possible that the &#322;typical&#382; DSA topics concern tree traversal and graph algorithms. Furthermore, &#119874; (&#119899; log &#119899;) sorting algorithms are the only DSA topic that has any moderate associations with any Algorithmic Strategic topics, most notably having an Cram&#233;r's V score of 0.34 with divide-andconquer, suggesting &#119874; (&#119899; log &#119899;) sorting algorithms may be covered to serve as examples for algorithmic paradigms. For the advanced algorithms topics, they have moderate intra-associations and weak inter-associations, possibly implying these topics are rarely covered together. Balanced trees, graph-theoretic algorithms, and network flow, which show up in a higher percent of algorithms/prerequisite courses, have less association with the other advanced topics.</p><p>We did not find any high associations between institution data and instructor's research area and our survey variables, suggesting that algorithms course structure and topics are not particularly dependent institution type or professor research background.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="6">FUTURE WORK</head><p>A more focused survey could expand upon the themes we derived. Other research could look for and apply solutions to these issues. Finally, conducting surveys in other areas can further increase our understanding of the current state of CS education.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="7">CONCLUSION</head><p>In this study, we found that while instructors often use the term &#322;algorithms&#382; to refer to a specific course, the actual course being referenced has a large variation between academic institutions: it can be oriented around mathematics, programming, or somewhere in between. Even within these divisions, instructors often select very different subsets of topics. In addition, instructors regularly feel students are unprepared for their courses and have a variety of new directions they wish to take it -whether to focus on certain course topics or to make the class more or less mathematical.</p><p>As educators and researchers, we need to take into account the diversity in how algorithms courses are taught. Future studies should keep this in mind, and either make efforts to be applicable to a variety of courses or be tailored to a specific version of the course. When interacting with new transfer students or graduate students, we should be careful not to make assumptions about the topics covered in prior algorithms courses. Finally, as educators, we should make use of this heterogeneity to pull elements from other courses into our own to continue to improve and refine.</p></div>			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="5" xml:id="foot_0"><p>This includes the institution's Basic Carnegie Classification, its research activity, and whether or not the institution was public/private and religious/nonsectarian.</p></note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="6" xml:id="foot_1"><p>We note that these associations values do not indicate the kinds of relationships the variables have and whether variables are positively or negatively correlated with one another in one manner. We provide interpretations of these associations with the intention of yielding additional potential avenues of consideration and future study.</p></note>
		</body>
		</text>
</TEI>
