To improve responsiveness, developers often use asynchronous programming architecture. In the post-PC era, asynchronous programming is even more in demand because mobile and wearable devices have limited resources and access the network excessively. One current development task is refactoring long-running, blocking synchronous code (for example, accessing the Web, a cloud, a database, or a file system) into nonblocking asynchronous code. Danny will guide us through the challenges of retrofitting code from synchronous to asynchronous while presenting program analyses as well as showcasing a growing, practical tool set for this process.
Assistant Professor in the School of EECS at Oregon State University
Adjunct Professor at University of Illinois
Danny has published over 50 journal and conference papers on refactoring, of which five won awards at top Software Engineering conferences. According to Google Scholar, his publications have been cited 2200+ times. His PhD dissertation on API refactoring won the David Kuck Outstanding PhD dissertation award at U. of Illinois, the First Prize at the interdisciplinary ACM Student Research Competition Grand Finals, and the First Prize at the ACM SIGPLAN SRC. He wrote the world’s first open-source refactoring engine for Java (which was downloaded over 17,000 times in 2001).
Some of his other refactoring tools are shipping with the official release of Eclipse, NetBeans, or VisualStudio IDE and are used by millions of Java and C# developers. He regularly teaches on the topic of refactoring at summer schools, conference tutorials, and