i am sam!

I'm a PhD student at UC San Diego advised by Philip Guo. My research mission is to improve the way we teach programming and statistics by designing creative tools for instructors. I'm also writing a textbook called Principles and Techniques of Data Science.



Site last updated: Jun 2021


TweakIt: Supporting End-User Programmers Who Transmogrify Code.

Sam Lau, Sruti Srinivasa Ragavan, Ken Milne, Titus Barik, Advait Sarkar.

ACM Conference on Human Factors in Computing Systems (CHI),


Placing live previews of code outputs directly in spreadsheets enables data analysts to tweak and reuse Python examples without needing Python expertise.

The Design Space of Computational Notebooks: An Analysis of 60 Systems in Academia and Industry.

Sam Lau, Ian Drosos, Julia M. Markel, Philip J. Guo.

IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC),


Computational notebooks vary widely in data import, code editing, code execution, and output format.

workshop and poster papers

Data Theater: A Live Programming Environment for Prototyping Data-Driven Explorable Explanations.

Sam Lau, Philip Guo.

Workshop on Live Programming (LIVE),


Separating logic from presentation simplifies the process of creating explorable explanations.

Experiment Reconstruction Reduces Fixation on Surface Details of Explanations.

Sam Lau, Tricia Ngoon, Vineet Pandey, Scott Klemmer.

Poster in ACM Conference on Creativity and Cognition (C&C),


Asking people to mentally recreate an experiment briefly reduces the allure of scientific terminology.



Create interactive data science content with a single command.

Scalable JupyterHub Deployment

Redesign of the computing architecture used in UC Berkeley's Data 8 course; now a Jupyter-endorsed standard.


I presented TweakIt at CHI 2021! TweakIt is a system that integrates Python outputs directly in spreadsheets for data analysts. The 5-min video presentation is on YouTube. – May 2021