- Spring Quarter 2017 Office hours
- — I'm holding office hours during lab times for CS161: Tuesday 14:00–15:50 in UTS 203, and Friday 10:00–11:50 in UTS 308. No appointment necessary.
- — By appointment: please telephone to set one up. I'm normally in my office Monday thru Thursday. It's fine to drop by without an appointment, but if I'm busy, please be prepared to come back.
|Title||Course number||When taught|
|Introduction to Programming and Problem-solving||CS 161||Spring 2017
|Previously taught courses:|
|Algorithms & Complexity||CS 350||Fall 2015|
|Object-Oriented Programming||CS 420/520||Spring 2016|
|Scholarship Skills||CS 669||Winter 2016|
|Ethical, Social & Legal Implications of Computing||CS 305||Winter 2016|
to Programming and Problem-solving
||Most recently taught Fall 2014
|Computer Science for Beginners||CS 199||Most recently taught Summer 2009|
|Computational Structures||CS 311||Most recently taught Spring 2010|
|Extreme Programming: Principles & Practice||CS 410/510XP||Most recently taught Summer 2006|
(with Mark Jones)
|CS 410/510AP||Most recently taught Winter 2009|
|Distributed Computing||CS 410/510||Most recently taught Spring 2005|
Courses previously taught at OGI/OHSU
My research interests are in the area of programming languages,
operating systems, object-oriented systems and distributed
computing, and more specifically in the region where they overlap
(such as language design for distributed Object-oriented
I'm currently involved in developing a new, very simple,
object-based language called Grace,
named after Rear
Admiral Grace Hopper. Grace is intended for teaching novice
computer scientists to program in the object-oriented style, but
is a full-featured language that can be used for almost any
purpose, including its own compiler. You can try out Grace on the
My favorite system for trying out ideas is Smalltalk. I have written a few Squeak goodies that I believe are generally useful. I have been actively working on Traits with the folks from SCG in Bern; see Nathanael Schärli's Traits page for details.
I'm a co-author of two books on Smalltalk programming, Squeak by Example,
and Pharo By Example.
My hobbies include cycling, cross-country skiing, hiking, mending houses.
Take a look at some not-so-recent photographs