Abstract:
Computing knowledge is valuable to people besides just software developers. People from various disciplines use computing to create programs that support their personal interests and address domain-specific tasks. These learners, often called end-user programmers, are most interested in learning about the goals that can be achieved with programming and creating programs that satisfy these goals using high-level tools. In contrast, conventional computing education materials prioritize writing code from scratch by emphasizing data structures, language syntax, and software development practices. As a result, computing education fails to align with the needs of end-user programmers.
My research aims to improve computing education for end-user programmers through two synergistic goals. First, I explore the effectiveness of instructional materials that emphasize the purpose of code with students who may be interested in becoming end-user programmers. Second, I work with instructors to understand how they teach computing in diverse disciplines. Informed by instructor values and practices, I plan to design systems for creating instructional material aimed at end-user programmers.
My research aims to improve computing education for end-user programmers through two synergistic goals. First, I explore the effectiveness of instructional materials that emphasize the purpose of code with students who may be interested in becoming end-user programmers. Second, I work with instructors to understand how they teach computing in diverse disciplines. Informed by instructor values and practices, I plan to design systems for creating instructional material aimed at end-user programmers.