My name as a barcode
photograph of me

Shriram Krishnamurthi


Professor of Computer Science


PLT | CS Ed | CEL || Bootstrap
Computer Science Department
Brown University

Contact (with Calendar)

Hi! Welcome to my home page!

I'm unreasonably fascinated by, delighted by, and excited about computer science and education (as well as cycling, cricket, and a few other things) and the general human experience.

I do not have a research area so much as a research vision:

 
Abstractions are essential for progress in computing.
Abstractions are also beautiful.
Abstractions can also be hard to understand and learn.
How do we help people effectively learn abstractions?

Since 2016 [manifesto], my work has been incorporating human-factors ideas, cognitive science, and education research at increasingly deeper levels into technical work. To me, “education” applies very broadly, not just because I'm a professor and a teach. Rather, I believe that every tool that produces output, whether or not it realizes or acknowledges it, is in the education business. Combining the technical and human makes the problems I get to work on vastly more honest, rich, and interesting, and also harder. This work therefore happens across three groups at Brown: programming languages and formal methods, computing education, and the cognitive engineering lab.

My work is informed by my background. I was primarily trained in programming languages, but I have since trained myself in various aspects of software engineering, formal methods, HCI, security, and networking. Over the years I have contributed to several innovative and useful software systems: JavaScript tools, Flowlog, Racket (formerly DrScheme), WeScheme, Margrave, Flapjax, FrTime, Continue, FASTLINK, (Per)Mission, and more. Currently, I mainly work on

For more of what I've been doing lately, please see my research group's blog.

I have been doing computing outreach since 1995. You may know me through my (co-authored) books like HtDP, PLAI, PAPL, or DCIC. Our current outreach program, Bootstrap, is used internationally to integrate computing into math, physics, social studies, and other disciplines.

I have been privileged to work with a group of impressive PhD students:

I have also been delighted to work with several outstanding post-docs:

Finally, I'm equally chuffed to have done research with several excellent master's students and over 50 amazing undergraduates.

I'm honored to be a recipient of SIGPLAN's Robin Milner Young Researcher Award, SIGPLAN's Distinguished Educator Award (jointly), SIGSOFT's Influential Educator Award, and SIGPLAN's Software Award (jointly). At Brown, I've been awarded the Wriston Fellowship and the Philip J. Bray Award for Excellence in Teaching in the Physical Sciences.

Disclosure: My work has been supported financially by the US National Science Foundation, DARPA, Amazon, Bloomberg, Cisco, Code.org, CSNYC, the ESA Foundation, Fujitsu, General Motors, Google, Infosys, Jane Street Capital, Meta, RelationalAI, Roblox, the State of Rhode Island, and TripAdvisor. I believe my views have not been swayed by this support, but I provide this information so you can judge for yourself.