He received a Ph.D. in Computer Science from Massachusetts Institute of Technology in 1987. He has received numerous teaching awards from the University of Utah and has developed Internet-based software and course material that have been used to teach introductory computer science courses to thousands of students since 1991.