B.S. ​Ramapo College of New Jersey, 1976M.S. ​Pennsylvania State University, 1978Ph.D. ​University of Minnesota, 1982

"My algorithms help optimize the physical design of everyday digital devices. My educational research enables CS classrooms to be effective to all."

James Cohoon, Associate Professor

Jim Cohoon received his Ph.D. in Computer Science from the University of Minnesota and is an Associate Professor at the University of Virginia. He is an Associate Chair for its Department of Computer Science and Director of its undergraduate BS program. He is a former Fulbright Scholar and winner of the IEEE Computer Science Taylor L. Booth Education Award. He has been a member of ACM Council and the ACM SIG Governing Board Executive Committee, and is a past chair of the ACM SIG for Design Automation. Jim Cohoon has co-authored several programming language textbooks. His research interests are swarm algorithms and models, probabilistic search, routing, and Computer Science education and broadening participation. He and his students produce state-of-the-art tools that are practical as well as theoretically interesting. In Computer Science education Jim Cohoon is a proponent of continuous active learning, continuous active student recruiting, and regular outreach.


  • IEEE Computer Society Taylor Booth Education Award for outstanding efforts to transform introductory computer science education
  • University of Virginia School of Engineering and Applied Science Harold S. Morton Award for Teaching

Research Interests

  • Optimization Models and Methods
  • Algorithms
  • VLSI Design

Selected Publications

  • Analysis of a CS1 approach for attracting diverse and inexperienced students to computing majors J. P. Cohoon and L. Tychonievich, SIGCSE Technical Symposium, pp. 165 - 170, Dallas, TX, 2011.
  • Java Program Design: Third edition, McGraw-Hill J.P. Cohoon and J. W. Davidson
  • Beaver: a computational-geometry-based tool for switchbox routing, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, June 1988, pp. 684-697 J. P. Cohoon and P. L. Heck
  • Educating Diverse Computing Students at the University of Virginia, IEEE Computer, March 2013, pp. 52-55. J. P. Cohoon, J M. Cohoon, and M. L. Soffa
  • Swarms of Limited Capacity Agents: Meeting and Staying Together (without trust), International Journal of Computer Science (IJCS), Volume 39, Issue 3, 2012, pp. 254–260. L. A. Tychonievich and J. P. Cohoon
  • Routing a multi-terminal critical net: Steiner tree construction in the presence of obstacles, IEEE International Conference on Circuits and Systems, London, UK, June 1994, pp. 113-116. R, J. L. Ganley and J. P. Cohoon

Courses Taught

  • CS 1112
  • CS 2102
  • CS 3102
  • CS 4102

Featured Grants & Projects

  • NSF #1042452:

    Training high school CS Educators to Attract More & Diverse Students ($1.25 M) Provide research-proven educational practices that engage all students resulting in significant increases in the number of women interested in Computer Science.

  • NSF #1432619:

    Professional Development for Community College Computer Science Faculty ($1.4 M) Develop a MOOC to provide research-proven educational practices to attract, retain, and educate diverse people to Computer Science.