Author Archives: jmcmurry

Good Software Practices Scale Down

Today I revisited some scripts I last touched on December 5, 2011 for very very carefully archiving research data with checksums, an audit trail, and other very very careful things like that.

One of the requirements for this project is that the first phase of my processing needs to accept input data from a provider. Unfortunately, this input format has never been the same twice. Grr.

Upon receipt of the second variation on July 12, 2011 (six days after I started the project), I took the time to make the script somewhat configurable with an external file.

This was handy in November 2011 when I needed to do a similar set of work for a second research dataset. I put everything in a configuration file stored alongside the input data. Date format strings, headers, fields of interest, key/values for data types, etc. That meant I could share code between datasets as they emerged from the wild.

So last week, I got another set of input data. Yep, another unique format. I haven’t thought about this in over a year, and I have a terrible memory. Today, I got the input data parsed and validated in five minutes after editing a config file, because:

  1. I had one place to do customization
  2. I took steps to encourage code reuse
  3. I wrote good comments and gave myself a -h option

All this despite knowing that I was probably the only one who would ever look at this again. And I have those dates because everything is in a Subversion repository. Did I mention that I wrote it in a language I don’t know very well?

Granted, this is a tiny little thing in the universe of computer things, but my point here is that it’s often worth doing the right thing for the next guy, even for small things, even if the next guy is you. Perhaps especially if it’s you.

Oldies but Goodies

Today at the grocery store, I heard “Hot Hot Hot!!!” by The Cure playing on the store music pipe. The Cure. At Kroger.

(Audio might only happen on 240p resolution, no idea why.)

This song is from the 1987 record Kiss Me, Kiss Me, Kiss Me, one of my all-time #1 no doubt desert island favorites. I remember buying this CD at a mall somewhere in northwest Arkansas during a high-school band trip.

The odd thing is, I just listened to most of this record two days ago as background music while driving and walking around at work. iTunes tells me the last time that happened was March 2007. Almost six years ago.

I am officially an old man. And the cadre of store music pipe sociologists at Kroger HQ knows what they’re doing, demographically speaking.

Pearl

This is going to be sad.

Pearl has been gone for two months, just before her thirteenth birthday.

I’ve been putting off writing about this because it hurts, and because it feels like it just happened. When I get up in the middle of the night, like I did an hour ago, I’m still taking care not to step on her in the dark, even though she’s not there. This house is unbelievably quiet, and I miss her terribly.

Pearl ran this place, even when her arthritis and hearing loss meant she stopped meeting us at the door. She pawed at the refrigerator and stared a hole in me as a reminder that I hadn’t given her an after-breakfast treat. Pearl loved her leather couch, and chest divot rubs, and licking chins. She had a switchblade back right leg.

She wanted to know where everyone was, including the little dogs whom she tolerated but secretly loved. When she couldn’t make it out to the yard, she watched us from the patio, or from a patch of cool grass. Pearl was 100% Momma Dog.

She snorted and snored and farted and panted all the time, and as the invisible tumor made it hard for her to breathe, she only got louder. This is why our house is so quiet now, and I remember that the quiet is actually a good thing.

Before her last trip to the vet, Simon gave her a hug and a kiss and said “Bye, Pearl!” And at the vet, I rubbed her ears and held her head for her last breath and said the same thing.

My mother told me that when I was going through a rough time, she knew that Pearl was taking care of me. This is absolutely true, and a wonderful tribute to a truly unique soul.

“Why do I call you Peach? Because you’re round and fuzzy on the outside and sweet on the inside!”

I Did Not Know: multitail

I think I once knew this, but forgot about it. Still, the fact remains:

I Did Not Know about multitail.

I’m watching eight different log files from a Windows server through CIFS on my Windows 7 desktop where I’m running Cygwin and multitail. This is both pleasant and awesome-looking, which is not normally the case for watching eight different log files, especially on Windows.

No Solaris 11 for Legacy UltraSPARC

I don’t do a lot of Solaris anymore, and though I’m interested in several of the new features in the upcoming Solaris 11, I wasn’t aware until today that it wouldn’t run on most legacy UltraSPARC systems:

Support for legacy systems that have included the UltraSPARC I, II, IIe, III, IIIi, III+, IV and IV+ processor architectures (as reported by the Solaris ‘psrinfo -pv’ command) has been removed. All Oracle SPARC Enterprise M-Series Servers and Oracle SPARC T-Series Servers will continue to be supported.

Source: http://www.oracle.com/technetwork/systems/end-of-notices/eonsolaris11-392732.html

I’ve always liked the T-Series systems, and have personally achieved what I consider impressive workload consolidation using a few of them. It’s not entirely clear what Oracle means with the above statement, but rumor is that support for the sun4u architecture is gone. That’s a big change from the Solaris 11 Express HCL. I imagine there are lots of places where this means “we will never ever run Solaris 11.”

Reminds me of a certain fruit company. Time marches on.