I'm interested in various facets of how people learn and use formal systems. Over the years, I've increasingly emphasized the human and learning components. Currently, my main projects are Bootstrap: teaching kids to program videogames as a way to reinforce algebra, developing effective error-messages for novice programmers in WeScheme and DrRacket, and how people learn programming through Pyret (a new programming language) and CaptainTeach (a new programming environment with built-in peer-reviewing and support for teaching test-early development).
Wearing another hat, I also coordinate WPI's Cybersecurity program, which emphasizes technical aspects of security within its broader human and organizational contexts.
Prior Research: My early-career research focused on computational aspects of representations used by humans in hardware and software design. I've studied diagrammatic logics for hardware verification, including the differences between timing diagrams and textual temporal logics. I did a lot of the early work on modular verification of programs whose modules encapsulated user-identifiable features (an architecture linked to product lines, such as telecommunications systems). I was also one of the lead researchers on Margrave, a tool to help people develop accurate access-control and privacy policies. I still publish occasional papers in these areas, but my focus lies elsewhere.
If you are interested in joining my research group, read this and then contact me. Please note that I will only be taking on new students on projects around computing education (either in the contexts of computer security or how people learn programming).
|Courses and Materials||
I was a theater junkie through high school. As an undergraduate at Williams College, I rang handbells, worked in the college archives, walked campus backwards giving tours, danced folk and jitterbug, double majored in Chinese and Computer Science, and sang in an acapella group for folks who couldn't carry a tune. These days, I mainly travel, exercise, practice guitar, and cook vegetarian food from around the world. Jigsaw puzzles distract me for hours. I love puns and other forms of word-play. As a native New Yorker, I'm a thin-crust pizza snob.