The thread that runs through my work is understanding how we understand and gain confidence in software, through some combination of analysis (broadly construed to include testing as well as various static checking techniques) and design. I'm increasingly interested in interplay between synthesis (generating something from a spec) and analysis (checking consistency between a spec and an implementation). The synthesis part is related to an old interest in architectural design of software, which I've recently revisited in connection with assistive cartography.
Some things I've been interested in recently:
Book: Software Testing and Analysis
Mauro Pezzè and I wrote Software Testing and Analysis: Process, Principles, and Techniques. It is available at Amazon and other online bookstores, including Powells and Barnes and Noble. German and Portuguese translations are also available.
We hope this will be the book that advisors recommend to new graduate students who need a basic, broad background in testing and analysis, as well as a standard text in senior and beginning graduate courses.
We appreciate the useful comments (and corrections!) from many of you, and are pleased that the book is in use around the world and in some of the top centers of software engineering research.
Registrations for SCORE 2011 from around the world exceeded our most optimistic projections. Finals will be held at ICSE 2011 in Hawaii. A repository of previous SCORE projects (currently, from 2009) is also available, and may be useful to those teaching project-oriented software engineering courses. Matteo Rossi of Politecnico di Milano and I chair SCORE 2011.
ACM SIGSOFT 2006 / FSE 14, November 2006
ACM SIGSOFT 2006, the Fourteenth ACM Symposium on Foundations of Software Engineering (FSE 14) was held in Portland, Oregon in November 2006. I was general chair, and Prem Devanbu of UC Davis was program chair. See http://www.cs.uoregon.edu/fse14 for more information.
The Impact Project is an ACM SIGSOFT initiative to determine the impact of software engineering research on software engineering practice. I am studying the historical development of static analysis techniques and tools for software fault detection.
Software Methodology (CIS 422/522)
Software Methodology 2 (Spring 2007)
This course will be cross-listed as CIS 423 and CIS 510. CIS 610 credit is possible for students who need 6xx credits and who are able and willing to contribute at that level.
For Spring 2007, the course will also be cross-listed as a Geography seminar taught by Amy Lobben. Amy and I will work together coaching a cross-disciplinary team of computer science and geography students to develop a web-based haptic soundscape campus map for blind users.
This is going to be a blast. There are lots of interesting and challenging problems, and a chance to work across disciplines (which is a really important aspect of computing in the real world), and a chance to build something new and useful. This won't be the first haptic soundscape map (check out related projects at UC Santa Barbara and U Calgary), but the field is really nascent and presents lots of opportunity to make real progress.
Compiler Construction (CIS 461/561, Winter 2007)
For notes on the most recent offering, see the course web site from Spring 2006.
Scientific Writing Workshop (CIS 610)
Sarah Douglas will offer the writing workshop course in Spring 2007. We expect to have a regular course number soon, and a new course title, pending University approval.
I'm involved in a number of (somewhat overlapping) groups concerned with helping high school and middle school kids learn about computer science and prepare for it.
The ETIC Computer Science task force focuses on attracting and preparing high school students for university study in computer science. They publish the Get Real web site for high school students, teachers, and counselors.
The Oregon Pre-engineering and Applied Sciences Initiative (OPAS) has a related but broader focus on engineering, computer science, and applied sciences in general. I serve on the OPAS steering committee and one of the working groups, and am involved in the NOISE (Network of Informal Science Educators) spin-off activity.
The Oregon Computer Science Teachers Association (CSTA) is primarily an organization of high school computer science teachers, supported by the Software Association of Oregon. I participate in some events and discussions as a representative of university CS education.
I am a fairly serious coffee drinker, and also roast coffee at home. Here is some general information on semi-commercial espresso machines (high-end home machines) and some information on the Pasquini Livia 90 in particular. Recently I have discovered a espresso repair service in the Eugene area, Stefano's Espresso Care. Stefano (stress on the first syllable; I keep getting it wrong) repairs both commercial and home machines. Previously I was shipping my machine back and forth to HER in Seattle.
I am a recreational bicycle rider. I enjoy organized "event" rides. Rides I've enjoyed include the Seattle to Portland bicycle classic (one day version in 2004 and 2005); the Blackberry bRamble starting right here in Eugene; the Covered Bridges tour from Albany (5 times); the Peach of a Century (3 times); the Monster Cookie metric century; the Mount Hood Challenge Century (which seems to have been held for the first and last time in 2004); and the Torture 10,000 century east of Portland (also discontinued, alas).
Highlights of some prior years:
- 2007: U Century ride each month, for the UMCA year-rounder challenge.
- 2008: Several great rides in Lugano, Switzerland described in the blog I kept while there. Oregon seems kind of flat now, and oddly devoid of castles.
- 2009: Lots of centuries, including a stretch of over three months in which I rode a century every weekend. Joined Oregon Randonneurs and rode my first brevet. I also broke 15 minutes in the spring hill climb race series, and was first in my age class all three times I entered.
- 2010: Fewer centuries, but rode my first 400k (250 miles) brevet, and rode a good deal more with Cyndi and Adrian.
In 2011 I hope to complete a brevet “series” of 200k, 300k, 400k, and 600k. Update: Done! I completed the Grab Bag 200km brevet Feb 5, the 300km Three Capes brevet March 26, the 400km Eden's Gate brevet April 16, and the Oregon Coast 600 May 7-8, 2011.
Other great rides in the area:
There are many excellent routes starting in or near Eugene, ranging from under 20 to over 100 miles, and from very flat to quite hilly. If you are a cyclist visiting Eugene (especially if you're a computer scientist), I'd love to make a few suggestions or maybe go out on a ride with you, schedule permitting.
Here is why I always wear a helmet.