Category Archives: Work

Coasting to Work

I’ve been commuting between home in San Marcos and work Sorrento Valley every day since I bought my town home three and a half years ago. With the few exceptions when I’ve either been able to telecommute or traffic has been light, it has been an altogether miserable experience. At the beginning of the current recession, traffic improved a bit, but apparently there are still plenty of people who need to drive north on Interstate 5 past Del Mar in San Diego, because this summer has been absolutely awful.

I’ve shifted my schedule earlier for a couple of reasons. First, leaving home before seven o’clock in the morning gets me to work before traffic builds on the freeway; and second, leaving work before five o’clock in the evening gets me home in time for dinner with my daughter. Unfortunately, this summer has seen bumper-to-bumper traffic starting as early as three o’clock in the afternoon.

I’ve gazed longingly at the Coaster as it effortlessly glided by on its rails along the coast, while I crept along at a snail’s pace behind the wheel of my car. For the last three weeks—not coincidently since my return from Portland, where I’ve always enjoyed mass transit—I’ve done more than admire the train from afar, I’ve started to seriously consider using it.

So on Friday I did. I left for work a bit earlier than usual, so I could catch the 6:50 AM train at the Carlsbad Poinsettia station. After purchasing my $11 round-trip ticket, I crossed a footbridge to the boarding area. The tracks aren’t labelled, so I didn’t know which side I should wait on. After a few minutes, people had started to gather on the side I was on, so I guessed it to be the correct one.

When the train arrived, I headed to the upper level, because I wanted to enjoy the view. I wasn’t disappointed. The view of the beaches, the ocean, and the Del Mar Racetrack was gorgeous. In addition to that, I was able to use Twitter and read RSS feeds, something I’ve obviously never been able to do in the car. Twenty-six minutes later I was walking off the train at the Sorrento Valley station. A shuttle took me up the hill and dropped me off across the street from my office. I arrived at the same time, 7:25 AM, I always do.

I had a meeting scheduled from 3:00 to 4:00 PM, so I expected to catch the 4:26 PM shuttle and the 4:51 PM train. Fortunately, the meeting ended early, which allowed me to catch the 3:45 PM shuttle and the 4:05 PM train. That got me home just before five o’clock, which ended in a 75 minute commute. This is a bit longer than it would typically take me to drive home, but I arrived in probably the best mood I ever have after a commute. I attribute much of my mood to the Stone Smoked Porter I drank on the train. That’s right, the consumption of alcohol is allowed on the train. Bonus!

So on Monday I’m going to drive down to the train station and purchase a 30 day pass for $154. Unfortunately, I’ve missed the monthly cutoff to order a pass through my company’s bulk purchase and subsidy program, so I’ll have to pay full price until I can do that. I haven’t worked out how much money this will save me, if any, but right now I don’t care. It’s worth it to preserve my sanity.

This new commute comes with another benefit. We had been considering selling our 1997 Ford Explorer in order to help fund the purchase of a new car. By trading cars with my wife (I drive a 1999 Toyota Avalon) and using the Explorer to make the relatively short drive to the train station, we can get more life out of it, saving us some money. So even if the commute itself is a short-term monetary wash, there is plenty of cost saving in the long run.

I Need Minions

My development group at work, for the last couple of years, has been composed of three senior level programmers—two highly experienced (including myself) and one hard-working, but not as experienced. This week, the other highly experienced developer left our group for supposedly greener pastures.

A couple of things resulted from this change. First and foremost, we have a lot of slack to take up, so the rest of the year will be very busy for us. Second, I am now the de facto lead developer in the group. A group for which we need to hire two more developers (we had an open position before the loss of our comrade).

Two fresh, new, dreamy eyed developers. For me to lead, to teach, to mold. I like to think of these potential developers as my minions, willing to do my bidding.

For a while, we filled our open developer position with a temporary employee. We tasked this person with the creation of a process work flow for our development efforts. Something we could use to identify tasks, categorize them, prioritize them, assign them, and sometimes even work on them. The final result of this effort looks something like this:

Old, poorly-designed process flow

No, no, no. This will never do. I can’t use this. Look at how many boxes there are. Not only that, look the sheer complexity introduced by all those decision branches! I could never trust my minions with so much independent thought. Also, I have no desire to confuse my minions any more than they already are. So I designed a new process flow, which I believe is far simpler and easier to remember.

New, easy-to-follow decision flow

Yes, this is more like it. I suspect even the simplest of minions can effectively follow this process. And if they can’t, well, we have ways of dealing with them.

So I need minions. There are a few requirements, however.

  • Familiarity with Perl (other programming languages are acceptable—except Python)
  • Experience administering Linux (or another Unix-like system, I guess)
  • Fascination for grid computing
  • Misplaced enthusiasm for supporting users
  • Blind devotion to me

Not necessarily in that order.

Falsifying Data

One of the many expensive products we use at work is Platform LSF License Scheduler. Essentially, it’s designed to coordinate the use of even more expensive licenses in one or more LSF clusters. However, like a lot of proprietary software, it has its share of bugs.

My task this week was to compensate for one of these bugs. Basically, the request was to somehow lie to License Scheduler’s data collection process, convincing it that the license counts are different than the reality. The collection process uses Macrovision‘s lmstat(1) command to gather license counts. Okay, no problem. Twenty lines of Perl later, and I have my own lmstat command, which behaves identically to the real version (which I simply execute) except the license counts have been altered.

In my group, we’re supposed to be working primarily on projects. All of these projects are assigned awkward, forgettable acronyms. So I decided that this project needed an acronym, too. Not just any old acronym, either, but something memorable. After a bit of searching through /usr/share/dict/words, I finally settled on Project FALSE: Falsifying Answers in the License Scheduler Environment.

So with my quick hack, I’ve both defeated an expensive piece of software and won the prize for the best project name so far.

Coasting to Work

I spent the better part of my weekend, and this morning’s commute, thinking about public transportation. A year ago, when Mrs. sirhc and I moved to North County, I investigated public transportation; specifically, the Coaster. At the time it wasn’t worth it. There are too many days—karate, game night, user group meetings—I’d still need my car. The combination of that and the cost of the Coaster pass made it prohibitively expensive.

Well, now I’m paying over $4 per gallon on fuel for said car. It is time again to evaluate the Coaster. I would need a “2 zone” pass, which costs $126 per month. At $4 per gallon, that’s 31.5 gallons of gasoline. I burn approximately two gallons of gasoline per day on my commute, or 10 gallons per week, or approximately 40 gallons per month. The Coaster is becoming more attractive every day.

I live 7.8 miles from the Carlsbad Poinsettia Coaster station, a distance I could cycle to save even more fuel (and get some exercise). Regardless, even parking my car at the station, I would be reducing my commute by over 28 miles per day. I’d still need to drive for game nights and user group meetings, but the majority of my time would be spent on the train.

I don’t usually drive my morning commute in heavy traffic, opting to leave the house early to avoid it. However, it’s difficult to find a time of day to return home that will avoid traffic (except for really late after game night). While the train will likely add to the overall time of my commute, the lower mileage on my car and the benefit to my sanity will probably make up for it.

Qualcomm makes the deal even sweeter. The company subsidizes 25% of the Coaster pass, bringing the cost down to $94.50, and allows me to pay for it with pre-tax money from my paycheck. The only catch is, to receive a pass I need to apply for it by the first day of the month prior to the month the pass is for. For example, to have received a pass for June, I would have needed to apply by the first of May. So, while I could buy a full priced pass for either May or June (I don’t know if the passes are pro-rated), I couldn’t receive the subsidized pass until July.

I’m looking forward to trying out the Coaster. I may really enjoy it, being able to work or read on my commute. The time wouldn’t be wasted behind the wheel of my car.

How Not to Get a Job

Start by writing a lousy résumé. Be sure to be as general as possible so it’s impossible to understand what was actually done. Don’t forget to say in 14 bullet points what can easily be said in five. Should the desire surface to have someone proof-read the document, ignore it; it’s obviously a waste of time for something that will only be read once. Use (or should I say utilize?) as many industry buzz words as possible; nothing better indicates a long and illustrious career.

Lastly, make absolutely sure you request to reschedule your phone interview half an hour prior to its commencement. This one works especially well when I’ve cut my sleep short and arrived at work early just for your interview.

I Hate E-mail

I like e-mail, in general. It’s a convenient, asynchronous, mostly-reliable method of communication. I can receive a message, mull over it for a while, formulate a semi-intelligent response, and it hasn’t really pulled me away from what I was doing like a phone call would.

Many would consider me a Luddite, preferring Mutt as my MUA. of choice. I can imagine the cries of people who use so-called modern mail readers: fancy text formatting! embedded images! annoying layouts! hidden viruses! phishing scams!

What happened to the power and effectiveness of the written word? I suppose many aren’t capable of scribing a well-formed sentence, so they compensate with fonts, colors, and cryptic abbreviations. Still others are attracted to the shininess of the formatting. They can send mail that looks like a web page! Even when all they wanted to do was ask a short question!

This is progress?

Normally, I’m content with killfiling any mail that arrives with a content type of text/html. Unfortunately, there are some people I simply must communicate with for whatever reason (usually it involves money in one way or another). One of the fastest ways to get on my bad side is to send me mail that requires extra effort for me to read. This rant is a result of one of these messages.

I drafted a message of moderate length to discuss some points I thought important. Normally, I would expect any responses inline or, at worst, top posted. No, the response I received was even worse than what I see from users of Eudora’s unintelligible reply style. The responses were added directly to the paragraphs I had written, but styled bold and red for “readability.”

Hello, this is my opinion on the matter. I see, but have you considered this other thing?

As can be expected, this style doesn’t lend itself well to reading in plain text. Of course, I don’t think this style lends itself to any kind of comprehension.

I responded to this message, demonstrating how difficult it was for me to read without jumping through hoops, and expressing my annoyance at being forced to jump through said hoops. I tried to be kind, blaming the bad-habit-inducing tools (Outlook) rather than the writer. So this fellow tries again.

With an attached PDF file.

Seriously? Was he so enthralled by the font styling that he felt compelled to force upon me an attached document in order to render correctly? Maybe e-mail really is dead. Apparently a well-written, plain text message is too much to ask for.

[tags]annoyances, e-mail, people[/tags]

On The Road Again

I haven’t even had a chance to finish my trip reports from Canada, and now I’m off again. I’m boarding a red eye flight tonight, heading to Raleigh-Durham via Chicago O’Hare. I don’t expect to have many interesting things to say about the trip. I promise to have my tales from Canada posted soon, back-dated to fit the time line.

Hello Canada, eh?

I’ve been sent to Toronto for the week. Officially, I’m out here for training on a product we make very heavy use of. Unofficially, I’ve brought with me a copy of Lonely Planet Toronto and have already read through the section on pubs and bars. Technically, I’m in Markham, but I’m here until Friday, so I hope to be able to experience Toronto while I’m here.

Analyze This

I’ve been reading Google Hacks as an “assignment” from my local Linux user group. Basically, we raffle off review copies of books donated to us from O’Reilly. One of the requirements of this is that we review these books. Well, I’ll have my review finished soon. But that’s not what I wanted to write about in this post.

One of the final chapters in the book contains hacks for webmasters. As the master of my own as well as a few other web sites, this chapter was very interesting for me. It pointed me in the direction of Google’s tools for webmasters, in particular Google Analytics. I’ve known about this tool for a while, but I finally decided to check it out. I love it. All I have to do is add a snipped of JavaScript on all of my web pages (view the source of this one and you’ll see it there at the bottom), and Google gives me all sorts of pretty graphs.