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 Senior Member of IEEE.
I have been 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.
Currently, I am co-chair of ACM’s Publications Board. ACM’s Publication Board oversees all aspects of ACM’s publications and the operation of ACM’s Digital Library.
I am the co-author of two best-selling introductory programming textbooks, C++ Program Design: An Introduction to Object-Oriented Programming, 3rd edition and Java 5.0 Program Design: An Introduction to Object-Oriented Programming, 2nd edition. He and his colleague, James P. Cohoon, received the 2008 IEEE Taylor L. Booth Award for their sustained effort to transform introductory computer science education.5.0 Program Design: An Introduction to Object-Oriented Programming, 2nd edition. My co-author, James P. Cohoon, and I have organized numerous workshops for college professors on how to teach 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 video of the award presentation 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 thoroughly enjoyed my visit to India.