home >

research >

teaching >

students >

music >

curriculum vitae >

Danny Dig
Danny Dig
Associate Professor
EECS Department
Oregon State University
Adjunct Professor
Department of Computer Science
U. of Illinois at Urbana-Champaign
3043 Kelley Engineering Center
2500 NW Monroe Ave,
Corvallis, OR 97331-5501
email: digd@eecs.oregonstate.edu

Danny Dig is an associate professor of computer science in the School of EECS at Oregon State University, and an adjunct professor at University of Illinois. He enjoys doing research in Software Engineering, with a focus on interactive program transformations that improve programmer productivity and software quality. He successfully pioneered interactive program transformations by opening the field of refactoring in cutting-edge domains including mobile, concurrency and parallelism, component-based, testing, and end-user programming. He earned his Ph.D. from the University of Illinois at Urbana-Champaign where his research won the best Ph.D. dissertation award, and the First Prize at the ACM Student Research Competition Grand Finals. He did a postdoc at MIT.

He (co-)authored 50+ journal and conference papers that appeared in top places in SE/PL. According to Google Scholar his publications have been cited 2400+ times. His research was recognized with 4 best paper awards at the flagship and top conferences in SE (ICSE'14, ISSTA'13, ICST'13, ICSME'15), 4 award runner-ups, and 1 most influential paper award (N-10 years) at ICSME'15. He received the NSF CAREER award, the Google Faculty Research Award, and the Microsoft Software Engineering Innovation Award (twice). He released 9 software systems, among them the world's first open-source refactoring tool. Some of the techniques he developed are shipping with the official release of the popular Eclipse, NetBeans, and Visual Studio development environments (of which Eclipse alone had more than 14M downloads in 2014). He has started two popular workshops: Workshop on Refactoring Tools, and Hot Topics On Software Upgrades, both had at least five instances. He chaired or co-organized 14 workshops and 1 conference (MobileSoft'15), and served as a member of 35 program committees for all top conferences in his area. His research is funded by NSF, Boeing, IBM, Intel, Google, and Microsoft.

Successful software undergoes constant change. My research addresses two important questions:

  1. What changes occur most often in practice?
  2. How can we automate them to improve programmers' productivity and software quality?
Over the years I have successfully automated program transformations to (i) retrofit parallelism into sequential code, (ii) improve responsiveness of mobile apps, (iii) upgrade component-based applications, (iv) update obsolete tests, (v) make end-user programs easier to change.

General interests:- automated refactoring, interactive program analysis and transformation, design & architectural patterns, and broadly interested in concurrency and parallelism, mobile computing, software development processes, program analysis, software testing, and software evolution

Research Impact:

  • our research on detecting async errors in .NET programs now ships with the official release of Microsoft Visual Studio
  • my ICSM'05 paper wins the Most Influential Paper Award (N-10 years) at ICSME'15. The citation reads "The ICSM'05 paper has had the most impact and has stood the test of time best, it has had a profound influence on the upcoming field of API analysis."
  • our refactorings that empower Java programmers to use lambda expressions are shipping with the official release of the NetBeans IDE.
  • PhD research on record-and-replay of API-level refactoring ships with the official release of the Eclipse IDE and are used by millions of Java developers.
  • the automatic inference of refactorings has been used at large companies like Google and IBM, and dozens of research labs.
  • our ASTGen test generation framework is used in the testing infrastructure at Oracle.
  • empirical studies (one and two) on usage of concurrent libraries have influenced the development of the official libraries in .NET and Java.
  • our resource on learning parallelism in .NET receives more than 150,000 visitors.
  • many years ago I developed the world's first open-source refactoring engine for Java, and was downloaded over 17,000 times.



  • 2016 NSF CAREER Award
  • 2015 Google Faculty Research Award
  • Most Influential Paper Award (N-10 years) at ICSME'15 for this paper from ICSM'05
  • Best Paper Award at ICSME'15 for this paper
  • ACM SIGSOFT Distinguished Paper Award at ICSE'14 for this paper
  • ACM SIGSOFT Distinguished Paper Award at ISSTA'13 for this paper
  • Best Paper Award at ICST'13 for this paper
  • Microsoft Software Engineering Innovation Foundation award, twice: in 2011 and 2013
  • Best PhD Thesis Award from the CS department at UIUC (and also department-nominated for ACM Doctoral Dissertation Award)
  • 1st Prize at inter-disciplinary Grand Finals of ACM Student Research Competition, 2006
  • 1st Prize at ACM SIGPLAN Student Research Competition, held at OOPSLA'05


MOTTO "Success is not for the chosen few, but for the few who choose" - John Maxwell

   Copyright 2005, Danny Dig.  All rights reserved.   Visitors since July 1st 2006: