Skip to Main Content
Computer science academics and professionals typically consider their contributions in terms of the algorithms, applications, and techniques that they develop. Yet equally important are the tools computer scientists provide to others, including toolkits, libraries, APIs, SDKs and frameworks. Such tools radically shape how most developers think about possible solutions within an unfamiliar problem space. In this keynote, I describe how interface toolkits for novel application areas enhance the creativity of `average' developers. By removing low-level implementation burdens and supplying appropriate building blocks, toolkits give people a language to think about new interface genres, which in turn allows them to concentrate on creative designs. As a consequence, programmers can rapidly generate and test new ideas, replicate and refine ideas presented by others, and create demonstrations for others to try. To illustrate, I describe example toolkits we have built and how people have leveraged them to create innovative interfaces.