skip to main content


Search for: All records

Creators/Authors contains: "Burlinson, David"

Note: When clicking on a Digital Object Identifier (DOI) number, you will be taken to an external site maintained by the publisher. Some full text articles may not yet be available without a charge during the embargo (administrative interval).
What is a DOI Number?

Some links on this page may take you to non-federal websites. Their policies may differ from this site.

  1. BRIDGES is a software framework for creating engaging assignments for required courses such as data structures and algorithms. It provides students with a simplified API that populates their own data structure implementations with live and real-world data, and provides the ability for students to easily visualize the data structures they create as part of routine classroom exercises. The objective is to use the infrastructure to promote a better understanding of the data structure and its underlying algorithms. This report describes the BRIDGES infrastructure and provides evaluation data collected over the first five years of the project. In the first 2 years, as we were developing the BRIDGES projects, our focus was on gathering data to assess whether the addition of the BRIDGES exercises had an effect on student retention of core concepts in data structures; and throughout the 5-year duration of the project, student interest and faculty feedback were collected online and anonymously. A mixed method design was used to evaluate the project impact. A quasiexperimental design compared student cohorts who were enrolled in comparable course sections that used BRIDGES with those that did not. Qualitative and quantitative measures were developed and used together with course grades and grade point averages. Interest and relevance in BRIDGES programming assignments was assessed with additional survey data from students and instructors. Results showed that students involved in BRIDGES projects demonstrated larger gains in knowledge of data structures compared to students enrolled in comparable course sections, as well as long-term benefits in their performance in four follow-on required courses. Survey responses indicated that some investment of time was needed to use BRIDGES, but the extra efforts were associated with several notable outcomes. Students and instructors had positive perceptions of the value of engaging in BRIDGES projects. BRIDGES can become a tool to get students more engaged in critical foundational courses, demonstrating relevance and context to today’s computational challenges. 
    more » « less
    Free, publicly-accessible full text available October 10, 2024
  2. Early programming courses, such as CS1, are an important time to capture the interest of the students while imparting important technical knowledge. Yet many CS1 sections use contrived assignments and activities that tend to make students uninterested and doubt the usefulness of the content. We demonstrate that one can make an interesting CS1 experience for students by coupling interesting datasets with visual representations and interactive applications. Our approach enables teaching an engaging early programming course without changing the content of that course. This approach relies on the BRIDGES system that has been under development for the past 5 years; BRIDGES provides easy access to datasets and interactive applications. The assignments we present are all scaffolded to be directly integrated into most early programming courses to make routine topics more compelling and exciting. 
    more » « less
  3. 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
  4. Many newcomers to programming and computational thinking have been brought up on interactive, gamified learning environments. Introductory computer science courses at the university level need to dig deeper into these topics, but must do so with similarly engaging technologies and projects. To address this need, we have built a framework for a grid-based game API with event-based blocking and continuous non-blocking interfaces. The framework abstracts away much of the complexity of inputs and rendering and exposes a simple game grid similar to a 2D array indexed by rows and columns. As such, our project helps reinforce basic computing concepts (arrays, loops, OOP, recursion) with a customizable and engaging game interface. We have discussed the valuable influence of visual representations of student's data structures using BRIDGES in previous publications, and believe our game API can provide significance and intrigue for students in introductory courses and beyond. Our Bridges Games App website (http://bridges-games.herokuapp.com/) presents descriptions and instructions. 
    more » « less
  5. The NSF/IEEE-TCPP Parallel and Distributed Computing curriculum guidelines released in 2012 (PDC12) is an effort to bring more parallel computing education to early computer science courses. It has been moderately successful, with the inclusion of some PDC topics in the ACM/IEEE Computer Science curriculum guidelines in 2013 (CS13) and some coverage of topics in early CS courses in some universities in the U.S. and around the world. A reason often cited for the lack of a broader adoption is the difficulty for instructors who are not already knowledgable in PDC topics to learn how to teach those topics and align their learning objectives with early CS courses. There have been attempts at bringing textbook chapters, lecture slides, assignments, and demos to the hands of the instructors of early CS classes. However, the effort required to plow through all the available materials and figure out what is relevant to a particular class is daunting. This paper argues that classifying pedagogical materials against the CS13 guidelines and the PDC12 guidelines can provide the means necessary to reduce the burden of adoption for instructors. In this paper, we present CAR-CS, a system that can be used to categorize pedagogical materials according to well- known and established curricular guidelines and show that CAR-CS can be leveraged 1) by PDC experts to identify topics for which pedagogical material does not exist and that should be developed, 2) by instructors of early CS courses to find materials that are similar to the one that they use but that also cover PDC topics, 3) by instructors to check the topics that a course currently covers and those it does not cover. 
    more » « less
  6. This demo introduces participants to the concepts and application of BRIDGES, a software infrastructure designed to facilitate hands-on experience for solving traditional problems in introductory computer science courses using data from real-world systems that are of interest to students, such as Facebook, Twitter, and Google Maps. BRIDGES provides access to real-world data sets for use in traditional data structures programming assignments, without requiring students to work with complex and varied APIs to acquire such data. BRIDGES also helps the students to explore and understand the use of data structures by providing each student with a visualization of operations performed on the student's own implementation of a data structure. BRIDGES visualizations can be easily shared (via a weblink) with peers, friends, and family. Demo attendees will see (and possibly engage in) hands-on experience with BRIDGES and will have the opportunity to discuss how BRIDGES can be used to support various introductory computer science courses. Additionally, the demo will complement our oral presentation of our work at SIGCSE, by providing hands-on demonstrations of BRIDGES. 
    more » « less
  7. 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