Sep 2006


Phone: 1-617-803-1797
Email: or
Smail: 33 Cedarwood Ave, Waltham, MA 02453 USA
Web, Network and Unix/linux software in C, perl and tcl.
Music and music software.
Network search software.
Mathematics, 1966, Washington State University,
Computer Sciences, 1968, University of Wisconsin
plus partial work toward Ph.D.

Years of experience with various languages
In the past few years, I've done a fair amount of Perl and TCL programming. I've used C for over 20 years, and C++ on a few recent projects. Since I've worked mostly on unix-like systems, this has included all the common "shell" languages, of course. Before that, I used an assortment of other languages, including Pascal, APL, Prolog, Snobol (3 and 4), Lisp, and even Fortran, Cobol and PL/I.
Educational web site
The Digital/Compaq Remote Access Lab is an online version of their customer education courses. It consists of a lab with a lot of hardware of various types, and several varieties of "virtual network" boxes that can hook things together into various small networks. The web interface shows you a list of the available courses. When you select one, it assigns needed equipment to you, runs a set of configuration scripts (with something not quite correct), shows you a picture of the setup and the user's description of the problem. It's your job to fix the problem. The picture has active icons, and clicking on one gives you a telnet connection to that device. You also have links to assorted online documentation that is relevant to the problem. Most of the exercises also step you through the stages of a solution. I wrote most of the code behind the lab, in a mixture of perl, tcl/expect, and C.
Musicians' web site
This is an example of a special-purpose web search and retrieval site. In addition to a repository of "sheet" music, it has a web search "spider" that builds an index of titles that are available online, plus a lookup tool that can locate music and return it in PostScript, GIF, PNG, MIDI and other formats. One of the interesting aspects of this is the difficulty in finding similar information from the large web search sites, due to the lack of useful English terminology to distinguish recorded music from musical notation.
Network management agents
I've built several agents, mostly HTTP- and SNMP-oriented, for Digital, GTE Government Systems and GTE Labs. They were based on several public agents, and all had sizable private MIBs. The Digital agent included a module to talk over a serial link to a plant management system and convert its command-line interface to SNMP. The GTE agents acted as proxy agents to packages on other computers; one a large ATM switch, another a distributed telephony database. In several of these, I also added a HTTP interface to help in debugging and to provide the same data to web-based packages. I have a simple demo of SNMP over HTTP that shows the basics of such a second interface.
Miscellaneous fun projects.
On another project, I built a low-level packet-forwarding program for linking mobil computers with radio modems to their base stations. I implemented an interactive kernel debugger for a Prime Unix Sys/V box. Another consisted of making a Web interface to a SQL database work properly. Back in the early days of the Internet, I built a distributed Unix-like system that made a large set of computers act like a single multi-processor system. I've also worked on a number of projects involving high-throughput Internet transfers, such as streaming and archived video.

I also have a full résumé, for the benefit of people with more time on their hands.