Alexandra Milliken

dblp:214/7953 · also Alex Milliken · DBLP profile ↗
← Back
13ranked-venue papers
5as first author
5since 2021 · last 2023
0009-0000-6811-9065ORCID · corroborated

Domains — the database's venue-derived domains; a paper can count in several

Human-computer interaction and ubiquitous computing · 13 · 5 first-author · 5 since 2021
YearPublicationVenuePosition
2023 A Case Study on When and How Novices Use Code Examples in Open-Ended Programming
abstract
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.
Wengran Wang, Yudong Rao, Archit Kwatra, Alexandra Milliken, Yihuan Dong, Neeloy Gomes, Sarah Martin, Veronica Cateté, Amy Isvik, Tiffany Barnes, Chris Martens 0001, Thomas W. Price
ITiCSE (1)4
2022 Case Studies on the Use of Storyboarding by Novice Programmers
abstract
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.
Ally Limke, Alexandra Milliken, Veronica Cateté, Isabella Gransbury, Amy Isvik, Thomas W. Price, Chris Martens 0001, Tiffany Barnes
ITiCSE (1)2
2021 Exploring and Influencing Teacher Grading for Block-based Programs through Rubrics and the GradeSnap Tool
abstract
This article examines the grading process and profiles of secondary computer science teachers as they assess block-based student programming submissions. Through an iterative design process, we have created a new tool, Gradesnap, which streamlines how teachers can open, review, and evaluate student submissions within the same interface. Our study compares teachers’ grading processes using the different assessment formats, so that we can understand how their grading processes can be augmented or supported to reduce ’pain points’ and to enable teachers to provide more constructive and formative feedback for students. We use a case study approach to examine the experiences and outcomes of four secondary computer science teachers with varied teaching and assessment experience, when grading as usual, grading with a rubric, and grading with GradeSnap. Our study shows that when participants use GradeSnap, they are able to give supportive comments to lower performing and borderline students who need critical feedback to better understand misconceptions. We also discovered that the different grading processes provided a vehicle for reflection for some teachers in understanding their grading goals and how they enact them. This research is the first to examine teacher grading processes for computer science, and highlights the need for teacher preparation and support for providing programming feedback and assessment.
Alexandra Milliken, Veronica Cateté, Ally Limke, Isabella Gransbury, Hannah E. Chipman, Yihuan Dong, Tiffany Barnes
ICER1
2021 Novices' Learning Barriers When Using Code Examples in Open-Ended Programming
abstract
Open-ended programming increases students' motivation by allowing them to solve authentic problems and connect programming to their own interests. However, such open-ended projects are also challenging, as they often encourage students to explore new programming features and attempt tasks that they have not learned before. Code examples are effective learning materials for students and are well-suited to supporting open-ended programming. However, there is little work to understand how novices learn with examples during open-ended programming, and few real-world deployments of such tools. In this paper, we explore novices' learning barriers when interacting with code examples during open-ended programming. We deployed Example Helper, a tool that offers galleries of code examples to search and use, with 44 novice students in an introductory programming classroom, working on an open-ended project in Snap. We found three high-level barriers that novices encountered when using examples: decision, search, and integration barriers. We discuss how these barriers arise and design opportunities to address them.
Wengran Wang, Archit Kwatra, James Skripchuk, Neeloy Gomes, Alexandra Milliken, Chris Martens 0001, Tiffany Barnes, Thomas W. Price
ITiCSE (1)5
2021 PlanIT! A New Integrated Tool to Help Novices Design for Open-ended Projects
abstract
Project-based learning can encourage and motivate students to learn through exploring their own interests, but introduces special challenges for novice programmers. Recent research has shown that novice students perceive themselves to be "bad at programming, especially when they do not know how to start writing a program, or need to create a plan before getting started. In this paper, we present PlanIT, a guided planning tool integrated with the Snap! programming environment designed to help novices plan and program their open-ended projects. Within PlanIT, students can add a description for their project, use a to do list to help break down the steps of implementation, plan important elements of their program including actors, variables, and events, and view related example projects. We report findings from a pilot study of high school students using PlanIT, showing that students who used the tool learned to make more specific and actionable plans. Results from student interviews show they appreciate the guidance that PlanIT provides, as well as the affordances it offers to more quickly create program elements.
Alexandra Milliken, Wengran Wang, Veronica Cateté, Sarah Martin, Neeloy Gomes, Yihuan Dong, Rachel Harred, Amy Isvik, Tiffany Barnes, Thomas W. Price, Chris Martens 0001
SIGCSE1
2020 The Beauty and Joy of Computing Curriculum and Teacher Professional Development
abstract
The Beauty and Joy of Computing (BJC) is a CS Principles course developed at UC Berkeley for high school juniors through university non-majors. Together, UC Berkeley, the Education Development Center, and NC State have brought BJC to 700+ teachers nationwide. Since 2011, NC State has developed regional partnerships and a train-the-trainer model to offer nationwide PD to 600+ high school teachers. Our guiding philosophy is to meet students where they are, but not leave them there. BJC covers the big ideas and computational thinking practices in the AP CSP curriculum framework using Snap!, an easy-to-learn blocks-based programming language, and powerful computing ideas like recursion, higher-order functions, and computability. Through BJC, students create beautiful images, and realize that code itself can be beautiful. Having fun is an explicit course goal. BJC takes a "lab-centric" approach, and most learning occurs through guided programming labs where students explore and play. In this workshop, we will provide an overview of BJC, share experiences as instructors at university and high school levels, and share details of summer PD opportunities. Laptop needed.
Michael Ball 0001, Lauren Mock, Dan Garcia 0001, Tiffany Barnes, Marnie Hill, Alexandra Milliken, Josh Paley, Efrain Lopez, Jason Bohrer
SIGCSE6
2020 Investigating Different Assignment Designs to Promote Collaboration in Block-Based Environments
abstract
Pair Programming is often employed in educational settings as a means of promoting collaboration and scaffolding the assignment difficulty for teams. While much research supports its inclusion as a pedagogical practice at the university level, some research has demonstrated in K-12 contexts, it can potentially lead to inequitable learning enviroments and create dynamics between partners that might negatively effect novice learners. New block-based programming environments like Netsblox have attempted to address this by creating ways for both partners to program simultaneously, but this feature has yet to be examined in detail. In this paper, we introduce several modes of Collaboration afforded by Netsblox. This includes Pair-Separate, Pair-Together, and Partner Puzzles - a mode that Splits the necessary blocks to build the assignment between team members. From an initial pilot study involving 25 pairs of middle and high school students, we find that most pairs preferred working on assignments in the Partner Puzzle mode as it presented a fun challenge to teams. We end on recommendations for building assignments using this methodology and future research directions investigating the role of collaboration in programming
Nicholas Lytle, Alexandra Milliken, Veronica Cateté, Tiffany Barnes
SIGCSE2
2020 Crescendo: Engaging Students to Self-Paced Programming Practices
abstract
This paper introduces Crescendo, a self-paced programming practice environment that combines the block-based and visual, interactive programming of Snap!, with the structured practices commonly found in Drill-and-Practice Environments. Crescendo supports students with Parsons problems to reduce problem complexity, Use-Modify-Create task progressions to gradually introduce new programming concepts, and automated feedback and assessment to support learning. In this work, we report on our experience deploying Crescendo in a programming camp for middle school students, as well as in an introductory university course for non-majors. Our initial results from field observations and log data suggest that the support features in Crescendo kept students engaged and allowed them to progress through programming concepts quickly. However, some students still struggled even with these highly-structured problems, requiring additional assistance, suggesting that even strong scaffolding may be insufficient to allow students to progress independently through the tasks.
Wengran Wang, Rui Zhi, Alexandra Milliken, Nicholas Lytle, Thomas W. Price
SIGCSE3
2020 Poster: Designing GradeSnap for Block-Based Code
abstract
Many K-12 CS education instructors are new to teaching computing and use block-based programming (BBP), allowing them and their students to learn computing concepts with less frustration. Based on prior work with instructors, we found that they need assistance with grading student projects as they are new to coding and developing corresponding assessments. Existing methods are either not intuitive and too restrictive for custom assignments, or tediously unnecessary. Additionally, providing a grading support tool will help increase adoption of our Advanced Placement Computer Science Principles curriculum. Therefore, we began developing a tool to assist teachers with grading BBP projects. This paper reports on a modified User Experience Research method, which we used to determine the critical and necessary features needed for the tool to allow teachers to successfully and efficiently assess BBP student artifacts.
Alexandra Milliken, Veronica Cateté, Amy Isvik, Tiffany Barnes
VL/HCC1
2019 Use, Modify, Create: Comparing Computational Thinking Lesson Progressions for STEM Classes
abstract
Computational Thinking (CT) is being infused into curricula in a variety of core K-12 STEM courses. As these topics are being introduced to students without prior programming experience and are potentially taught by instructors unfamiliar with programming and CT, appropriate lesson design might help support both students and teachers. "Use-Modify-Create" (UMC), a CT lesson progression, has students ease into CT topics by first "Using" a given artifact, "Modifying" an existing one, and then eventually "Creating" new ones. While studies have presented lessons adopting and adapting this progression and advocating for its use, few have focused on evaluating UMC's pedagogical effectiveness and claims. We present a comparison study between two CT lesson progressions for middle school science classes. Students participated in a 4-day activity focused on developing an agent-based simulation in a block-based programming environment. While some classrooms had students develop code on days 2-4, others used a scaffolded lesson plan modeled after the UMC framework. Through analyzing student's exit tickets, classroom observations, and teacher interviews, we illustrate differences in perception of assignment difficulty from both the students and teachers, as well as student perception of artifact "ownership" between conditions.
Nicholas Lytle, Veronica Cateté, Danielle Boulden, Yihuan Dong, Jennifer Houchins, Alexandra Milliken, Amy Isvik, Dolly Bounajim, Eric N. Wiebe, Tiffany Barnes
ITiCSE6
2019 Effective Computer Science Teacher Professional Development: Beauty and Joy of Computing 2018
abstract
The Advanced Placement Computer Science Principles (AP CSP) course has been fully active for 2 years, garnering a large group of diverse students [2], and flaming the need for highly trained CSP teachers, especially in effective practices for diversity and equity. We have conducted summer professional development (PD) workshops from 2012-2018 which have prepared 748 teachers to teach AP CSP using the Beauty and Joy of Computing (BJC) curriculum. To improve equity and readiness for teaching, we have refined our PD by: shortening the PD from 6 weeks to 1 week; developing new, highly scaffolded pre-PD work; and modifying the in-person schedule to incorporate more pedagogy and teaching experiences, while continuing to provide in-depth, hands-on support for teachers to learn the basics of programming. The most recent revisions to our PD schedule resulted in improved post-PD survey results, with teachers from the 2018 cohort planning to adopt more of the BJC curriculum than in past years. From 2017 to 2018, planned adoption rates increased by 13%, resulting in 73% of the 2018 PD participants planning to adopt more than $60%$ of the BJC curriculum and 58% planning to adopt 80-$100% of the BJC curriculum in their classrooms in 2018-2019. In this paper, we discuss the most recent BJC PD implementation and provide evidence of increased teacher self-efficacy in areas including fostering interest in computing for underrepresented populations.
Alexandra Milliken, Christa Cody, Veronica Cateté, Tiffany Barnes
ITiCSE1
2019 Exploring the Impact of Worked Examples in a Novice Programming Environment
abstract
Research in a variety of domains has shown that viewing worked examples (WEs) can be a more efficient way to learn than solving equivalent problems. We designed a Peer Code Helper system to display WEs, along with scaffolded self-explanation prompts, in a block-based, novice programming environment called \snap. We evaluated our system during a high school summer camp with 22 students. Participants completed three programming problems with access to WEs on either the first or second problem. We found that WEs did not significantly impact students' learning, but may have impacted students' intrinsic cognitive load, suggesting that our WEs with scaffolded prompts may be an inherently different learning task. Our results show that WEs saved students time on initial tasks compared to writing code, but some of the time saved was lost in subsequent programming tasks. Overall, students with WEs completed more tasks within a fixed time period, but not significantly more. WEs may improve students' learning efficiency when programming, but these effects are nuanced and merit further study.
Rui Zhi, Thomas W. Price, Samiha Marwan, Alexandra Milliken, Tiffany Barnes, Min Chi
SIGCSE4
2018 AP CS Principles and The Beauty and Joy of Computing Curriculum: (Abstract Only)
abstract
The Beauty and Joy of Computing (BJC) is a CS Principles (CSP) course developed at UC Berkeley, intended for high school juniors through university non-majors. It was twice chosen as a CSP pilot, and both the College Board and code.org have endorsed it. Since 2011, we have offered professional development to over 400 high school teachers. BJC covers the big ideas and computational thinking practices required in the AP CSP curriculum framework, using an easy-to-learn blocks-based programming language called Snap! (based on Scratch). During this workshop, we will provide an overview of the BJC curriculum, share our experiences as instructors of the course at the university and high school levels, and share details of potential summer professional development opportunities. Attendees should be prepared to program a BJC project in the Snap! environment. Please bring laptops with the Chrome browser installed.
Alexandra Milliken, Michael Ball 0001, Lauren Mock
SIGCSE1