Montour Trail milepost 25 – 17 and back

Kathleen and I went on a ride today, parking at the McConnel Road access point of the Montour Trail. We rode west for approximately 8 miles, ate lunch, and then rode back. We were somewhat disappointed to discover that there is an incomplete bridge on this stretch of trail, but we asked one of the workmen who were hammering away on the west end of the bridge, and there was an easy road detour of less than half a mile. Now that the ride is over, I can easily see that the bridge is out by looking at the Cecil map. Before the ride, I only checked the map that had the parking area of interest (the Peters map). Lesson learned.

Probably the most interesting part of the ride was the big McDonald Trestle we took over top of the Panhandle Trail. Kathleen just happened to spot a giant hornet’s nest off the edge of the bridge, but it was far enough from the trail surface not to present any problems. We took some pictures, which I’ll try to link to soon.

CUPS and Debian Print Server

I used base-config to tell my old Debian Sarge system to become a print server. Then I dist-upgrade’ed to Etch. This took care of getting CUPS installed. I then navigated my web browser to http://localhost:631/ and was able to add my parallel port laser printer and print a successful test page. My HP LaserJet 4100dtn is PCL 6 compliant, and that was one of the options for HP printers.

The tricky bit was sharing this printer with my OS X system. Sadly, I tried so many different things, that I don’t know which one was the one that worked. Here is what I *think* worked.

OS X uses CUPS to print, so you can point a web browser to http://localhost:631/ on your Apple system! Then add a new printer using the IPP protocol. The default CUPS configuration on Debian Etch seems to add ‘printers’ to the path, so your ipp:// URI should look something like this:

ipp://192.168.2.2/printers/laserjet4100dtn

After doing this, I think this new printer will become visible in the “Shared Printers” dropdown when you print from any Apple application. The bottom line is to use the OS X CUPS interface directly and not the System Preferences GUI.

A Frick’n Adventure Race

Yesterday (June 16, 2007), Lenny Lucas and I competed in A Frick’n Adventure Race put on by Grass Roots Racing. We ended up placing second in the all-male category, and fourth overall. Event description. Results.

The event consisted of a kayak prologue in two-person kayaks, where we paddled from the start at Duck Pond parking area under the northwest end of the Highlevel Bridge, upstream on the Monongahela River until we went under the second railroad bridge we encountered. We then turned and came back. Paddling and rowing (crew style) are two different animals, and Lenny and I had quite a bit of difficulty maintaining a straight course. The consequence was that we were seeded very close to dead last when the time came to start the remainder of the adventure.

The remainder of the event was formatted as run-bike-run, where each run was 3 miles in length. The first went counter-clockwise, and the second went clockwise, on the same lasso-shaped trail. The lasso started in the parking area and then went up Nine Mile Run Creek, literally, right up the creek, and then gained a lot of elevation before looping through rolling hills. Since it is a loop, towards the end a lot of elevation was lost, and then it was back down the creek to the transition area in the parking lot.

At every transition, there was an obstacle to negotiate. This took the form of a large duct-like structure that we had to wiggle through, or a sort of balance beam exercise constructed of 2x4s. There were interesting twists such as being handcuffed, and first-on-must-be-last-off. In fact we had to remove the front wheels from our mountain bikes and push them through the duct ahead of ourselves!

The mountain biking stage began by riding along the creek, but eventually we had to go in the creek. In fact, we rode our bikes through the large pipe that carries the creek beneath Forward Ave. Very cool! The only upset was that the water made an unexpected transition to being deeper than we are tall, causing Lenny to spend a brief moment beneath the surface. He came out unscathed, though his cell phone would not.

All orienteering for the event was done during the mountain biking stage. There were small nylon baskets hung throughout the park, which each included a hole-punch that punched a unique pattern. To prevent the second of consecutive teams from simply following the first, the set of checkpoints was divided into two groups: red and blue. Thus, the marshal handing out maps and checkpoint lists alternated between red and blue lists. Once a team completed the first set of checkpoints, they returned to the marshal to get the other sheet.

There were two kinds of checkpoints: ones explicitly shown on the park map, and ones not shown. For the ones not shown, we were to locate them by following a bearing and a distance provided at the previous checkpoint. The first such checkpoint we encountered was R-5 (we received the red set of checkpoints first). At R-4, we read off a bearing and a distance, referenced our trusty compass, and tried to find R-5. After 15 minutes of searching, and aware that the penalty for a missed checkpoint is 10 minutes, we gave up and moved on to R-6. It turned out that it was hanging directly above our heads at one point, and we simply failed to look up. Oh well! It didn’t affect our finishing position. The other interesting obstacle was B-13, which was hung high in a tree out in the open. I let Lenny climb onto my shoulders to reach it! We actually dropped the checkpoint sheet after he was up, but he simply hung from the tree limb while I picked it up to save time.

As I mentioned above, we received red first. After completing the red course (with the exception of R-5), we asked the marshal how we were doing. He said we were the first team back, but there were more blue checkpoints than red checkpoints, so at worst we were ahead of 50% of the field. We worked our way through all of the blue checkpoints (I believe there were 15, the red course only had about 9; I don’t remember specifically because the first and last were the marshal’s station). I crashed once when my shoe unexpectedly unclipped from my pedal during a log crossing; got a nice bruise! When we reached the marshal with our blue sheet completed (and thus all orienteering completed), he said that there were only a few teams in front of us, and that one was barely in front of us. Indeed we caught and passed them within the next 5 minutes.

The final run stage was mostly an act of survival. At this point we were all very tired, but Lenny and I pushed on and never saw another team until we crossed the finish line. It turns out that we were about 11 minutes behind first place, and about 20 minutes in front of third place, not including our 10 minute penalty for missing checkpoint R-5. Had we found R-5 without incident, we may well have won the thing! Not bad considering we were nearly in last place after the kayaking prologue!

Photographers from Chuck Photography were on-hand during the event, and the prize Lenny and I selected was to receive a free photo. The proofs aren’t online as of the time of this writing, so I’m still unable to comment on any of the pictures. I suspect they will feature Lenny with a big smile and me with a pained zombie look, as Lenny is a very strong runner!

1337 pine

Pine is a very powerful text-based email reader. It has a tendency to be preconfigured on Unix/Linux systems administered by an academic institution, thus, a lot of college students know how to use it. For some time now, I’ve wanted to get it running to my satisfaction on my own workstation, which is a Debian Linux system.

Debian packages can be found here, but the default configuration is entirely unacceptable. The first problem I encountered was a seemingly endless series of password prompts, and even when I entered my password, pine remained grouchy.

First, a word about my network setup. I am in the CMU ECE department, which maintains an IMAP email server that accepts SSL connections. If your mail server is different, then the info below might not work for you.

The repeated password prompt problem, it turns out, was related to the option ‘rsh-open-timeout’ in ~/.pinerc. Apparently, by default, pine will try to establish an rsh or ssh connection to the mail server. Since my mail server accepts no such connections, I set ‘rsh-open-timeout=0’ and ‘ssh-open-timeout=0’ to eliminate any latencies while these connection mechanisms are attempted.

The next problem I encountered was that the SSL certificate used by my mail server is not certified by any “real” (i.e., for money, and thus of questionable value) CA, resulting in a warning to the tune of “self-signed certificate in certificate chain”. Kindly, pine tells you one way to fix this: append ‘/novalidate-cert’ to the end of your mail server’s name (imap.ece.cmu.edu) in my case. While searching for your mail server’s name and appending, do also include ‘/ssl’, resulting in something like ‘imap.ece.cmu.edu/novalidatecert/ssl’. Now, we are not validating the certificate from our mail server, so SSL is providing only limited utility. For the solution to that saga, stay tuned for the next episode…

At this point, I start pine, hit enter to accept my default username, and then type in my password. Still too much trouble. Pine can be compiled with support for a command line option ‘-passfile’, which specifies a file in which to store one’s password, so that the prompt no longer appears. This option is not supported by default, so I ended up compiling pine from source (./build ldb) after editing pine/pine.h to include the line ‘#define PASSFILE “~/.pine.pwd”‘. So much for the .deb package. You can get the source for pine here.

Next, I decided to replicate this installation on my Mac OS X system. I built from source (./build osx) without issue, but then I started getting Kerberos errors when starting pine, something to the tune of “Kerberos error: no credentials cache found.” Edit ~/.pinerc and add GSSAPI to the ‘disable-these-authenticators=’ line.

Security warning I feel obligated to include this since my job description dictates that I should. The password is stored encrypted but the key must be on the system somewhere, so using ‘-passfile’ may not be the best idea. Not validating the SSL cert means anybody can perform a man-in-the-middle attack and learn your username/password, not to mention see all your mail. I intend to figure out how to install my university’s self-signed root CA cert properly to eliminate this, but until then, danger!

This page contains an amazing amount of info on Power Pine; check it out.

How to display the date in the OS X menu bar

Not having the date up there has irked me from day one. I didn’t see an option for it in System Preferences, so I gave up. Well, I should have persisted. Here is Paul Stamatiou’s solution to it, which I summarize here:
Go to “System Preferences : International : Formats” and click “Customize” under dates. Construct the date you want, then select it and copy it to the clipboard. Click Cancel to go back to International : Formats and click “Customize” under time. Select “Medium” from the drop down and paste in your date where you want it. Done.

LaTeX, PDFs, OS X

When I work on a LaTeX document in Linux, I build it to a PS file and use GhostView to preview it. I like GhostView’s ability to auto-update when I rebuild the document, so that it’s always displaying the current version. Now, GhostView can be compiled for OS X, but then I have to run an X server for it to display. I’m too lazy to do that all the time and too particular to have the extra program running all the time.

In OS X, the native PS viewer is the built-in Preview.app, which converts the PS to PDF and then displays it. That takes a while, so now I build my LaTeX documents directly to PDF. This is a little better, because `open paper.pdf` does open the paper.

Now, when I make a change to one of my documents, I need to click “Revert” from the File menu in Preview.app. That was annoying, so I mapped a keyboard shortcut for it. “System Preferences -> Keyboard and Mouse -> Keyboard Shortcuts”. However, Preview.app does not cope well. The “Drawer” fails to update, and search functionality degrades after one or more Reverts.

Today I installed TexShop, and I am very pleased to learn that it can preview a PDF and auto-update it when the file changes (In the preferences for TeXShop, under the “Preview” pane, check the box for “Automatic Preview Update”). TexShop is a really big hammer for viewing PDF files, so I’ll probably look into what else it can do and put Emacs in jeopardy as my default LaTeX editor. Exciting stuff.