Friday, May 30, 2008

Mind Your Own !@#$ Business

With gas prices at or above $4.00 a gallon there have been more cyclists on the roads than I have ever seen before. Some ride like they have been commuting for years, and others clearly have no idea how to ride safely or legally. There are two things I see frequently that really annoy me:
  • Running Stoplights, especially in the busy downtown area; and
  • Riding on the left, facing traffic.
I feel like each of these are egregious enough that given the chance I will try to (politely) discuss it with the offending cyclist. For light jumpers I point out that not only is it against the law and dangerous, it makes it difficult for motorists to predict what the next cyclist is going to do. It also irritates many motorists and cyclists alike. For wrong way riders, if I have time, I point out that it is more dangerous, cars don't expect you to be there, and that in an accident the cyclist will most likely be found at fault and recover nothing. Most people will either respond politely, or make it obvious that they are going to ignore me.

So the other day I was riding home on a two lane road with bike lanes in each direction. There was another cyclist on the opposite side of the road, riding in the bike lane but against traffic. We were almost matched in speed so I slowed down a little, waved, and said, "Great day for a ride." When he responded I said, "I don't know if you know this, but riding against traffic is against the law and very dangerous."

You would have though I had insulted his wife, mother and firstborn. He reacted to me with a violence almost physical, suggesting that I have an inappropriate relationship with both myself and my mother, among other things.

Maybe I should take his advise and just mind my own business. I know that since then I have seen two offenders and not said a word. That bothers me as well. Somehow, as a body of 'transportation' cyclists, we have to find a way to politely yet effectively educate new or oblivious cyclist about riding legally and safely.

Friday, May 23, 2008

The Way Sports Should Be

You may have seen this on ESPN, but it is an excellent story. In an age that sees high school athletes acting like spoiled and privileged pros, this is a refreshing display of sportsmanship (or should I say sportswomanship) at the college level.




I've been involved with AAU basketball, state competition level soccer and I can tell you that compassion and sportsmanship like this is unfortunately rare these days.

Thursday, May 22, 2008

Try, Try Again

As I detailed in a post a while ago, I find myself reviewing and updating a large amount of vb.net code that was written by a developer in our shop that moved on to greener pastures. Even though my background was originally in the BASIC world, I moved to C# when Visual Studio .Net 2002 was released and find that I really prefer it to vb.net. I have embraced the curly brace. So I have been converting as much as I can to utility classes in C#.

One of the great improvements of the .Net framework for VB was the Try-Catch-Finally style of error handling. However, just like GOTO, it can be misused and abused. The Pragmatic Programmer tip #34 is Use Exceptions for Exceptional Problems, and is an excellent read. But before you get there, you must have a basic understanding of how an exception is going to be handled.

With a few modifications (including translation to C#), this is a function that was in one of the projects I inherited.


public bool CheckStatus()
{
try
{
SystemCheck();
}
catch(Exception)
{
SystemCheck();
}
}


Trust me, it is unlikely that if SystemCheck() threw an exception the first time you called it that it will execute successfully when called again in the catch.

Here is another example:

public DataTable GetData()
{
try
{
DataTable dt = new DataTable();
/* Code here that:
Built Command and Connection objects
Adapter
Filled Adapter
*/
}
catch(Exception)
{
'Do Nothing
}
finally
{
cn.Close();
'more stuff snipped here
}
return dt;

}


The 'Do Nothing' has to be a HUGE red flag that there is something wrong.

If you know it might happen, handle it in the body of the function. Save the catch for things that are truly 'exceptional'. When they happen, log the details, recover if you can, or fail gracefully.

Tuesday, May 13, 2008

Hey Hey, Magic Bus (or Train)

The Wasatch Front has a new transit option - the FrontRunner high speed commuter rail has been open for about three weeks now. I don't live in the area served by FrontRunner, but I have heard some good things about it.


The most interesting thing to me was a pair of letters in the Salt Lake Tribune. Cole Carothers who lives near the end point of the train wrote in before it opened:
I just worked the numbers to see if FrontRunner would save me money: I commute 1,080 miles a month. This morning I purchased gas at Costco for $3.07 a gallon. My car averages 20 miles per gallon. That comes to $165.78 a month for gas. A monthly FrontRunner pass is $145. That's a difference of $20.78. The distance from the Woods Cross stop to my work is 2.1 miles, one way. That's 84 miles of walking a month (no bus service from the stop)... I figure gas will have to be about $6 a gallon before I start riding the train. (FrontRunner Math, SLTrib, 4/14/08)

There were a number of responses, both as letters to the editor, and as online comments on his letter . Most of them pointed out how Carothers' math failed to account for either the total consumer cost of driving (oil changes, tires, service, insurance) or the social cost (increased pollution, congestion, lost productivity, and health costs). All points with which I agree.

The first couple of days that FrontRunner was operating it was free, and it appears that Carothers took the opportunity to try it out as shown by his follow-up letter in the paper this week:
The feedback that I received about the letter made me look at the problem with a more open mind. So when the fare was free, I took FrontRunner to work and arranged to be picked up at the Woods Cross station by a fellow employee who lives in the area. I tried it again the next day.

That night I went looking for a monthly pass....

My new commute takes about the same amount of time, but it only has two stop signs and the stress level is absolutely zero. Two fellow employees now join me.

Thanks to all who responded to my letter and helped me keep an open mind about public transportation. I will be riding the train well into the future. (Driving or FrontRunner?, SLTrib, 5/9/08)
Free Fare Days
I can think of no better argument for UTA to run free fare days once a month, or on poor air quality days like some other transit systems do. I don't have any statistics, but the anecdotal evidence is that all of the riders on the buses I ride when I am not commuting by bicycle are using annual or monthly passes. My guess would be that like mine, most of these passes are subsidised by employers. I figure that the cost in 'lost fares' to UTA for a monthly free fare day would be negligible because most riders don't pay at the fare box.

The benefit would be an opportunity for non-believers to try out alternative transportation. If they did it on Red Air Days it would reduce pollution as well. I think a significant percentage would be like Carothers, and would find that riding the bus is far more convenient and economical than they estimated.

Wednesday, May 07, 2008

A Rose By Any Other Name

It has been a very strange year for me so far. It has left me wondering; am I still a cyclist if I have only ridden 3 or 4 times so far this year?

For the last several years much of my identity has been tied to cycling. I promote cycling to work, provide 'maintenance' services for all the kids in my neighborhood, and usually ride several thousand miles a year.

This year I have even had a hard time making it to spinning classes more than once or twice a week. Admittedly, there are a number of factors that play into my lack of cycling:
  • At work we went nearly 6 months down a developer on my team. My particular skill set meant much of the additional work fell to me.
  • Between Mrs. GeekCyclist's work schedule and the school/activity schedule of the boys it seems like I have to be in more places at more times than before.
  • About a month ago I took on coaching the local high school's freshman basketball team for the spring season.
I am going to try and rectify that over the next two weeks. First, our commuter club is doing tune-ups on Friday, and working on bikes always gets me in the mood to ride. The reason we are doing the tune-ups is that next week is Cycle Salt Lake Week as part of National Bike Month. We have a couple of bike tours and a ride to work with the mayor. I always get motivated during bike week/month.

Finally, I recently got around to signing up for the MS-150. I will post more on that later, including a link so that all my friends who have stuck by the blog while I have 'gone quiet' can support me while I ride. Signing up means organized training rides, and a need to get back in shape.

So, maybe I can still call myself a cyclist.

Tuesday, May 06, 2008

Loving Launchy

I have a problem. I manage a bunch of websites, some of them dynamic applications, and others static 'classic' html sites. Periodically I have to check the sites for broken links, for which I use a great utility called Link Sleuth by Xenu.

But I am a nerd. This means that I am constantly installing, uninstalling and moving programs around on any of the 3 computers I use all the time. When it comes time for me to check these links I can never remember where the program folder and executable link for Link Sleuth actually resides, nor can I remember where I put utilities like this on my start menu.

Enter Launchy.

Actually a friend at work pointed me at Launchy a while ago, and at first I didn't get it. I figured it was just a quicker way to create shortcut hot keys like this. I had no idea that it would index executables on my drive.

Now all I have to do to start Link Sleuth is type ALT+Space and then type X. It selects Xenu Link Sleuth automatically. I hit enter and everything is coming up Millhouse.