SIGCSE'23 Affiliated Event: Building interactivity into Dive into Systems

  • Date, Time, Location:

    • Wednesday, March 15th

    • 1:00 PM to 5:45 PM

    • room 713 of the Metro Toronto Convention Centre.

  • Register: If you are interested in attending, please RSVP using the following link: Affiliated Event Registration

The Dive into Systems project page.

Overview

The significant expense of modern college textbooks limits availability to those who can afford them. As computational thinking and programming increasingly become desired skills, the computing community needs low-cost curricular materials to make computing courses available to all students. Online curricular materials are readily available for introductory programming courses. However, such resources for later computing courses do not exist. To address this need, we developed Dive into Systems, a free, online textbook for teaching introductory computer systems topics. Recently, we received an NSF grant to augment Dive into Systems with dynamic visualizations, interactive exercises, and worked examples making it a complete textbook with online resources that will include exercises for students and supplemental resources for instructors.

The goal of the event is to share our current progress on interactive tool development with the Computer Science Education community, discuss issues that students face in learning introductory systems topics, brainstorm interactive materials that could help instructors address those needs, and recruit exercise developers for years 2-4 of our project. The Dive into Systems project has the potential to help the field of computing become more equitable by developing a high-quality, free, online textbook that can be used by college students anywhere. Learn more at the Dive into Systems Webpage

Why you should attend

Please join us if you are interested in computer systems and providing feedback and ideas for adding interactive content to our free, on-line textbook that introduces computer systems topics and parallel computing.

We anticipate participants will be CS educators who are currently are exercise developers for Dive into Systems, faculty who currently use (or are interested in using) Dive into Systems for their courses, faculty who are interested in discussing new strategies to teach computer systems topics to their students, and those who are interested in interactive tools for teaching systems topics.

Additionally, we are also using this event to recruit official exercise developers for our NSF-sponsored project. Extersize developers play a specific role in our project and are awarded a stipend for their participation.

Register

If you are interested in attending, please RSVP using the following link: Affiliated Event Registration

Event Organizers

The event organizers are the three authors of Dive into Systems, and lead the Dive into Systems project (diveintosystems.org), which is currently funded on a 3-year NSF grant and received a 2019 SIGCSE Special Projects Grant.

  • Suzanne J. Matthews is an associate professor of computer science at West Point. She has taught students parallel computing and computer systems concepts in various courses. As a PI of the CSinParallel project, she has led or co-led approximately 5 SIGCSE workshops.

  • Tia Newhall is a professor of computer science at Swarthmore College, where she teaches courses in systems and parallel computing. Her research interests are in parallel and distributed systems, and CS Education.

  • Kevin C. Webb is an associate professor of computer science at Swarthmore College. He has taught systems courses to students for over a decade. As a PI of the Basic Data Structures Inventory (BDSI), he facilitated yearly SIGCSE meetings with a panel of consulting experts.

Event Significance/Purpose

Cost-effective computing materials are needed to make computer systems content accessible to everyone. The ACM-IEEE CS2013 Curriculum recommends at least 38 hours of System Fundamentals (SF) and Architecture & Organization (AR) coverage in the core computing program, along with an additional 15 hours of Parallel & Distributed Computing (PDC). The NSF/IEEE-TCPP Curriculum Initiative curricular guidelines further specify expanded coverage of core systems and PDC topics. To help make these concepts accessible to everyone, we developed Dive into Systems, a free, online textbook for teaching computer systems, architecture and PDC for students with only a CS1 background. Dive into Systems was awarded a SIGCSE 2019 Special Projects Grant, which we used to run an early adopter program in the 2019-2020 academic year.

Most recently, this project was awarded an NSF grant to expand the book with interactive elements to better serve students and faculty. Research in Education demonstrates that learning is an active endeavor. Web-based learning materials offer new forms of dynamic and interactive content with the potential to transform computer science education. Prior work has shown that students spend significantly more time with course materials that include dynamic visualizations compared to text alone. Students also voluntarily complete additional interactive exercises, even after meeting requirements for course credit. The literature strongly supports our belief that augmenting Dive into Systems with interactive exercises will facilitate student understanding of systems topics.

A large portion of the project is to develop, implement, and evaluate interactive exercises to add to our free on-line book. Exercises will be developed by recruited exercise developers and implemented primarily using the Runestone Framework. Runestone currently supports some of the interactive functionality we need, and we will build the other functionality as part of this project. Our exercise developers are participants from the computer science community who will work in smaller sub-topic focused groups which will include topics on C programming, assembly programming, binary representation, the memory hierarchy and caching, computer architecture, operating systems, and parallel computing and code optimization.

For the next three years, we plan to conduct yearly meetings at the SIGCSE conference that present completed work, brainstorm ways to create and improve new and existing interactive materials, and recruit the exercise developers that play a central role in our project. The primary goals of this event are to spark interest in our project, to recruit external experts to apply to be participants, to identify people interested in specific topics, to create some initial momentum on generating ideas for interactive exercises, and to specifically focus on recruiting participants and spawning ideas for the year 1 focus topics. The yearly meetings at SIGCSE will yield a pool of applicants and result in a git repo of initial content and ideas generated during the meeting.

Tentative Agenda

  • 1:00 Welcome An introduction of the project and its goals, including a summary of participation benefits,outcomes, expectations and project timeline.We will discuss co-PIs role in the working groups and present the main 6 topic areas for working groups.

  • 1:20-2:30pm Overview of Existing Tools

    • Existing Runestone Features

    • C Tutor/ASM Tutor Demos (15 min) Q&A (15 min) 2pm Planned Extensions

    • Other tools/interactivity we plan to build (Cache/circuit tracing)

    • Group Discussion Question: Do you have any feedback on our planned and existing tools?

  • 2:30-3:30pm Breakout Session I (World Cafe model) The first 45 minutes: participants rotate every 15 minutes between three discussion tables. Each discussion table will focus on answering the questions about the types of interactivity they would like to see and that would be most useful. Last 15 minutes: last group at each table reports back to group (5 minutes each table)

  • 3:30-3:50pm break (Coffee Break)

  • 3:50-4:30pm: Part II: Focus on topic-specific Interactive Exercises: Introduction to Part II of event, the topic-focused part of session, and a presentation from current exercise developers.

  • 4:30-5:30: Breakout Session II Topic-focused group discussion (each table has a different topic associated with it; participants spend the entire time at the same table). Will send out a survey ahead of the session; people will be assigned to tables for the duration of this breakout session. 45 minutes of the session is a discussion on 2 questions and the last 15 minutes will be used to report back to the larger group. The 2 focus questions are:

    • (1) What concepts associated with the table’s topic do students have particular difficulty with?

    • (2) What kind of topic-specific interactive problems would help students?

  • 5:30: Wrap-up (15-30 minutes)

  • Post-meeting informal meet-up for dinner for any participants interested in further informal discussion post-event.

While not required, participants are strongly recommended to bring a laptop to participate in activities.

Contact Info

Mail us at authors@diveintosystems.org with any questions.