- Spring Quarter 2019 Office hours
- — I'm holding office hours on Wednesday 16:00 to 17:00 in FAB 115-10—no appointment necessary.
- — By appointment: please telephone to set one up. I'm normally in my office Monday thru Wednesday (I'm working part time this quarter).
|Title||Course number||When taught|
|Object-Oriented Programming||CS 420/520||Spring 2019|
|Previously taught courses:|
|Algorithms & Complexity||CS 350||Most recently taught Winter 2019|
|Introduction to Programming and Problem-solving||CS 161||Most recently taught Spring 2017|
|Scholarship Skills||CS 669||Most recently taught Winter 2016|
|Ethical, Social & Legal Implications of Computing||CS 305||Most recently taught Winter 2019|
|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 web;
see the documentation
After Grace, my favorite system for trying out ideas is Smalltalk. I have written a few Squeak goodies that I believe are generally useful. I have worked 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