Paul is a Professor of Teaching in the Computer Science department at the University of British Columbia and has been a faculty member in the department since January of 2001. Prior to that he was a faculty member at Capilano University (then College) in North Vancouver where he held a joint appointment in the Mathematics and Computer Science departments.

He obtained his PhD in 1993 and MSc in 1988, both from UBC. He graduated from Sheffield University in the UK in 1985 with a BSc (Hons) in Applied Mathematics.

Paul lives in Kitsilano with his partner Mark. In his spare time, he enjoys photography and travel, especially these two combined.