Asee peer logo

Work in Progress: A Seamless, Customizable e-Book for Introductory Programming Courses

Download Paper |


2021 ASEE Virtual Annual Conference Content Access


Virtual Conference

Publication Date

July 26, 2021

Start Date

July 26, 2021

End Date

July 19, 2022

Conference Session

Computers in Education 2 - Programming 2

Tagged Division

Computers in Education

Tagged Topic


Page Count


Permanent URL

Download Count


Request a correction

Paper Authors


Petra Bonfert-Taylor Dartmouth College

visit author page

Petra Bonfert-Taylor is the Associate Dean for Diversity and Inclusion and a Professor and Instructional Designer at the Thayer School of Engineering at Dartmouth College. She received her Ph.D. in Mathematics from Technical University of Berlin (Germany) in 1996 and subsequently spent three years as a postdoctoral fellow at the University of Michigan before accepting a tenure-track position in the Mathematics Department at Wesleyan University. She left Wesleyan as a tenured full professor in 2015 for her current position at Dartmouth College. Petra has published extensively and lectured widely to national and international audiences. Her work has been recognized by the National Science Foundation with numerous research grants. She is equally passionate about her teaching and has recently designed and created a seven-MOOC Professional Certificate on C-programming for edX for which her team won the “2019 edX Prize for Exceptional Contributions in Online Teaching and Learning”. Previously she designed a MOOC “Analysis of a Complex Kind” on Coursera. The recipient of the New Hampshire High Tech Council 2018 Tech Teacher of the Year Award, the Binswanger Prize for Excellence in Teaching at Wesleyan University and the Excellence in Teaching Award at the Thayer School of Engineering, Petra has a strong interest in broadening access to high-quality higher education and pedagogical innovations that aid in providing equal opportunities to students from all backgrounds.

visit author page

author page

Simon Ethan Oster Dartmouth College

Download Paper |


Introductory computer programming courses are essential in providing students with marketable skills; but in a fast-paced course, the transition into them can be daunting to new coders. As the number of sites students must access to find various course materials – such as coding environments, course notes, lecture videos, and assignments – increases, so does the complexity of the course. Without a central searchable repository for all course materials, students often waste time flipping through pages of printed notes or scrubbing through videos in an effort to find an answer to one of their many questions.

This project describes the creation of a live e-textbook which combines all of these course materials, including live coding windows, into a unified whole. More specifically, by organizing the live e-textbook following the course structure, students are able to move through the chapters in a front-to-back-cover manner that mimics traditional textbooks while providing access to all necessary resources in one place. The live e-textbook can be instantly exported into a PDF version, which still compiles all the course materials into one place. While interactive content, such as videos and coding windows, appears in an alternate static version, students are provided a QR code for each such instance, with which they can easily access the live content if desired. The platform used to create our e-book is PreTeXt, which is an XML-based markup language that combines the best of LaTeX and HTML, and that can output, amongst others, both web and PDF content. In-class activities, which range from brainstorming questions to entire coding problems, are embedded in the book. Auto-grading coding windows with our C-programming exercises are directly embedded into the HTML version of the textbook, where students can test code and check their work without needing to navigate away from the related notes and activities. The PDF version of the book contains the starter code provided to students for such a coding problem along with a QR code to quickly access the live version.

Short interactive coding videos introduce students to new content; at first sight these appear to be ordinary videos, but a closer look reveals that students can pause at any point and edit the code directly in the video being presented in order to better grasp the demonstrated concepts. At times during the course, there is a need for students to directly work on our Linux course servers. When those moments arise, embedded server windows allow students to use their single sign-on to log into the course server, directly from the relevant page of the textbook.

While the content of the book is organized into clearly marked chapters, ordered chronologically, an index in the book’s backmatter provides students with a list of important terms. Each item in the index is linked to a pop-up box that provides a quick definition or example for that particular term, with the option to be directed to the actual location in the book where the item is defined.

The HTML version of the e-book is hosted on a Runestone Interactive server, which provides additional functionality to both the students and instructors. For example, student responses to reading questions can be viewed, commented upon, and graded by the instructor, in-class activities can be monitored in real-time, and new code can be pushed out to students during class. An LTI integration is on the horizon. The book’s source (XML) code is modular and can easily be rearranged to accommodate other course structures. PreTeXt software is open source, making it possible to produce an interactive, flexible e-textbook with a print option for students free of charge. Runestone server software is open-source as well; hosting a Runestone book can either take place directly on Runestone or via acquisition of space on an independent server.

Student feedback will be collected and analyzed during the next course offering.

Bonfert-Taylor, P., & Oster, S. E. (2021, July), Work in Progress: A Seamless, Customizable e-Book for Introductory Programming Courses Paper presented at 2021 ASEE Virtual Annual Conference Content Access, Virtual Conference.

ASEE holds the copyright on this document. It may be read by the public free of charge. Authors may archive their work on personal websites or in institutional repositories with the following citation: © 2021 American Society for Engineering Education. Other scholars may excerpt or quote from these materials with the same citation. When excerpting or quoting from Conference Proceedings, authors should, in addition to noting the ASEE copyright, list all the original authors and their institutions and name the host city of the conference. - Last updated April 1, 2015