| 2010 | ISSTA | The Google FindBugs fixit. | Nathaniel Ayewah, William W. Pugh |
| 2009 | MSR | Learning from defect removals. | Nathaniel Ayewah, William W. Pugh |
| 2008 | ISSTA | A report on a survey and study of static analysis users. | Nathaniel Ayewah, William W. Pugh |
| 2007 | OOPSLA | Using FindBugs on production software. | Nathaniel Ayewah, William W. Pugh, J. David Morgenthaler, John Penix, YuQian Zhou |
| 2007 | OOPSLA | Status report on JSR-305: annotations for software defect detection. | David Hovemeyer, William W. Pugh |
| 2007 | OOPSLA | Finding bugs in eclipse. | William W. Pugh |
| 2006 | ITiCSE | Experiences with marmoset: designing and using an advanced submission and testing system for programming courses. | Jaime Spacco, David Hovemeyer, William W. Pugh, Fawzi Emad, Jeffrey K. Hollingsworth, Nelson Padua-Perez |
| 2006 | MSR | Tracking defect warnings across versions. | Jaime Spacco, David Hovemeyer, William W. Pugh |
| 2006 | OOPSLA | Improving your software using static analysis to find bugs. | Brian Cole, Daniel Hakim, David Hovemeyer, Reuven Lazarus, William W. Pugh, Kristin Stephens |
| 2006 | OOPSLA | Helping students appreciate test-driven development (TDD). | Jaime Spacco, William W. Pugh |
| 2006 | OOPSLA | The Marmoset project: an automated snapshot, submission, and testing system. | Jaime Spacco, William W. Pugh, Nathaniel Ayewah, David Hovemeyer |
| 2005 | MSR | Software repository mining with Marmoset: an automated programming project snapshot and testing system. | Jaime Spacco, Jaymie Strecker, David Hovemeyer, William W. Pugh |
| 2005 | POPL | The Java memory model. | Jeremy Manson, William W. Pugh, Sarita V. Adve |
| 2004 | OOPSLA | Finding bugs is easy. | David Hovemeyer, William W. Pugh |
| 2004 | OOPSLA | RUBiS revisited: why J2EE benchmarking is hard. | William W. Pugh, Jaime Spacco |
| 2002 | ECOOP | Atomic Instructions in Java. | David Hovemeyer, William W. Pugh, Jaime Spacco |
| 1999 | PLDI | Compressing Java Class Files. | William W. Pugh |
| 1997 | CAV | Symbolic Model Checking of Infinite State Systems Using Presburger Arithmetic. | Tevfik Bultan, Richard Gerber, William W. Pugh |
| 1997 | ICS | Iteration Space Slicing and Its Application to Communication Optimization. | William W. Pugh, Evan Rosser |
| 1996 | ICS | Minimizing Communication While Preserving Parallelism. | Wayne Kelly, William W. Pugh |
| 1994 | PLDI | Counting Solutions to Presburger Formulas: How and Why. | William W. Pugh |
| 1992 | PLDI | Eliminating False Data Dependences using the Omega Test. | William W. Pugh, David Wonnacott |
| 1992 | POPL | Partial Evaluation of High-Level Imperative Programming Languages, with Applications in Hard Real-Time Systems. | Vivek Nirkhe, William W. Pugh |
| 1991 | ICS | Uniform techniques for loop optimization. | William W. Pugh |
| 1991 | PLDI | Advice to Authors of Extended Abstracts. | William W. Pugh |
| 1991 | SC | The Omega test: a fast and practical integer programming algorithm for dependence analysis. | William W. Pugh |
| 1991 | RTSS | A partial evaluator for the Maruti hard real-time system. | Vivek Nirkhe, William W. Pugh |
| 1990 | ICCI | Probabilistic Analysis of Set Operations with Constant-Time Set Equality Test. | William W. Pugh |
| 1990 | PLDI | Two-Directional Record Layout for Multiple Inheritance. | William W. Pugh, Grant E. Weddell |
| 1989 | POPL | Incremental Computation via Function Caching. | William W. Pugh, Tim Teitelbaum |
| 1989 | WADS | Skip Lists: A Probabilistic Alternative to Balanced Trees. | William W. Pugh |