Michael Hicks

E-mail: mwh@cs.umd.edu
Phone: +1-301-405-2710
Fax: +1-301-405-6707
Office: 4131 A.V. Williams Building
Address:

Dept. of Computer Science

University of Maryland

A.V. Williams Building

College Park, MD 20742



Publications CMSC 631 Links

I am an associate professor in the Computer Science Department and UMIACS, and an affiliate associate professor in the Electrical and Computer Engineering Department, at the University of Maryland, College Park. My primary research interest is to develop and evaluate techniques to improve software reliability and security. With Bill Pugh and Jeff Foster I direct PLUM, the lab for Programming Languages research at the University of Maryland. You may find it interesting to read about how we organize our group.

Here is my current vita and a list of my publications, organized by year and by category.

I received my Ph.D. in Computer and Information Science from the University of Pennsylvania in August 2001, and I spent one year as a post-doctoral associate affiliated with the Information Assurance Institute of the Computer Science Department at Cornell University. During academic 2008 - 2009, I was on sabbatical in Cambridge, England. From September to November I was at Microsoft Research and from December to August 2009 I was at the University of Cambridge Computer Laboratory

How fast can you type? (My best so far is 97 wpm.)

Students

Current Students:
Piotr Mardziel
Chris Hayden*
Khoo Yit Phang*
Saurabh Srivastava*

Graduated students:
Pavlos Papageorgiou Software Engineer, Google, New York, since December 2008
Iulian Neamtiu Asst. Prof, UC Riverside, since Fall 2008
Polyvios Pratikakis* Post-doc, CNRS/VERIMAG, since Fall 2008
Nikhil Swamy Researcher, Microsoft Research, Redmond, since Fall 2008
Jeff Meister* (undergrad) Grad student, UCSD, since Fall 2008
Nick Petroni** Research scientist, IDA/CCS since Spring 2008
Manuel Oriol (postdoc) Senior Lecturer, University of York (UK), since Fall 2008

* co-advised with Jeff Foster ** co-advised with Bill Arbaugh

I am also working with Mike Furr and David An (advised by Jeff Foster), and Suriya Subramanian (advised by Kathryn McKinley). I have previously worked with Justin McCann, Brian Corcoran, Eric Hardisty, James Rose, and Jaime Spacco. I've also worked with post-grad Patrick Jenkins, and high school students, Ted Smith (Walt Whitman High), and Matt McCutchen and Cody Burton (both at Montgomery Blair). Both Ted and Matt are now undergraduate students in our Department.

Research

I am currently working on a number projects.
Ginseng - a practical system for dynamically updating running software written in C.
Diamondback Ruby - static typing for the Ruby scripting language.
SELinks - a programming language that supports custom-defined security policies for web applications.
Path Projection - an approach to presenting the results of static analysis tools that accounts for the user's cognitive process. Path projection is a browser-based UI toolkit for presenting, navigating, and querying paths emitted as static analysis results.
Measurement-aware Data Transport - We are exploring ways in which passive and active measurement schemes can be integrated with transport protocols to reduce overhead and improve performance.

Previously, I was involved with LockSmith, a static analysis tool for proving the absence of race conditions in C programs, and Cyclone, a safe dialect of C, among other projects. Links to all past projects may be found on the PLUM home page.

Teaching

Professional Activities

I have served (or am serving) on the program committees for

2010 ESOP, PLDI (RC and tutorials chair), ICFP (PC and local arrangements), PASTE
2009 POPL, IEEE S&P, PLDI SRC
2008 CCS, CATARS, COORDINATION
2007 PLAS (general and program chair), OOPSLA, COORDINATION, PLDI
2006 FTfJP, PLAS, SPACE, OOPS (part of SAC 2006)
2005 SCOOL, VEE
2004 IWAN, ICPP, FUSE
2003 IWAN, USE
2002 IWAN, USE
2001 IWAN
ATYlogo