For recent news, please see My News page.
in addition to research and teaching, I am Chair of ACM’s Digital Library Board. ACM's Digital Library Board oversees all aspects of the operation of ACM's Digital Library. I served as Co-Chair of the ACM Publications Board from 2010 to 2021. The Publications Board is responsible for maintaining ACM’s position as the preferred publisher in computing. I continue to serve as member of the Publications Board. In June 2024, I received the 2023 Outstanding Contribution to ACM award for my contributions to ACM"s publication programs.
I am a member of the Association for Computing Machinery (ACM) and the IEEE Computer Society. I served as an Associate Editor of ACM's Transactions on Architecture and Code Optimization from 2005 to 2015, and as an Associate Editor of ACM’s Transactions on Programming Languages and Systems from 1994 to 2000. I am also a Fellow of the ACM and a Life Fellow of the IEEE.
I have was involved for many years with ACM’s Special Interest Group on Programming Languages (SIGPLAN). I served as a member-at-large from 1999–2001 and 2003–2005. I served as SIGPLAN Chair from 2005–2007. I was SIGPLAN’s Information Director for many years and I designed SIGPLAN’s web pages (now since retired, but the template is still used by other SIGs). I am also a member of SIGBED (Special Interest Group on Embedded Systems), SIGARCH (Special Interest Group on Computer Architecture), SIGCSE (Special Interest Group on Computer Science Education), and SIGCAS (Special Interest Group on Computers & Society.
I am the co-author of two best-selling introductory programming textbooks, C++ Program Design: An Introduction to Object-Oriented Programming and Java 5.0 Program Design: An Introduction to Object-Oriented Programming. Jim Cohoon and I were awarded the 2008 IEEE Taylor L. Booth Education Award for "Sustained effort to transform introductory computer science education through lab-based multimedia pedagogy coupled with examples that attract a diverse student body." The award video is here.
I thoroughly enjoy teaching. I was a lecturer at the Third International Summer School on Advanced Computer Architecture and Compilation for Embedded Systems (ACACES 2007) held the summer of 2007 in Aquila, Italy. In the summer of 2008, I taught a week-long seminar at the inaugural Indo-US Engineering Faculty Leadership Institute held in at Mysore, India. My class was very enthusiastic and I enjoyed my visit to India immensely.
I am a founding organizer of the International Summer Schools on Information Security and Software Protection (ISSISP). The first summer school (ISSISP 2010) was held in Beijing, China in the summer of 2010. Subsequent summer schools were held in Ghent, Belgium (2011), Tucson, Arizona (2012), Xian, China (2013), Verona, Italy (2014). Rio de Janeiro (2015), Bangalore, India (2016), Paris, France (2017). Canberra, Australia (2018), Qingdao, China (2019), You can watch a video celebrating all the summer schools here.