Although undergraduate enrollment in Computer Science has remained strong and seen substantial increases in the past decade, retention of majors remains a significant concern, particularly for students at the freshman and sophomore level that are tackling foundational courses on algorithms and data structures. In this work, we present BRIDGES, a software infrastructure designed to enable the creation of more engaging assignments in introductory data structures courses by providing students with a simplified API that allows them to populate their own data structure implementations with live, real-world, and interesting data sets, such as those from popular social networks (e.g., Twitter, Facebook). BRIDGES also provides the ability for students to create and explore {\em visualizations} of the execution of the data structures that they construct in their course assignments, which can promote better understanding of the data structure and its underlying algorithms; these visualizations can be easily shared via a weblink with peers, family, and instructional staff. In this paper, we present the BRIDGES system, its design, architecture and its use in our data structures course over two semesters.
more »
« less
Real-World Assignments at Scale to Reinforce the Importance of Algorithms and Complexity
Computer Science students in algorithm courses often drop out and feel that what they are learning is disconnected from real life programming. Instructors, on the other hand, feel that algorithmic content is foundational for the long term development of students. The disconnect seems to stem from students not perceiving the importance of algorithmic paradigms, and how they impact performance in applications. We present the point of view that by solving real-world problems where algorithmic paradigms and complexity matter, students will become more engaged with the course and appreciate its importance. Our approach relies on a lean educational framework that provides simplified access to real life datasets and benchmarking features. The assignments we present are all scaffolded, and easily integrated into most algorithms courses. Feedback from using some of the assignments in various courses is presented to argue for the validity of the approach.
more »
« less
- PAR ID:
- 10158622
- Date Published:
- Journal Name:
- CCSC NE
- Format(s):
- Medium: X
- Sponsoring Org:
- National Science Foundation
More Like this
-
-
Many universities are offering data science (DS) courses to fulfill the growing demands for skilled DS practitioners. Assignments and projects are essential parts of the DS curriculum as they enable students to gain hands-on experience in real-world DS tasks. However, most current assignments and projects are lacking in at least one of two ways: 1) they do not comprehensively teach all the steps involved in the complete workflow of DS projects; 2) students work on separate problems individually or in small teams, limiting the scale and impact of their solutions. To overcome these limitations, we envision novel synergistic modular assignments where a large number of students work collectively on all the tasks required to develop a large-scale DS product. The resulting product can be continuously improved with students' contributions every semester. We report our experience with developing and deploying such an assignment in an Information Retrieval course. Through the assignment, students collectively developed a search engine for finding expert faculty specializing in a given field. This shows the utility of such assignments both for teaching useful DS skills and driving innovation and research. We share useful lessons for other instructors to adopt similar assignments for their DS courses.more » « less
-
The rise in CS enrollments in the past few years has also resulted in a more diverse population of learners that have different expectations, motivations and interests, making it important to provide relevant learning materials in early foundational courses. Grounding Computer Science concepts in reality by solving important real-world or fun problems are keys to increasing students’ motivation and engagement in computing, which may help improve student retention and success. This workshop provides instructors with a hands-on introduction to BRIDGES, a software infrastructure for programming assignments in early computer science courses, such as CS1, CS2, data structures, and algorithm analysis. BRIDGES provides the tools for creating engaging programming assignments, including: (1) a simplified API for accessing real-world data, such as those from social networks, entertainment (songs, movies), science, engineering (USGIS Earthquakes, elevation maps), geography (OpenStreet maps), and literature (Project Gutenberg), (2) creating visualizations of the data, (3) an easy to use API for game-based assignments, and, (4) algorithm benchmarking. Workshop attendees will engage in hands-on experience using BRIDGES with multiple datasets, have the opportunity to discuss the challenges they face in their own courses, and how BRIDGES can be used in their own courses. Using BRIDGES in data structures, algorithms, and other courses have shown improved retention of CS knowledge and better student performance in follow-on courses, when compared to students from other sections of the same course. BRIDGES has impacted nearly 2000 students across 20 institutions since its inception 5 years ago. A repository of BRIDGES assignments is now maintained for instructors using BRIDGES in their classes.more » « less
-
Students in entry level CS courses come from diverse backgrounds and are learning study and time management skills. Our belief for their success is that they must master a growth mindset and that the final grade should represent their final mastery of topics in the course. Traditional grading systems tend to be too restrictive and hinder a growth mindset. They require strict deadlines that fail to easily account for student accommodations and learning differences. Furthermore, they run into averaging and scaling issues with 59% of a score counting as failing, making it difficult for students to redeem grades even if they later demonstrate mastery of topics. We designed a formative/summative grading system in our CS0 and CS1 classes for both on-campus and online students to support a structured growth mindset. Students can redo formative assignments and are provided flexible deadlines. They demonstrate their mastery in summative assignments. While being inspired by other grading systems, our system works seamlessly with auto-grading tools used in large, structured courses. Despite the flexibility, the courses provided a level of rigor before allowing students to continue onto the next course. Overall, 65% of students resubmitted assignments increasing their scores, participated in ungraded assignments, and used formative assignments for additional practice without a distinction between race or gender. These students went to the traditional follow-on CS2 course and 94% passed compared with 71% who took CS1 with a traditional grading system.more » « less
-
Traditionally, engineering design is taught as a tool for synthesis and integration of engineering content knowledge for students in capstone courses. These engineering design courses are usually successful, in that the students do well, they come up with innovative solutions, and they are satisfied with their school experience and feel ready for the real world. But, what is the evidence that students have actually learned and can apply their design and engineering learning successfully for synthesis and integration? What are the student’s own understandings of the design process and engineering design practice? How might they conceive of their own engineering and design epistemic identities? This work investigates these questions.more » « less