Cover of Data Structures and Algorithms in Java.

Learn Java in N Games

My project (with Mark Goadrich) to provide classroom-ready game programming assignments for Java in CS1 or CS2 courses is at


Drake, P. (2006). Data Structures and Algorithms in Java. Prentice Hall.

Disclaimer: The program code is made available under the following copyright notice: Copyright 2006, by Pearson Education, Inc. by Drake; all rights reserved. Permission is granted for use in non-commercial applications provided this copyright notice remains intact and unchanged. The author and publisher make no warranty of any kind, expressed or implied, with regard to these programs. The author and publisher shall not be liable in any event for incidental or consequential damages in connection with, or arising out of the furnishing, performance of use of this program code.

Computer Go

The bulk of my research is on writing artificially intelligent programs to play the classical Asian game of Go. The Orego project has its own page.

Other non-Go-related publications and presentations

(See the Orego page for computer Go publications.)

Drake, P. and Goadrich, M. (2014). "Learn Java in N Games". Workshop at the 45th ACM Technical Symposium on Computer Science Education (SIGCSE 2014).


Drake, P. (2011). "Learn Java in N Games". Workshop at Consortium for Computing Sciences in Colleges Northwestern Regional Conference.

Drake, P. and Sung, K. (2011). “Teaching Introductory Programming with Popular Board Games”. In Proceedings of the 42nd ACM Technical Symposium on Computer Science Education (SIGCSE 2011).

Drake, P. and Kerr, N. (2006). “Developing a Computer Strategy Game in an Undergraduate Course in Software Development Using Extreme Programming”. In The Journal of Computing Sciences in Colleges 22:2.

Drake. P., Orr, G., and Cushing, J. (2006). “Games in the Computer Science Classroom.” Panel presented at the Eighth Annual Consortium for Computing Sciences in Colleges Northwestern Conference.

Drake, P. (2005). “Genetic Programming: Finding Algorithms by Evolution.”  Reed College Mathematics Talk.

Clearfield, M., Mix, K., and Drake, P. (2001). “Infants’ discrimination of small and large sets.” In K. Mix (Chair), The role of overall amount in early quantification. Symposium conducted at the biennial meeting of the Society for Research in Child Development, Minneapolis.

Drake, P., Mix, K., and Clearfield, M. (2000). “Precursors to Number: Making the Most of Continuous Amount.” In L. Gleitman and A. Joshi (Eds.), Proceedings of the Twenty-Second Annual Conference of the Cognitive Science Society, Lawrence Erlbaum Associates. 

Drake, P. (1996). “Multitask Constructive Induction.” In M. Gasser (Ed.), Online Proceedings of the 1996 Midwest Artificial Intelligence and Cognitive Science Conference.