Many programming languages serve as interfaces that people can use to write programs. In our research, we have adapted many of the techniques of human-computer interaction in order to provide insight into the usability of programming language designs. These adaptations allow us to design languages that take the target users into account, as well as to assess the usability of the resulting languages.
In this tutorial, we will show how to integrate user-centered techniques into the design process of programming languages. This approach allows you, a language designer, to gather data from programmers and software engineers while designing your language in order to make your languages more usable. Then, you can conduct user studies to evaluate how effective your design is with users.
We will teach participants techniques for obtaining useful usability data from participants:
- Interviews and surveys
- Natural programming
- Usability studies, e.g. Wizard of Oz and think-aloud
- Comparative studies (A vs. B)
We will also address important practical considerations, such as participant recruitment and ethics. Part of the tutorial will be lecture-style. However, we hope that you bring your own language design questions to the tutorial. We will set aside time for you to work with us and other participants to practice developing studies about the questions that interest you most.
In order to help us customize the tutorial for you, we would appreciate it if you could pre-register.
Thu 27 AugDisplayed time zone: Eastern Time (US & Canada) change
09:00 - 12:30
Integrating User Centered Methods into Programming Language DesignTutorials at Tutorials 2
|Integrating User-Centered Methods into Programming Language Design|
Michael Coblenz Carnegie Mellon University, Jonathan Aldrich Carnegie Mellon University