Michael Hicks

Registered user since Thu 27 Aug 2015

Name: Michael Hicks

Bio: Michael Hicks is a Professor in the Computer Science department and UMIACS at the University of Maryland, where he co-directs the laboratory for Programming Languages research (PLUM); he is the former Director of the Maryland Cybersecurity Center (MC2) and the Past Chair of ACM SIGPLAN.

His research focuses on using programming languages and analyses to improve the security, reliability, and availability of software. He is perhaps best known for his work exploring dynamic software updating, a technique with which software can be updated without shutting it down. He has explored the design of new programming languages and analysis tools for helping programmers find bugs and software vulnerabilities, and for identifying suspicious or incorrect program executions. He was worked has combined ideas from PL and cryptography, e.g., to ensure privacy preserving computations. He also leads the development of a new security-oriented programming contest, “build-it, break-it, fix-it,” which has been offered to the public and to students in his Coursera class on software security. He has recently begun to explore programming languages for quantum computation.

He is the editor of the Programming Languages Enthusiast blog and Tweets at @michael_w_hicks.

Country: United States

Affiliation: University of Maryland

Personal website: http://www.cs.umd.edu/~mwh/

Research interests: Programming Languages and Security

Contributions

PriSC 2020Committee Member in Steering Committee within the Principles of Secure Compilation 2020-track
PLanQC 2020Author of Verified translation between low-level quantum languages within the PLanQC-track
Author of Tracking Errors through Types in Quantum Programs within the PLanQC-track
Author of A Verified Optimizer for Quantum Circuits within the PLanQC-track
Organizer in Organizing Committee within the PLanQC-track
Author of Merged Talk: A Verified Optimizer for Quantum Circuits & Verified Translation Between Low-Level Quantum Languages within the PLanQC-track
PLDI 2020Committee Member in External Review Committee within the PLDI Research Papers-track
POPL 2020Moderator in Panel within the POPLmark 15 Year Retrospective Panel-track
Author of A Language for Probabilistically Oblivious Computation within the Research Papers-track
PLMW 2019Speaker of Technical Talk: What Is Programming Languages Research? within the PLMW@POPL-track
Speaker in Speakers within the PLMW@POPL-track
SPLASH 2019Author of Coverage Guided, Property Based Testing within the OOPSLA-track
POST 2019Author of Achieving Safety Incrementally with Checked C within the POST 2019-track
Author of Wys*: A DSL for Verified Secure Multi-party Computations within the POST 2019-track
POPL 2019Session Chair of Type Inference I (part of Research Papers)
Author of LWeb: Information Flow Security for Multi-Tier Web Applications within the Research Papers-track
Committee Member in Selection Committee within the Student Research Competition-track
Chair in Steering Committee
Author of Quantitative Robustness Analysis of Quantum Programs within the Research Papers-track
SPLASH 2018Committee Member in Steering Committee
PLDI 2018Session Chair of Program Chair's Report and SIGPLAN Town Hall Meeting (part of PLDI Invited Speakers)
Speaker of SIGPLAN Town Hall Meeting within the PLDI Invited Speakers-track
Committee Member in Steering Committee
Session Chair of Keynote (part of PLDI Invited Speakers)
PLMW 2017Speaker of What is research and how to do it? Thinking globally and acting locally. within the PLMW-track
Speaker in Mentors within the PLMW-track
ICFP 2017SIGPLAN Chair in Steering Committee
POPL 2018Author of SIGPLAN Town Hall within the Research Papers-track
Committee Member in Steering Committee
N40AI 2017Presenter of Security within the Next 40 years of Abstract Interpretation-track
PLMWCommittee Member in Speaker within the PLMW-track
Author of What is research and how to do it? Thinking globally and acting locally. within the PLMW-track
POPL 2017Committee Member in Steering Committee
SPLASH 2017SIGPLAN Chair in Steering Committee
PLDI 2017Author of Decomposition Instead of Self-Composition for Proving the Absence of Timing Channels within the PLDI Research Papers-track
Committee Member in Steering Committee
ECOOP 2017Committee Member in Mentors within the ECOOP Summer School-track
ICFP 2016SIGPLAN Chair in Steering Committee
PLDI 2016Committee Member in Program Committee
SPLASH 2016SIGPLAN Chair in Steering Committee
POPL 2016Session Chair of SIGPLAN Awards; Program Chair's Report; and SIGPLAN Business Meeting (part of Research Papers)
SPLASH 2015Author of Incremental Computation with Names within the OOPSLA-track
Author of Incremental Computation with Names within the OOPSLA Artifacts-track
SPLASH 2014Presenter of Rubah: DSU for Java on a stock JVM within the OOPSLA Artifacts-track
Committee Member in Program Committee within the OOPSLA-track
Author of Rubah: DSU for Java on a stock JVM within the OOPSLA-track
SPLASH 2012Author of Kitsune: efficient, general-purpose dynamic software updating for C within the OOPSLA Research Papers-track
Author of Automating object transformations for dynamic software updating within the OOPSLA Research Papers-track