@article{wang_rao_kwatra_milliken_dong_gomes_martin_catete_isvik_barnes_et al._2023, title={A Case Study on When and How Novices Use Code Examples in Open-Ended Programming}, url={https://doi.org/10.1145/3587102.3588774}, DOI={10.1145/3587102.3588774}, abstractNote={Many students rely on examples when learning to program, but they often face barriers when incorporating these examples into their own code and learning the concepts they present. As a step towards designing effective example interfaces that can support student learning, we investigate novices' needs and strategies when using examples to write code. We conducted a study with 12 pairs of high school students working on open-ended game design projects, using a system that allows students to browse examples based on their functionality, and to view and copy the example code. We analyzed interviews, screen recordings, and log data, identifying 5 moments when novices request examples, and 4 strategies that arise when students use examples. We synthesize these findings into principles that can inform the design of future example systems to better support students.}, journal={PROCEEDINGS OF THE 2023 CONFERENCE ON INNOVATION AND TECHNOLOGY IN COMPUTER SCIENCE EDUCATION, ITICSE 2023, VOL 1}, author={Wang, Wengran and Rao, Yudong and Kwatra, Archit and Milliken, Alexandra and Dong, Yihuan and Gomes, Neeloy and Martin, Sarah and Catete, Veronica and Isvik, Amy and Barnes, Tiffany and et al.}, year={2023}, pages={82–88} } @article{wang_bacher_isvik_limke_sthapit_shi_tabarsi_tran_catete_barnes_et al._2023, title={Investigating the Impact of On-Demand Code Examples on Novices' Open-Ended Programming Projects}, url={https://doi.org/10.1145/3568813.3600141}, DOI={10.1145/3568813.3600141}, abstractNote={Background and Context: Open-ended programming projects encourage novice students to choose and pursue projects based on their own ideas and interests, and are widely used in many introductory programming courses. However, novice programmers encounter challenges exploring and discovering new ideas, implementing their ideas, and applying unfamiliar programming concepts and APIs. Code examples are one of the primary resources students use to apply code usage patterns and learn API knowledge, but little work has investigated the effect of having access to examples on students’ open-ended programming experience. Objectives: In this work, we evaluate the impact of code examples on open-ended programming, through a study with 46 local high school students in a full-day coding workshop. Method: We conducted a controlled study, where half of the students had full access to 37 code examples using an example browser system called Example Helper and the other half had 5 standard, tutorial examples. Findings: We found that students who had access to all 37 code examples used a significantly larger variety of code APIs, perceived the programming as relatively more creative, but also experienced a higher task load. We also found suggestive evidence of a better post-assignment performance from the example group, showing that some students were able to learn and apply the knowledge they learned from examples to a new programming task.}, journal={PROCEEDINGS OF THE 2023 ACM CONFERENCE ON INTERNATIONAL COMPUTING EDUCATION RESEARCH V.1, ICER 2023 V1}, author={Wang, Wengran and Bacher, John and Isvik, Amy and Limke, Ally and Sthapit, Sandeep and Shi, Yang and Tabarsi, Benyamin T. and Tran, Keith and Catete, Veronica and Barnes, Tiffany and et al.}, year={2023}, pages={464–475} } @article{limke_milliken_catete_gransbury_isvik_price_martens_barnes_2022, title={Case Studies on the use of Storyboarding by Novice Programmers}, DOI={10.1145/3502718.3524749}, abstractNote={Our researchers seek to support students in building block-based programming projects that are motivating and engaging as well as valuable practice in learning to code. A difficult part of the programming process is planning. In this research, we explore how novice programmers used a custom-built planning tool, PlanIT, contrasted against how they used storyboarding when planning games. In a three-part study, we engaged novices in planning and programming three games: a maze game, a break-out game, and a mashup of the two. In a set of five case studies, we show how five pairs of students approached the planning and programming of these three games, illustrating that students felt more creative when storyboarding rather than using PlanIT. We end with a discussion on the implications of this work for designing supports for novices to plan open-ended projects.}, journal={PROCEEDINGS OF THE 27TH ACM CONFERENCE ON INNOVATION AND TECHNOLOGY IN COMPUTER SCIENCE EDUCATION, ITICSE 2022, VOL 1}, author={Limke, Ally and Milliken, Alexandra and Catete, Veronica and Gransbury, Isabella and Isvik, Amy and Price, Thomas and Martens, Chris and Barnes, Tiffany}, year={2022}, pages={318–324} } @article{wang_le meur_bobbadi_akram_barnes_martens_price_2022, title={Exploring Design Choices to Support Novices' Example Use During Creative Open-Ended Programming}, DOI={10.1145/3478431.3499374}, abstractNote={Open-ended programming engages students by connecting computing with their real-world experience and personal interest. However, such open-ended programming tasks can be challenging, as they require students to implement features that they may be unfamiliar with. Code examples help students to generate ideas and implement program features, but students also encounter many learning barriers when using them. We explore how to design code examples to support novices' effective example use by presenting our experience of building and deploying Example Helper, a system that supports students with a gallery of code examples during open-ended programming. We deployed Example Helper in an undergraduate CS0 classroom to investigate students' example usage experience, finding that students used different strategies to browse, understand, experiment with, and integrate code examples, and that students who make more sophisticated plans also used more examples in their projects.}, journal={PROCEEDINGS OF THE 53RD ACM TECHNICAL SYMPOSIUM ON COMPUTER SCIENCE EDUCATION (SIGCSE 2022), VOL 1}, author={Wang, Wengran and Le Meur, Audrey and Bobbadi, Mahesh and Akram, Bita and Barnes, Tiffany and Martens, Chris and Price, Thomas}, year={2022}, pages={619–625} } @article{bacher_martens_2021, title={Interactive Fiction Creation in Villanelle: Understanding and Supporting the Author Experience}, ISSN={["1943-6092"]}, DOI={10.1109/VL/HCC51201.2021.9576417}, abstractNote={Villanelle is an interactive fiction authoring tool designed to support autonomous non-player characters, or “char-acter AI.” Character AI is notoriously challenging for interactive fiction authors to develop, especially for authors approaching interactive fiction from a writing rather than programming background. This paper describes a participatory design process in which we assess the author experience with Villanelle and build a new tool iteration to support their needs. The results of our first user study demonstrate the strong potential of Villanelle's incorporation of behavior trees as an easy-to-Learn computational model for character AI, but they also indicate syntax challenges for inexperienced programmers. Consequently, we developed a block-based programming interface for Villanelle and recruited a new set of study participants to evaluate this iteration using the same study instruments. The results indicate improvements in Villanelle's usability and creativity support for inexperienced programmers.}, journal={2021 IEEE SYMPOSIUM ON VISUAL LANGUAGES AND HUMAN-CENTRIC COMPUTING (VL/HCC 2021)}, author={Bacher, John Thomas and Martens, Chris}, year={2021} } @article{eger_martens_sauma chacon_alfaro cordoba_hidalgo-cespedes_2021, title={Operationalizing Intentionality to Play Hanabi With Human Players}, volume={13}, ISSN={["2475-1510"]}, DOI={10.1109/TG.2020.3009359}, abstractNote={The cooperative card game Hanabi has become of increasing interest in the community, since it combines partially hidden information with information exchange using restricted communication channels. In this article, we describe artificial intelligence agents that are designed to play the game with human players. Our agents make use of the fact that human players expect other players to act intentionally by formulating goals of their own and planning how to achieve them. They then use the available actions available to communicate their plan to the human player. On the flip side, our agents also interpret the actions performed by the human player as containing information about their plans. We present two different variants of our agent that perform this interpretation in different ways. Additionally, since part of human communication happens in subtle indirect ways, we also demonstrate that our agent can use the timing of the human player’s actions as additional information. In order to validate our agents, we have performed two separate experiments: one was done to validate the intentional component of the agents, while the other focused on the interpretation of received information. In this article, we also present the results obtained from these two experiments.}, number={4}, journal={IEEE TRANSACTIONS ON GAMES}, author={Eger, Markus and Martens, Chris and Sauma Chacon, Pablo and Alfaro Cordoba, Marcela and Hidalgo-Cespedes, Jeisson}, year={2021}, month={Dec}, pages={388–397} } @article{card_wang_martens_price_2021, title={Scaffolding Game Design: Towards Tool Support for Planning Open-Ended Projects in an Introductory Game Design Class}, ISSN={["1943-6092"]}, DOI={10.1109/VL/HCC51201.2021.9576209}, abstractNote={One approach to teaching game design to students with a wide variety of disciplinary backgrounds is through team game projects that span multiple weeks, up to an entire term. However, open-ended, creative projects introduce a gamut of challenges to novice programmers. Our goal is to assist game design students with the planning stage of their projects. This paper describes our data collection process through three course interventions and student interviews, and subsequent analysis in which we learned students had difficulty expressing their creative vision and connecting the game mechanics to the intended player experience. We present these results as a step towards the goal of scaffolding the planning process for student game projects, supporting more creative ideas, clearer communication among team members, and a stronger understanding of human-centered design in software development.}, journal={2021 IEEE SYMPOSIUM ON VISUAL LANGUAGES AND HUMAN-CENTRIC COMPUTING (VL/HCC 2021)}, author={Card, Alexander and Wang, Wengran and Martens, Chris and Price, Thomas}, year={2021} } @article{striner_azad_martens_2019, title={A Spectrum of Audience Interactivity for Entertainment Domains}, volume={11869}, ISBN={["978-3-030-33893-0"]}, ISSN={["1611-3349"]}, DOI={10.1007/978-3-030-33894-7_23}, abstractNote={The concept of audience interactivity has been rediscovered across many domains of storytelling and entertainment—e.g. digital games, in-person role-playing, film, theater performance, music, and theme parks—that enrich the form with new idioms, language, and practices. In this paper, we introduce a Spectrum of Audience Interactivity that establishes a common vocabulary for the design space across entertainment domains. Our spectrum expands on an early vocabulary conceptualized through co-design sessions for interactive musical performances. We conduct a cross-disciplinary literature review to evaluate and iterate upon this vocabulary, using our findings to develop our validated spectrum.}, journal={INTERACTIVE STORYTELLING, ICIDS 2019}, author={Striner, Alina and Azad, Sasha and Martens, Chris}, year={2019}, pages={214–232} } @article{summerville_martens_harmon_mateas_osborn_wardrip-fruin_jhala_2019, title={From Mechanics to Meaning}, volume={11}, ISSN={["2475-1510"]}, DOI={10.1109/TCIAIG.2017.2765599}, abstractNote={While generative approaches to game design offer great promise, systems can only reliably generate what they can “understand,” which is often represented in a limited, implicit form in hand-crafted evaluation functions or constructive rules. Proceduralist readings, a semiformal approach for interpreting the meaning of a game based on its underlying processes and interactions in conjunction with aesthetic and cultural cues, offer a novel, systematic approach to game understanding. We formalize proceduralist argumentation as a logic program that performs static reasoning over game specifications to derive higher level meanings, as part of Gemini, a bidirectional game analysis and generation system.}, number={1}, journal={IEEE TRANSACTIONS ON GAMES}, author={Summerville, Adam and Martens, Chris and Harmon, Sarah and Mateas, Michael and Osborn, Joseph and Wardrip-Fruin, Noah and Jhala, Arnav}, year={2019}, month={Mar}, pages={69–78} } @article{miller_dighe_martens_jhala_2019, title={Stories of the Town: Balancing Character Autonomy and Coherent Narrative in Procedurally Generated Worlds}, DOI={10.1145/3337722.3341850}, abstractNote={Procedural narrative generation systems often focus on autonomous agent based simulations to create emergent interactions, plan-based approaches to provide guarantees for coherence, or using elements of simulation to guide plan-based approaches. These different approaches, with some exceptions, tend to trade off character autonomy in service of more designer controlled experiences or content authoring in service of encoding domain knowledge of possible branches of the narrative and participating characters. We have developed a system, called Stories of the Town, that automatically generates narratives by synthesizing three distinct approaches to traditional narrative generation: context-free grammars, planning, and simulation. More specifically, our system generates narratives via probabilistic context-free grammars applied to state-space planning problem solutions from planning problem formulations of simulated character models. Our system uses character simulations to generate variety in narratives and ensures narrative coherence through authoring probabilistic context-free grammars. By doing so, this system takes advantage of the strengths of each individual approach (e.g. controllability, scalability, intentionality, and variety) to generate narratives that are extensible, expressive, consistent with simulated character personalities and histories, and controllable. We show that this system has strong potential in automatically generating varied, complex, consistent, and goal-oriented narratives. Further development of the system will allow for more efficient utilization of the strengths of each narrative generation approach while also using these strengths to supplement their individual shortcomings.}, journal={PROCEEDINGS OF THE 14TH INTERNATIONAL CONFERENCE ON THE FOUNDATIONS OF DIGITAL GAMES (FDG'19)}, author={Miller, Chris and Dighe, Mayank and Martens, Chris and Jhala, Arnav}, year={2019} } @article{martens_iqbal_2019, title={Villanelle: An Authoring Tool for Autonomous Characters in Interactive Fiction}, volume={11869}, ISBN={["978-3-030-33893-0"]}, ISSN={["1611-3349"]}, DOI={10.1007/978-3-030-33894-7_29}, abstractNote={Our goal is to discover tool and language design principles that enable powerful, usable autonomous character authorship for diverse audiences of storytellers. This paper describes the Villanelle project, an approach to interactive narrative authoring that supports seamless integration of autonomous characters into choice-based storytelling. We present our computational model based on behavior trees uniformly for scripting agent interaction, user interaction, and narrative events; our stand-alone authoring tool, which provides an integrated development and testing environment for authoring with this model; and our JavaScript API for web-based development, demonstrating the expressiveness and simplicity of our approach through two case studies.}, journal={INTERACTIVE STORYTELLING, ICIDS 2019}, author={Martens, Chris and Iqbal, Owais}, year={2019}, pages={290–303} } @article{morrison_martens_2017, title={A Generative Model of Group Conversation}, DOI={10.1145/3102071.3116218}, abstractNote={Conversations with non-player characters (NPCs) in games are typically confined to dialogue between a human player and a virtual agent, where the conversation is initiated and controlled by the player. To create richer, more believable environments for players, we need conversational behavior to reflect initiative on the part of the NPCs, including conversations that include multiple NPCs who interact with one another as well as the player. We describe a generative computational model of group conversation between agents, an abstract simulation of discussion in a small group setting. We define conversational interactions in terms of rules for turn taking and interruption, as well as belief change, sentiment change, and emotional response, all of which are dependent on agent personality, context, and relationships. We evaluate our model using a parameterized expressive range analysis, observing correlations between simulation parameters and features of the resulting conversations. This analysis confirms, for example, that character personalities will predict how often they speak, and that heterogeneous groups of characters will generate more belief change.}, journal={PROCEEDINGS OF THE 12TH INTERNATIONAL CONFERENCE ON THE FOUNDATIONS OF DIGITAL GAMES (FDG'17)}, author={Morrison, Hannah and Martens, Chris}, year={2017} } @article{alexander_martens_2017, title={Deriving Quests from Open World Mechanics}, DOI={10.1145/3102071.3102096}, abstractNote={Formal models of games help us account for and predict behavior, leading to more robust and innovative designs. While the games research community has proposed many formalisms for both the "game half" (game models, game description languages) and the "human half" (player modeling) of a game experience, little attention has been paid to the interface between the two, particularly where it concerns the player expressing her intent toward the game. We describe an analytical and computational toolbox based on programming language theory to examine the phenomenon sitting between control schemes and game rules, which we identify as a distinct player intent language for each game.}, journal={PROCEEDINGS OF THE 12TH INTERNATIONAL CONFERENCE ON THE FOUNDATIONS OF DIGITAL GAMES (FDG'17)}, author={Alexander, Ryan and Martens, Chris}, year={2017} } @inproceedings{alexander_martens_2017, title={Deriving quests from open world mechanics}, DOI={10.1145/3102071.3102098}, abstractNote={Open world games present players with more freedom than games with linear progression structures. However, without clearly-defined objectives, they often leave players without a sense of purpose. Most of the time, quests and objectives are hand-authored and overlaid atop an open world's mechanics. But what if they could be generated organically from the gameplay itself? The goal of our project was to develop a model of the mechanics in Minecraft that could be used to determine the ideal placement of objectives in an open world setting. We formalized the game logic of Minecraft in terms of logical rules that can be manipulated in two ways: they may be executed to generate graphs representative of the player experience when playing an open world game with little developer direction; and they may be statically analyzed to determine dependency orderings, feedback loops, and bottlenecks. These analyses may then be used to place achievements on gameplay actions algorithmically.}, booktitle={Proceedings of the 12th International Conference on the Foundations of Digital Games (FDG'17)}, author={Alexander, R. and Martens, C.}, year={2017} } @inbook{martens_bosser_ferreira_cavazza_2013, title={Linear Logic Programming for Narrative Generation}, ISBN={9783642405631 9783642405648}, ISSN={0302-9743 1611-3349}, url={http://dx.doi.org/10.1007/978-3-642-40564-8_42}, DOI={10.1007/978-3-642-40564-8_42}, abstractNote={In this paper, we explore the use of Linear Logic programming for story generation. We use the language Celf to represent narrative knowledge, and its own querying mechanism to generate story instances, through a number of proof terms. Each proof term obtained is used, through a resource-flow analysis, to build a directed graph where nodes are narrative actions and edges represent inferred causality relationships. Such graphs represent narrative plots structured by narrative causality. This approach is a candidate technique for narrative generation which unifies declarative representations and generation via query and deduction mechanisms.}, booktitle={Logic Programming and Nonmonotonic Reasoning}, publisher={Springer Berlin Heidelberg}, author={Martens, Chris and Bosser, Anne-Gwenn and Ferreira, João F. and Cavazza, Marc}, year={2013}, pages={427–432} }