Before starting at the University of Waterloo, he completed his PhD in Computer Science at the University of Calgary and his MSc in Computer Science at the University of British Columbia. Beyond his formal education, he has conducted research in designing interaction for multi-touch surfaces and other collaborative devices in industry at Mitsubishi Electric Research Labs and Intel Corporation, and in academia at Queen's University and Simon Fraser University.