Thursday, December 11, 2008

Log4Net ConversionPattern Strings

Several months ago we began to transition from an in-house logging framework to Log4Net in our primary web applications. For the last couple of days I have been trying to troubleshoot some production problems in the two of these applications and I noticed that my Log4Net logs were using a 12hr clock for the timestamp, and didn't include an AM/PM indicator. It also used old style parameter names rather than the newer verbose parameters.

Seeing as how I tend to cut and paste code for things like that, and I know other programmers do as well, I figured I would blog about what I am switching to, as well as a couple of other options. In case you are not really familiar with log4net, this setting is changed by editing the value string for the ConversionPattern param in the - log4net --appender - section of the web or app config file:

<param name="ConversionPattern" value="your string here"/>


The old:
value="%-5p %d{yyyy-MM-dd hh:mm:ss} - %m%n"
Results in:
ERROR 2008-12-03 01:28:38 - login.aspx submitted for 7234

Besides the timestamp problem, the format string is difficult to understand. It is not at all obvious what 'p', 'd', 'm' and 'n' stand for. Well, maybe the fact that 'd' is followed by a date format string you could guess that it stood for Date.

The following link lists both the shortcut and the verbose fomat values from the Apache log4net documentation.

The one I am switching to:
value="%-5level %date{yyyy-MM-dd HH:mm:ss} - %message%newline">

Note the more obvious setting names. This value string results in:
INFO 2008-12-11 14:06:59 - login.aspx submitted for 7234


Other choices:
value="%-5level %date{G} - %message%newline">
Results in
INFO 12/11/2008 2:15:07 PM - login.aspx submitted for 7234

value="%-5level %date{yyyy-MM-dd hh:mm:ss t} - %message%newline">
Results in
INFO 2008-12-11 02:06:59 P - login.aspx submitted for 7234

value="%-5level %date{G} - %message%newline">
Results in
INFO 12/11/2008 2:15:07 PM - login.aspx submitted for 7234

value="%-5level %date{u} - %message%newline"
Results in (not this is UTC time)
INFO 2008-12-11 14:06:59Z - login.aspx submitted for 7234

Those of you familiar with date string formats in the .Net framework will recognize some of these strings. The Log4Net framework allows you to use any date format that is valid in a ToString() call in the .Net framework. For additional format strings see the MSDN Format String Documentation.

Monday, December 01, 2008

Adding A New Label

I am long past due for an update to this blog. Part of my lack of motivation is knowing that most of the people who subscribe via various readers came here for the cycling posts. Unfortunately, other than my sporadic attempts to attend my local spinning class, I have reverted to near non-cyclist status.

This is not my preferred lifestyle, but represents a trade-off based on life long passions and priorities. Perhaps a little history is in order...

Many, many years ago in the very late years of the fabulous decade commonly referred to as the '80s', I met a fabulous woman. This woman became my wife, and led me to exclaim jokingly that in my life, she ranked right up there with Basketball and Subway Sandwiches. While she is clearly (at least I hope it's clear to people other than me, and to her most of all) at the top of my list, basketball remains a deep love, one that after years of devotion has come to return my favor.

My New Gig
About two months ago I was approached by the head coach of my son's high school basketball team about the possibility of joining his staff. It took several weeks of negotiations with family, bosses and my own insecurities, but approximately 3 weeks ago I became an assistant basketball coach and the head (read 'only') sophomore basketball coach for the high school. I run practice for 2-2.5 hours after my regular job each day, and will be on the bench for 20 soph, 21 JV and 21 varsity games.

This is truly a labor of love, because so far all I have been paid is 4 t-shirts and a pair of shorts. I am sure that the income will never come close to the costs. It probably won't even cover my gas money for the season. But already, having lost our first game by 20, and watching as the varsity lost by 50 to one of the premier programs in the state, I can't help but smile and say to myself, "Tomorrow is going to be a great day...I get to coach basketball again."

Monday, September 08, 2008

See and Be Seen

At work we recently switched from a standard 5x8 schedule to a 4x10 schedule. Among the other complications of this change is one of particular concern for cyclists. While in the past there was a major portion of the year where I could ride without lights, it seems I will need to use my lighting system year-round now.

A couple of co-workers have asked what kind of lighting system I use so I thought I would share my experiences here.

See or Seen
There are really two issues with bicycle lighting. Can you see, and can you be seen by others. In an 'urban' setting you may only be worried about being seen since street and building lights may provide plenty of light for you to see. Your speed can also be a big factor in this as well, as the faster you ride the more important your ability to read road conditions becomes.

For 'being seen' almost any reasonably bright white light will do and one that flashes may be better than on that only has a steady-state mode. On the bikes my family owns I have used several different manufactures and models, but have been very satisfied with several models of Cateye brand lights.

For my commute, I typically ride through a couple of industrial areas that are not well lit. I also ride at an average speed of around 16-18 mph through those areas, so the AA battery driven lights don't typically cast enough light an an appropriate pattern for my commute.

A wide range of lights are available that are more suitable for this use.

Eddy's bike shop in Ohio put up a great light comparison page. You can click on various systems and see the illumination, beam pattern and light color.

My Recommendation
The difference in cost between a AA or AAA battery driven system and the brighter rechargeable systems is significant. Unless you know that your speed and the road conditions require the brighter, more expensive systems, I would recommend you start with a low-cost light with a flashing mode. Then, if you decide it's not bright enough for your needs you can still use it in flashing mode, or as a helmet light when you upgrade.

Monday, September 01, 2008

Sarah get your gun

I try not to get too political in my posts unless they fall into one of three categories:
  1. I am absolutely outraged by something and just can't keep it to myself;
  2. There is a political point to be made about transportation or cycling policy;
  3. I see/hear something funny that has to be shared.
Today's post is a category 3 post.

I was just surfing the net, not really paying attention to the TV, which was tuned to the Larry King Show (clearly Mrs. GeekCyclist was in charge of the remote). There was a panel of 4 talking heads going on and on about the selection of Sarah Palin and the emerging complications related to her daughters pregnency. It was then I overheard this gem by one of the blatherers:
It's a good thing she's still a member of the NRA because it looks like it's going to be a shotgun wedding.
Excellent!

Saturday, August 30, 2008

What Kind Of Bike Should I Buy?

If you were paying attention I bought a bike about three months ago. My bike budget is zero, so the question here really isn't about me. In one week I was asked that by two neighbors and two co-workers. It seems like a get this question at least once every couple of weeks. I figure it must be gas prices. Even better, that question gives me a reason to write a new post.

It's not what, but where that counts the most...
The first thing I tell anyone asking about buying a new bike is that the best choice they can make is to go to their Local Bike Shop (LBS). There are a number of advantages to buying from your LBS rather than a department or discount store:
  • Qualified sales staff - if you ask them your question they should ask about the way you plan to ride and can match you to the right bike.
  • The bikes are higher quality, even at the bottom end of the catalog.
  • The bikes have been properly assembled by qualified mechanics.
  • Service is available after the sale, usually for free for a year or at a steep discount.
  • Usually any accessories you buy with the bike will be discounted.
What are you going to use it for?
Before you head to the LBS you should have a good idea of how and where you are going to ride your fancy new bike. Most people who are buying a first bike are looking to:
  • Ride around the neighborhood for fitness and fun
  • Ride parkways and paths (remember a car carrier to get the bike to the parkway if you live more than a couple miles away)
  • Ride in a charity ride like an MS-150 or a Tour de Cure
  • Replace local/short car trips and errands with bike trips
  • Commute to work
You should figure out what you think will be your primary use and then your top secondary uses. With the broad range of bicycles available you should be able to find something suitable within your price range. Sometimes the only thing that would need to change for one use to another would be accessories. For example if you want to ride paths and do charity rides but think you may also want to commute or run errands you may want to consider a rack and fenders.

The Test Ride
For most of the uses listed above, a bike in the 'cross' (not cyclocross), 'comfort' or 'hybrid' categories would be perfectly suitable. The key is to take as long a test ride as the store will let you. Bring your helmet, and wear the clothing you will normally wear when riding for your primary use. You want to make sure you are comfortable on the bike. Go back to the shop and have it adjusted and try again if something doesn't feel right.

Other Categories
The uses above are what most people list when they say they want to buy a first bike. There are other uses, and a lot of other categories. You may want to do technical or long distance mountain bike rides where a full-suspension bike would be appropriate. You may want to commute only, and might have a fairly flat route to work, in which case a trendy single-speed may be just the ticket.

The key is to tell the worker at your LBS what you want to do, listen to their suggestions, and try several models before you buy.

Sunday, August 17, 2008

On Top Of Utah - The Videos

My little Sanyo camera also takes videos. The actual quality is much higher than what you get when you post to YouTube, the these will give you an idea of beautiful area we backpacked in.

The view from our campsite. It was kind of early, so when I get the camera pointed east there is a pretty serious exposure problem...


The view from the top of Kings Peak. I think I was suffering from oxygen debt when I narrated the view from the peak. What I called Yellowstone Basin is actually Painter Basin, and the basin I didn't know the name of is the Yellowstone River Drainage.

Saturday, August 16, 2008

On Top Of Utah - Kings Peak

Brennan and I capped off our summer with a fantastic 3-day backpacking trip to Kings Peak; the highest point in Utah.


We started at the Henry's Fork Trailhead at about 11:00 AM on Monday. We proceeded to put in an 8 hour day of backpacking, hiking about 12 miles and over Gunsight Pass into Painter Lakes Basin.

This was the view outside our tent the next morning.

On Tuesday we hiked up to Anderson Pass, and then started the 0.8 mile boulder scramble to the top of the peak. I had figured we could make that portion of the hike in about an hour, but in the end I think it took us closer to two hours.

There were a number of people up on top when we got there, so we asked a volunteer to snap this picture for us.


We only stayed on top for a few minutes. Recognizing that the east face was really not that much steeper than the north ridge, we made a bee line down the east face and back to the meadow below the peak. I think that saved us about an hour of hiking time.

We got back to our campsite at about 4:00 PM, so we decided to pack everything up and head back into Henry's Fork Basin. We went back over Gunsight Pass and headed north for Dollar Lake. We camped about 1/2 a mile to the south east of the lake.

Neither of us slept well that night, so we were up by 6:00; packed and on the trail by 7:00. By 11:30 we were back at the trailhead and looking forward to lunch at the Pizza Hut in Mountain View, WY.

More Pictures

You can visit my Flickr Page for more pictures from this trip, including a critter, some wildflowers, and an unusually happy teenager.

Lessons Learned
We really hiked in an aggressive manner, putting in long days. If you have 4 or 5 days I would recommend spending the first night in Henry's Fork Basin, then crossing the pass on the second day and camping in Painter Lakes Basin. In fact, there are a number of pretty and secluded lakes in Henry's Fork Basin so you could spend several days there prior to crossing over. A key advantage of taking extra days would be that you would be better acclimatized when you actually attempt the peak.

There are a couple of short-cut routes to the base of the peak. In fact our campsite sat near a spring on one of the longer short-cuts. Most of the shortcuts involve significant boulder hopping or scree slope navigation. I am not sure that the savings in distance equal any savings in time unless you have experience navigating that kind of terrain.

Tuesday, July 15, 2008

Bike Lanes

I made a mistake today. I read the newspaper opinion section which included a letter about bicycling. Then I compounded that mistake by going online and reading the comments.

Every time there is a plea in the paper for bicyclist safety you see the same arguments in the comments. From cycling opponents you see:
  • Cyclists don't pay for the roads. (False, cyclists actually subsidize auto traffic)
  • Cyclists should get out of the way, not impede traffic, or get on the sidewalk. (False, we are traffic, not impeding traffic; riding on the sidewalk is significantly more dangerous than riding on the road.)
  • Cyclists are scofflaws who run every light. (I am sure no motorist treats Stop's as Yields, nor do they speed, make turns without checking blind spots...)
  • Etc.
Each of those is a post or more. But one thing that frustrates me is when the cycling advocates plead for more bike lanes.

There are drawbacks to bike lanes The most dangerous place for cycling accidents are intersections. Bike lanes frequently complicate intersections and increase the conflicts between motorists and cyclists. A prime example is a bike lane that is a thru-lane, where there is a car turning right. The complications are even worse when a multi-use path crosses a road. Another drawback is that when a lane exists motorists sometimes believe that the cyclist must remain in that lane, so they don't allow or accept it if a cyclist has a legitimate reason to move to the left.

Don't get me wrong. I love some bike lanes. One of my commutes travels about 5 miles on a Class 2 (the kind that are striped like an additional traffic lane) bike lane. Bike lanes can be nice because they do separate traffic moving at different speeds, they may increase the passing distance when a car overtakes a bicycle, and I think they make novice "vehicular cyclists" feel safer.

At the same time, I am not sure people are really aware of what they are asking. I want to use my bike to ride to the library, Burger King, Subway, the grocery store, work. In short, I want to be able to ride everywhere I would normally drive. I recognize that I am not allowed on the major highways, but what these 'advocates' are really asking for is a bike lane on every road.

Clearly, that is not a realistic solution.

There are better alternatives. One is to advocate for and take advantage of vehicular cycling training. In Utah the Salt Lake Bicycle Collective teaches free courses that focus on riding in (becoming part of) traffic. You can visit the League of American Bicyclists education page to find similar programs or instructors in your area.

The other alternative is to advocate for Complete Streets. Complete Streets are designed and built with multiple user groups in mind; not just fast moving automobile traffic. From a cyclists point of view a complete street is a street with wider lanes and shoulders, rather than a marked bike lane, and includes traffic calming like median strip planters.

The movement for Complete Streets integrates well with the Safe Routes to School program. It also complements advocacy programs that highlight sustainable development and walkable communities.

Saturday, July 05, 2008

Harmon's Best Dam MS-150 Report Continued

Saturday Night
After the first day of ridding there is a big dinner at the fairgrounds, entertainment, and a raffle. They announced that it looked like the ride would net over 1.7 million this year. While everyone was sitting around talking the couple sitting across from me had to leave. Standing up, they asked the woman sitting next to me if she wanted their raffle tickets. Wouldn't you know it, the grand prize ticket was in that set of tickets; she won a Specialized Epic Marathon worth over $4,000. I couldn't believe it.

Brennan didn't get enough to eat, so we went to an A&W for burgers and treats. Brennan slept in the spare bed in Ken's room at the college. I spent a second night in my tent at the fairgounds, and actually slept much better that night.

Worshiping at the alter of Eddy Merckx
Usually Brennan and I don't ride on Sunday, but we make an exception for this ride. The Sunday 75 mile route is beautiful, traveling up Blacksmiths Fork Canyon for 17 miles to Hardware Ranch Recreation area.

Ken was able to ride with us, but was pretty tired from running around as a volunteer the day before. Brennan and I felt better that I thought we would, but neither of us wanted to do the whole 75 route. The 40 mile route skips the canyon. In the end we decided to ride the canyon and back down, and then just ride the few miles back to the fairgrounds. It was a fantastic decision.

We really enjoyed riding together. Ken is a mountain biker who is just getting into road biking as he prepares for a sprint triathlon coming in a month or so. Brennan and I introduced him to the concept of a 'town line sprint' as our custom route went through three or four little towns on the way back into Logan.

Ride Stats
The following links will take you to my MotionBased account ride stats. I had my Garmin Edge 305 with me, but I forgot my HR strap, so heart rate is missing.

Saturday's Ride
Sunday's Ride

Thanks again to all who donated. Hopefully you believe that this is a worthwhile cause, and an activity you can support in the future.

Wednesday, July 02, 2008

Harmon's Best Dam MS-150 Report

First, that's not a typo - the Utah MS-150 ride took its name from the 3 or 4 dams that the ride passed when it was originally held in Park City. Even though it is held in Logan / Cache Valley now, it still passes a couple of dams and reservoirs.

The Fund Raising
I didn't make my goal but did raise a substantial amount. Brennan and I raised over $800 this year. We rode for the Harmon's team which looks to raise over $100,000 and the entire ride will probably raise over $1.7 million this year.

Thanks to everyone who donated to Brennan and I this year. There were a number of people who dug deep into their wallets and made donations in the last week, including a few that I know donated money that was budgeted for other expenses. I appreciate every penny.

The Trip
The drive up was great Ken from work rode up with Brennan and I. We left work early and made it on the rode by 1:00. Ken had to be at the Logan Fairgrounds around 4:00, so we had plenty of time. He volunteered (and worked very hard) on Friday and Saturday and rode with us on Sunday, which worked out perfectly. He also had a room at USU, so we had a place to shower even though I was camped at the fairgrounds.

We got to the fairgrounds early enough that I got a great camping space. Friday night was Team Dinner Night, and the Harmon's chefs put together a fantastic buffet of salmon, chicken, pasta salad and fruit. For a while I was sitting across from Dean, who I found out was the president of Harmons. Turns out that years ago he started as a stocker and worked is way up to the top. Inspiring.

Saturday's Ride
Brennan and I set out on Saturday not really knowing which of the three options (40,75 or 100 miles) we were going to ride. We really did very little training for the ride this year. We met Ryan and Natalie (friends from out neighborhood) at and early rest stop, but they were planning on riding the 40 route and we were feeling pretty good.

We then hooked up with Carmen from my spinning class. She was riding with Sophia who owns the salon where my wife and kids get their hair done. They had trained quite a bit more than we had and were planning on doing the 75. We rode with them to lunch and beyond, hoping to finish strong and together.

The Phone Call
Right before leaving on the ride I debated whether to bring my cell phone. I'm glad I did, even though it led to an interrupted ride. Neither Carmen nor Sophia had much experience riding in a pace line, so I was explaining to Sophia how to follow someones wheel safely when my phone rang.

Right before we left for Logan I had pushed some changes to one of my projects into production. On the phone was my boss, letting me know that the changes had a serious bug. It took about 45 minutes to walk him through the final stages of troubleshooting, backing out the bad code and publishing a clean application. Overall that went pretty well.

After 45 minutes of 'rest' hiding behind a tree so that every group that went by wouldn't ask me if I was okay, I felt pretty good. I cruised through the last rest stop in into the finish feeling pretty strong.

(To be continued...)

Thursday, June 26, 2008

Big Ride Weekend

The Utah MS-150 is this weekend, and I am really looking forward to it.

If you can spare a few minutes and a few dollars, please click on the "sponsor me" link to the right and help me meet my goal of $1,000 to fight this disease.

Honestly, I first registered for an MS Bike Tour because I had heard it was a fun way to do a century ride with friends on a well supported course. While that is certainly true, it's no longer the reason I ride.

I ride because I want to do something for the people who have been diagnosed with MS - Including my sister who was diagnosed the year after my first MS Bike Tour.

I ride because want to do something to prevent more people from learning what it means to live with this disease. Today, there is no cure for multiple sclerosis, and with diagnosis occurring most frequently between the ages of 20 and 50, many individuals face a lifetime filled with unpredictability.

Why You Should Sponsor Me

The National Multiple Sclerosis Society will use funds collected from the Harmons MS Bike Tour to not only support research for a cure tomorrow, but also to provide programs which address the needs of people living with MS today.

Because we can fight this disease by simply riding a bike, because we have chosen to help thousands of people through a contribution to the Harmons MS Bike Tour, we are now getting closer to the hour when no one will have to hear the words, "You have MS."

Monday, June 16, 2008

Bad Cop, No Donut

I got pulled over last Friday night.

JuniorClimber got a job as a janitor at our local county recreation center. He is working from 6:00 PM to 10:00 PM most nights. Since he doesn't yet have his driver's license and doesn't want to hassle with lights for his bike Mrs. GC and I get to shuttle him around, or at least pick him up when it is dark.

So around five after ten I jumped into the car and headed down the street. I try to be a conscientious driver, driving the speed limit and signalling; I think being a cyclist helps with that. I pulled into the parking lot and through the pick-up / drop-off zone and barely had to stop since Junior was waiting on the curb and got right into the car.

We pulled back onto the street and headed to McDonalds, passing a sheriff's car sitting right outside the entrance to the parking lot. We pulled up to the intersection and the lights behind me were flashing. I was shocked! I really didn't think I had done anything wrong.

The officer came to the window and asked for my license. When I handed it to him he asked "Why did you pull in there like that?" I was completely confused because I was think "I pulled over because you pulled me over!?!?".

Turns out he had come up behind me when I pulled out onto the street in front of my house, and thought it was suspicious when I pulled into the dark rec center and then back out so fast. When he saw that we were father and son and had a 'believable' story he sent us on our way.

The Aftershock
Sitting in the drive through, I started to get a little frustrated. I had visions of "may I have your papers please". I had made legal maneuvers, signaled and pulled into and out of a public parking space. It is irritating that I was subjected to a police action for doing nothing more than picking up my son from work.

I wonder if I should have behaved differently. It seems I could have asked for what I was being stopped before providing my ID, but then again, being oppositional likely constitutes probable cause for a search.

Saturday, June 14, 2008

Two-Wheeled Wonder in Errandsville

Eric Sorensen had an excerpt of his book Seven Wonders for a Cool Planet published in a recent edition of Sierra Magazine under the title Two-Wheeled Wonder. I highly recommend you go read it before it disappears into the nether-net, even if you are not a cyclist. Here are a couple of excerpts:
The bicycle is a masterpiece of physics. It harnesses human muscle power directly to that old-time marvel--the wheel--and yields a vehicle more energy efficient than any other devised, ever, by anyone. A human on a bicycle is more efficient (in calories expended per pound and per mile) than a train, truck, airplane, boat, automobile, motorcycle, skateboard, canoe, or jet pack. Cycling is more efficient than walking, which takes three times as many calories per mile.
This introduction reminds me on one of the UTA Blue Bikes I see downtown every May.
You can see more blue bike pictures here.

There is a great point in the article about how we regard bicycles in the U.S. compared to the way they are seen in the rest of the world:
Bicycles outnumber automobiles almost two to one worldwide, and their production outpaces cars by three to one. Rush-hour traffic in China is dominated by these human-powered vehicles. Even in the wealthy cities of Europe and Japan, a large share of the populace gets around by bike. Only here is it treated as little more than a plaything.
It's always been frustrating to me the way mass market chains treat bicycles as toys. It seems like most chains use their bicycle section to mark the transition from Toys to Sporting Goods. In the never ending battles of alternative transportation advocacy it seems we are always trying to chip away at the perception that bikes are toys for children and eccentrics. I long for the day when parents look at buying their child a first bike the same way they would when buying a child a first car - take it seriously, buy quality, and teach them to ride right.

Finally, I am going to adopt his term 'Errandsville':
While advertising sells cars and trucks as tools for the open road, most often they help us inhabit a small daily realm--"Errandsville"--defined by home, store, job, and school. Many of these trips are easily bikable--or walkable--even on roads designed without bicycles or pedestrians in mind.
A topic for another post is Complete Streets v. Bike Lanes, but it is my experience that there are very few places I go to in my normal daily life that can't be easily reached by bicycle. I can arrive at most places without using any high speed / high traffic thoroughfares.

So, thanks Eric. Your book is on order at my local library and I have a hold on the first copy that makes it to the shelves.

Thursday, June 12, 2008

What's in a Name?

Since announcing the purchase of my new ride an interesting phenomenon has occurred. Several people have asked what I have named my new bike. Did I miss something? Is this a requirement for being part of the serious cycling community?

I have always known there were people out there who named their bikes, cars and other important inanimate object. I have never been one of them. That's not to say I don't remember fondly the various sets of wheels I have used to transport myself around this fair world:
  • A dark green Coast-to-Coast secondhand bike I got from my grandparents. My first 10-speed.
  • A brand new Schwinn Le Tour Lux I bought with money saved from delivering newspapers (and some matching funds from my parents). I crashed the first time I did my paper route on it when a neighbor kid ran out in the street in front of me. I rode that bike everywhere for a couple of years.
  • A blue and white 1976 Volkswagen Van that was my primary vehicle when I got my license, and that threw rods when I aggressively down shifted on the way to a date. Missing that date was the beginning of the end of my first 'serious' high school romance.
  • A 1976 Datsun Pickup. Mustard yellow, this truck was backed into in the school parking lot by one of my best friends, and one of the only friends from high school that I still hang out with after 20 years.
  • A red cruiser bike that I rode in San Jose Dos Campos, Brazil while on a religious mission. This bike had to have weighed at least 40 pounds, and was such a pain to ride that instead I would walk miles and miles each day.
  • A tan Mercury Lynx, the first car I actually bought for myself, and the one I was sitting in when I gave Mrs. GeekCyclist her engagement ring.
  • A woody side Plymouth Volare that belonged to Mrs. GC when we got married, that was always breaking down. My dad took pity on use when we moved from Illinois to Utah and bought it from us for $500.
There have been others, but I swear, I don't think I ever consciously considered naming any of those vehicles.

Should I Conform?

So, now I am left wondering...should I succumb to the pressure and give my new bicycle a name? And if I do, am I required to name the other steeds in the stable?

Currently I have the following bikes:
  • The new hotness - An '07 Specialized Roubaix Comp
  • The tried and true, even if a little creaky - An '02 Novara Randonee Touring Bike
  • The old and a little rusty beater - A '92 Mtn Tek Verticle - A rigid fork hard tail that I started commuting to work on.
If you name your bikes I like to hear about it in the comments. If you feel strongly about what I should name the new hotness I am open to suggestions. The obvious 'Ruby' has already crossed my mind but I am not sure it feels right. Maybe because bikes aren't really supposed to have names...what do I know?

Wednesday, June 11, 2008

A Smooth New Ride

It's terrible to think that this is possible, but my wife bought my love this week.

After many years of riding an excellently functional Novara Randonee touring bike, Mrs. GeekCyclist gave me a significant budget to buy a new bicycle for fathers-day.

This is the result:19 pounds of buttery-smooth carbon fiber Specialized Roubaix Comp sweetness, full Shimano 105, Mavic Open Pro wheels...

Okay, so you have to be a bike person to appreciate this, but I am a bike person...and every time I look at it I want to giggle like a school girl.

Mrs. GeekCyclist would want me to tell you that this bike is named after the hometown of her royal French ancestors through Pierre Apollonaire de Roubaix. (I hope I spelled that right.)

That picture doesn't quite do it justice, so here is one 'lifted' from the Specialized site:

Sunday, June 08, 2008

Giving it up for ChainLove.com

On a local message board someone posted a message last week about ChainLove.com. ChainLove is a subsidiary of BackCountry.com, a retailer that also operates DogFunk.com, SteepAndCheep.com and other outdoor gear sites.

ChainLove, for lack of a better description, operates on a QVC model. They list one item for sale at a steep discount and sell them until they are gone. I am not entirely sure that the 'until they are gone' part is completely true; it seems like they have switched items with some inventory left, and I have seen the same items listed multiple times. SteepAndCheep, DogFunk and several of the others operate on the same model but specialize in different subsets of outdoor gear.

Here are some samples of what I have seen recently:
  • Pearl Izumi Men's Veer Short-Sleeve Cycling Jersey ($18.75/list $54)
  • Oakley Men's Compression Short ($12.50 / $84.95)
  • Northwave Kameleon 3 MTB Shoe ($49.00 / $139.95)
  • SockGuy Cycling Sock 4-Pack ($11.00 / $39.95)
  • Fizik Rondine MG ICS Bike Saddle ($22.86 / $83.30)
The shipping costs seem pretty reasonable as well. I purchased a couple of jerseys last week, and then I noticed that I was charged sales tax. I looked more closely and realized that not only is Backcounty.com a local Utah company, their main warehouse and showroom is right on one of my primary bike commuting routes to work. I rode out there and had them pull my order and they credited the shipping cost back to my card.

A Customer Service Story

Please note, I have no interest in turning this site into a customer service review site; but I have to share some of these experiences.

Saturday they were running a Bar Tape deal for something like $5.70, so I ordered two sets. When checking out I typed something like the following in the shipping instructions:
DO NOT SHIP
Hold for local pickup.
Around 1:00 today I got a notice in my email that my order had shipped, so I sent an email:


I appreciate the quick shipping service, even on the weekend.

I would have appreciated it more if someone had read the Shipping
Instructions that read "Hold for local pickup". Eight bucks is
expensive shipping to send my ten dollar order 40 blocks, especially
when I ride my bike right past your place every morning and afternoon
on my way to and from work.

What is the best way for me to make sure my orders get held at your warehouse?

About 30 minutes later I got a response back:
I do apologize for the inconvenience. I have given you a credit of $7.56 for your shipping. I recommend using Backcountry.com's Live Chat as the fastest and easiest way. Open up a Backcountry.com window, in the upper right of the screen there is Live Help button, click on that to chat with a representative. Then copy and paste your order number into the chat and you are good to go. You can also call Backcoutry.com at 1-800 409 4502.
I really didn't expect any kind of credit, just a hint on the best way to arrange local pickup. I still think that the shipping instructions should have been enough. But, money back and easy instructions for the future, that seems like a great way to 'fix' this minor gaffe.

Friday, June 06, 2008

Blackburn (Bell) Customer Service


Over the last few years that I have been trying to pay attention, there has been a fairly significant level of consolidation in the bicycling related industries. I may not have all of these right, but I seem to remember:
I am sure there are many others. It is usually assumed that when there are consolidations like this, that competition and customer service are areas that suffer. Anecdotally, it does seem like the 'deals' at Nashbar and Performance are not quite as good as they used to be; there are fewer coupons as well.

Replacing A Pump

At work we have a cage in the parking garage that provides more secure parking for bicycles. When the cage was built three years ago I asked a couple of regular riders to pitch in a few bucks and went to the LBS. I came back with a Blackburn Track Pump. The pump served us well, but the presta portion of the dual head has worn out.

Thinking I could buy a replacement head I called Bell Sports, the parent company of Blackburn. After explaining what I needed I was told that heads for that pump were no longer available. I told the customer service rep. that I would just go buy a new pump...

"Wait.", she said. "All our pumps carry a lifetime warranty, please hold on for a minute." When she came back on the phone she said "I have ordered a new Air Tower pump as a replacement for you."

She collected my mailing address, and eight days later the bike cage became the home for a new Blackburn pump.

I guarantee you, every opportunity I have, I will think twice before choosing another manufacturers product over one built by Blackburn.

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.