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!

About Me

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.

My Focus

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, cognitive, and human perspectives 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.

Projects

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.

Teaching

I work at a university because I love to work with students. I delight in the way their eyes light up when they learn a new idea. My goal is to have as many students as possible have that experience with important, beautiful, and profound topics.

At the undergraduate level, for the past fifteen years (and possibly the foreseeable future) I have taught and will teach two courses: CSCI 0190, the Accelerated Inroduction to Computer Science, and CSCI 1730, Programming Languages. As you'll see from my group's blog, a non-trivial portion of my research is motivated by my desire to improve the experience of learning the materials covered by these courses.

Outreach

Being able to improve education at Brown is nice, but Brown is only a small part of the world at large. Fortunately, my job lets me have educational impact well beyond campus.

I love (co-)writing books, which are all available free-of-charge: HtDP, PLAI, PAPL (deprecated), and DCIC.

I have also been running computing outreach programs since 1995. In particular, since 2007, I have been a co-director of Bootstrap, which is used internationally to integrate computing into math, physics, social studies, and other disciplines.

Some of the software and research projects mentioned above synergistically co-exist alongside these books and outreach efforts. To me, “research and teaching inform each other” isn't just a slogan, it's central to my very professional being.

Students

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.

Recognition

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.