Developing a holistic understanding of systems and algorithms through research papers
Even though a computer science degree is unavoidably broken into semesters and courses, we always hope that our students form a holistic picture of the discipline by the time they graduate. Yet as educators, we do not have too many opportunities to make this point front and center for an extended period of time. This report addresses a well-defined portion of this problem: revealing conceptual connections between algorithmic courses (such as Discrete Math, Data Structures, Algorithms) and systems oriented courses (such as Organization, Computer Networks, Operating Systems, and Hardware) through the use of research papers. In particular, we provide a pedagogical framework as well as a set of carefully selected papers to crosscut our disciplinary space in a way that is orthogonal to conventional course design. This framework includes a paper taxonomy, strategies for covering topics that students are yet to encounter in upper level courses, strategies for reading and writing technical papers, three modules (one each for operating systems, networks, and architecture) that can be integrated into standard systems courses, and a new (optional) course template as a container for all of the listed elements. Since we have already tried these ideas once at the institution of the two leading authors, our report is rich with scaffolding suggestions as well.
ITiCSE-WGR 2017 - Proceedings of the 2017 ITiCSE Conference on Working Group Reports
Erkan, Ali; Barr, John; Clear, Tony; Izu, Cruz; Del Alamo, Cristian Jose Lopez; Mohammed, Hanan; and Nadimpalli, Mahadev, "Developing a holistic understanding of systems and algorithms through research papers" (2018). Faculty Articles Indexed in Scopus. 373.