Faculty Candidate Seminar

Web Automation for Everyone: From PBD to PBX

Sarah ChasinsPh.D. CandidateUniversity of California, Berkeley

We have promised social scientists a data revolution, but it hasn't arrived. What stands between practitioners and the data-driven insights they want? Acquiring the data. In particular, acquiring the social media, online forum, and other web data that was supposed to help them produce big, rich, ecologically valid datasets. Web automation programming is resistant to high-level abstractions, so end-user programmers end up stymied by the need to reverse engineer website internals"”DOM, JavaScript, AJAX. Programming by Demonstration (PBD) offered one promising avenue towards democratizing web automation. Unfortunately, as the web matured, the programs became too complex for PBD tools to synthesize, and web PBD progress stalled.

In this talk, I'll describe how I reformulated traditional web PBD around the insight that demonstrations are not always the easiest way for non-programmers to communicate their intent. By shifting from a purely Programming-By-Demonstration view to a Programming-By-X view that accepts a variety of user-friendly inputs, we can dramatically broaden the class of programs that come in reach for end-user programmers. My Helena ecosystem combines (i) usable PBD-based program drafting tools, (ii) learnable programming languages, and (iii) novel programming environment interactions. The end result: non-coders write Helena programs in 10 minutes that can handle the complexity of modern webpages, while coders attempt the same task and time out in an hour. I'll conclude with predictions about the abstraction-resistant domains that will fall next"”robotics, analysis of unstructured texts, image processing"”and how hybrid PL-HCI breakthroughs will vastly expand access to programming.
Sarah Chasins is a Ph.D. candidate at UC Berkeley, advised by Ras Bodik. Her research interests lie at the intersection of programming languages and human-computer interaction. Much of her work is shaped by ongoing collaborations with social scientists, data scientists, and other non-traditional programmers. She has been awarded an NSF graduate research fellowship and a first place award in the ACM Student Research Competition.

Sponsored by