This is Robert Allan Zeh's home page. There really isn't a whole lot here, other than some links to other stuff.
The life story of Robert Zeh in one paragraph: I was born in Chicago but grew up in Arlington Heights, attending Saint Viator high school before setting off for Syracuse University in New York. After Syracuse I went to the University of Illinos Urbana-Champaign where I obtained a master's degree in Computer Science and my wife. I worked my way through graduate school as a system administrator for the Math department. I learned a lot about academia at the Math department because of my vantage point as a professional and graduate student but mostly because, well, the Math department was just a whole lot friendlier then the Computer Science department. After graduate school it was time to get a job, and I did. My first job was at the late great BALR. BALR was a consulting shop, and I spent almost all of my 5 years at BALR consulting for First Chicago; it started as a 6 week assignment. The BALR partners sold BALR to Whiteman-Hart, which was promptly sold to MarchFirst, which promptly went under. I managed to avoid the damage by leaving BALR for Archelon a few months before the sale. Archelon is an electronic trading firm. At Archelon my boss took a chance on me and let me manage a development group; first the small systems engineering group and then the larger applications development group. At the same time I was learning how to manage adults I was learning how to manage my daughter Susan (born 2001) and later my son Peter (born 2004). Both went well. After six years it was clearly time to move on (from Archelon, not the children!) and I went to the Foley Currency Trading Group at Gelber. Which, as chance would have it, had a bunch of people who had used some of the systems I'd help write at First Chicago.
I didn't say it would be a short paragraph. But, by this point you know if I'm the Robert Allan Zeh you are looking for.
sccs2svn.py is a Python script that converts SCCS repositories into a Subversion repository. Every now and then I get email asking for sccs2svn, so I've decided to place it here. I've asked that it be included in the Subversion contrib directory, but so far it hasn't been added. However, I have setup a berlios site to hold the project: sccs2svn.berlios.de.
Please read the comments at the start of the script before running it. The script assumes that you have a set of directories, each with their own SCCS repositories. All of the deltas in all of the directories are sent to the Subversion repository, after being sorted by time. Any files ending in "-" are removed from the Subversion repository (this follows my employer's convention for marking files that are no longer used in the SCCS repository). The script doesn't take SCCS branches into account, and it might have problems with dates from different timezones.
First, I have my own versions of boost::char_separator and boost::offset_separator which have since been incorporated into boost . For some contrived tests they are 2 to 22 times faster then the boost versions, although they have stricter requirements then the boost versions. First, your Token class must have an assign method and an assignment operator. Second, if you want the performance improvements the object you are tokenizing must support a multi-pass algorithm.
A short example that demonstrates why casting away const in a C++ program is a very bad idea.
Read about why threads suck.
I also have a nice little PERL program that strips out the "Receive:" lines from mail archives (it pulls out some other useless header information too). It is called strip.pl. It's reduced the size of my archives by a full third in some cases. The program expects to find the mail archive on standard in, and it sends the reduced archive to standard out. The command line on my NT machine at home looks something like this:
perl strip.pl < jdk.mbx > j
rename j jdk.mbx
delete jdk.toc
(to keep Eudora happy - once you've changed the mbx file, you need to force Eudora to rebuild the toc file, or very bad things will happen).
The only caveat is that strip.pl doesn't distinguish between mail messages and mail headers, so if your mail archive has message lines with "Receive:" in them you will lose them! In practice this has never been a problem. If you need more information on PERL you should visit http://www.perl.com.
I've occasionally been asked to give presentations, and the slides from one of them are available on the web. This particular presentation covered some of the more advanced portions of object oriented program and was the fourth and final in a series of BALR "After Hours" presentations. Sometimes I even teach courses; you can see the closing notes for one of them here.
I was asked to give a two minute Father's day reflection at my parish, Saint Luke, on June 20th, 2004.
Here is our 2002, 2003, 2004, 2005 and 2006 Christmas letters.
I've been working on a Java OpenGL binding for the past several years, even though there are several other quality implementations available. I've learned a lot about library design, and how to link up Java with legacy libraries that were not designed with Java in mind. For more detailed information, please see its home page. Briefly, it is a way to use SGI's OpenGL 3D graphics library from within Java. Right now it works under Windows NT, and I am porting it to GNU-Linux.
TagIt is a Java bookmark maintainer that will let you know when web pages have changed.
A collection of suggestions on how to give technical presentations that I've gathered together over time.
My bookmarks.
It seems that a home page isn't complete without an on-line resume, so I've caved in.