Table of Contents
Fetching ...

EDBooks: AI-Enhanced Interactive Narratives for Programming Education

Steve Oney, Yue Shen, Fei Wu, Young Suh Hong, Ziang Wang, Yamini Khajekar, Jiacheng Zhang, April Yi Wang

TL;DR

This work proposes ways to combine large language models with traditional e-books to give readers the benefits of working with LLMs with the benefits of a traditional e-book (having a structure and content that is pedagogically sound).

Abstract

Large Language Models (LLMs) have shown the potential to be valuable teaching tools, with the potential of giving every student a personalized tutor. However, one challenge with using LLMs to learn new concepts is that when learning a topic in an unfamiliar domain, it can be difficult to know what questions to ask. Further, language models do not always encourage "active learning" where students can test and assess their understanding. In this paper, we propose ways to combine large language models with "traditional" learning materials (like e-books) to give readers the benefits of working with LLMs (the ability to ask personally interesting questions and receive personalized answers) with the benefits of a traditional e-book (having a structure and content that is pedagogically sound). This work shows one way that LLMs have the potential to improve learning materials and make personalized programming education more accessible to a broader audience.

EDBooks: AI-Enhanced Interactive Narratives for Programming Education

TL;DR

This work proposes ways to combine large language models with traditional e-books to give readers the benefits of working with LLMs with the benefits of a traditional e-book (having a structure and content that is pedagogically sound).

Abstract

Large Language Models (LLMs) have shown the potential to be valuable teaching tools, with the potential of giving every student a personalized tutor. However, one challenge with using LLMs to learn new concepts is that when learning a topic in an unfamiliar domain, it can be difficult to know what questions to ask. Further, language models do not always encourage "active learning" where students can test and assess their understanding. In this paper, we propose ways to combine large language models with "traditional" learning materials (like e-books) to give readers the benefits of working with LLMs (the ability to ask personally interesting questions and receive personalized answers) with the benefits of a traditional e-book (having a structure and content that is pedagogically sound). This work shows one way that LLMs have the potential to improve learning materials and make personalized programming education more accessible to a broader audience.

Paper Structure

This paper contains 44 sections, 8 figures, 4 tables.

Figures (8)

  • Figure 1: An illustration of EDBook content that describes the basics of Python modules. Readers learn through an interactive dialog (left column) that includes a natural language didactic dialog, multiple choice questions, and code writing questions. With EDBook, readers work through this narrative over time. At any point in the narrative, they can also interact with a context-aware LLM for additional questions. These dialogs can also include larger code samples that are incrementally built and explained over the course of the narrative (right column). Deictic pointers (represented as blue lines) can link the narratives with specific parts of code. At the bottom of the leftmost column, the reader is given three options for how to proceed with the narrative: two pre-built questions ("is random a built-in module?" and "Could we call import inside of rollDice?") and the option to query an LLM.
  • Figure 2: An illustration of different dialog system types along a continuum from less constrained input (left) to more (right).
  • Figure 3: Conceptually, EDBook dialogs are trees (left) but these trees are visually simplified and flattened in the reader UI (right) for readability. On the left is an illustration of an example dialog tree. Each node in the tree represents a message and is labeled according to its depth (1--5) and breadth-first search order (a--z). For example, 3a represents the leftmost node in the third layer. EDBook allows instructors to define a 'target' node (message 5d in this example) that represents completion of the learning goals for the page. In this example, the user is currently focused on message 4b, so 'ancestor' cells 1a, 2a, 3a, and 4b are visible in the UI (right). In the UI, users can also select pre-existing subsequent messages (5b and 5c) or write a custom message ('Edit') that will query an LLM to add a response message. The user's current node is part of the dialog tree but not on the path of the target, 5d. Thus, the user is also nudged to go to a node that would move them back towards target node 5d by back-tracking to node 3b (with a "back to main thread" button). The UI also shows icons () to indicate messages with multiple possible responses (right) and calls attention to the first message where the user's path diverges away from the target message (in red ).
  • Figure 4: Warning labels are added to any cells that contain un-verified LLM-generated content.
  • Figure 5: Instructors can work with larger codebases that change over time. Readers can see these incremental code edits, as diffs.
  • ...and 3 more figures