The Pedantic Programmer

In my time working with and managing software developers, I have noticed some interesting personality traits which have the uncanny ability to make one completely nuts. Engineers in general have a reputation for being socially difficult; stereotypes range from the bearded stinky overweight guy to the geeky skinny guy with too-short pants and taped glasses. Reality is somewhere in-between, of course.

The Pedantic Programmer is the guy who refuses to think, unless it is to solve an immediate technical problem. He refuses to consider the needs of the customer, business, or any other human being. As far as he is concerned, the only solution to a problem is the ‘technically correct’ solution to the problem, regardless of the fact that humans are quite often not ‘technically correct’. The Pedantic Programmer often has a lot of experience, and often prefers a ‘back-office’-type environment where they are well-insulated from actual customers and users.

A Pedantic Programmer will never consult reality for guidance in his problem solving. He will always defer to the ‘architecture’ of the system. The limitations of the system will always trump the need for the system to serve the user who pays for it. The Pedantic Programmer doesn’t like fuzzy ideas. He doesn’t like incongruous business rules. He wants everything nice, tidy, and predictable, just like a computer. Common sense is his enemy – since it can’t be quantified.

The Pedantic Programmer’s best skill is Language Lawyering. He’s especially good at taking quasi-meaningful terms like “Profile” or “Master” and flipping them around at will, especially when he’s justifying a drop-down list of thousands of duplicate records, or explaining why he can’t change the size of that field because he’d have to ‘radically change the architecture’.

Some systems, especially those inherited from others, can make simple, trivial changes very difficult to implement in a clean way. While we all want to improve a system, sometimes it just doesn’t make sense to spend the money necessary to improve the system to solve a trivial problem. Sometimes, you have to eat a hack to live to fight another day. Most developers do understand this, but to the Pedantic Programmer, this is an opportunity to re-factor, re-engineer, and give a 5-day estimate to display “WA” instead of “Washington”. While admirable in his zeal to solve a problem, if we do this enough times, our customer will disappear.

Pedantic Programmers always want a spec. If you box them into a corner, they will always play the ‘spec card’ which is some combination of ‘give me a spec’ or ‘you never gave me a spec’. This is a programmer-speak for “Covering Your Ass”. Should I give a senior software engineer with 10 years experience a spec for “Show WA instead of Washington”? This makes managing the Pedantic Programmer very, very tough.

So what does a young professional do when confronted with the challenges of managing a Pedantic Programmer? You can write very detailed specs, but they will always end up wrong, outdated, or unread. You can micro-manage, but Pedantic Programmers don’t like social interaction and no one really likes micro-managing. You can argue with them, but they are often quite sensitive and tend to be easily disgruntled. You can cave in and allow the guy to spend 10 days solving things ‘the right way’, but your boss, the PM, and the CFO won’t like that idea much either.

In the end, you might just be screwed, especially if the Pedantic Programmer is the only guy who really understands some particularly wicked bit of the system. If you’re smart (or lucky) you’ve read Eric Sink’s Developers not Programmers and avoided the Hazards of Hiring and haven’t saddled yourself with a Pedantic Programmer. If you’re not that smart, well, there’s always booze.

Turkey Time

I am a big Thanksgiving fan.  It’s a holiday with the sole purpose of getting together, eating, drinking, and being merry.  There’s no religious overtones, no consumerism-tainted gift-guilting, and it’s a one-day thing – no endless parties and social events around it.  Plus, it’s a 4-day weekend just when you think you’re about to go insane from not having a day off since Labor Day.

For me, a proper Thanksgiving is a must.  No need for new traditions here.  Just turkey, taters, gravy, wine.  See you in the food coma, kiddies!

Suiting with Sassy

There comes a time in a man’s life when he needs to wear a suit. It might be a job interview, business affair, wedding, funeral, or a fancy night out with that special someone. Despite current trends towards ‘Dressy Casual’ jean & t-shirt combos and designer track suits, the venerable men’s suit is still the preferred choice for most formal occasions.

It’s probably easier to talk about what not to do than what makes a good suit. In basic terms, you want a wool suit that fits properly, 2 or 3 buttons, wrinkle-free with pressed slacks, dress shirt, tie, shined shoes. Couldn’t be simpler, right? Well, I guess not.

The biggest problem I see is “swimming in the suit”. Most men seem to be wearing clothes that don’t fit. Too-big jackets, too-long pants, sagging pants are all-too-common. I’ve talked about the importance of pants that fit before, so I’ll talk about the jacket, which can be a tough thing to figure out.

The basic rule of thumb it’s OK to have a jacket that is slightly too small but not OK to have a jacket that is at all too big. There are a few easy ‘tells’ when trying on a jacket that will make it easier to get one that fits. First, ask the salesman for a shirt in your size. This is important. Make sure it fits correctly and ask for him to measure you if necessary.

Button up the shirt all the way and button the sleeves. When you try on the jacket, you are looking for about a half-inch of your shirt collar to show above the jacket at the very back of your neck. If the jacket covers your shirt collar, it’s too big.

Watch out for over-padded shoulders – the easy way to tell this is to stand with your shoulder against a wall – your arm should meet the wall before the shoulder pad of the jacket.

See how the jacket fits in the chest. Button the top button (or 2 of a three-button) and place your fist under the top button. It should fit comfortably and snugly without too much extra room. If you can pull the buttoned jacket 5 or more inches from your chest, it is too big.

Your jacket’s sleeves can be hemmed. If the jacket fits in the chest and shoulders, hem the sleeves so that about a half-inch of shirt cuff shows with your arms at your sides. You can go even shorter (to about an inch) if you are young, slim, and want that hipster look. Some modern cuts also have smaller, more tailored arms which are nice for taller men. Look for these, they prevent the dreaded “football shoulders” which is hard to avoid.

A couple more things to remember:

  • A sportcoat and slacks is not a suit.
  • Don’t wear a tuxedo shirt without a tuxedo.
  • Don’t wear french cuffs unless you are wearing a suit.
  • Your tie should reach your belt. Too-short ties are an instant barney maneuver.
  • Get your suit tailored, steamed and pressed before you wear it.
  • Shine your shoes!
  • If you can only buy one suit, it should be black, navy, or dark grey. Striped suits are for your second or third suit.
  • 3-button suits are better for men with thinner upper bodies; both 2 and 3 button suits are appropriate. Be careful with the 4-button suits.
  • Your jacket should have a vent (center or sides). A jacket without a vent looks like a sack.
  • If you wear a black suit, wear black socks and black shoes and a black belt.

Harris Fire



Harris Fire, originally uploaded by Sassberto.

This is the Harris Fire, burning in the East County backcountry, as viewed from my house in Rolando.

Smoky Sunset



Smoky Sunset, originally uploaded by Sassberto.

Another wild sunset today. Fires are retreating but it’s not over yet.

Smoky Skies



Smoky Skies, originally uploaded by Sassberto.

5:30 PM, Tuesday October 23, 2007.

Smoke is from the Harris Fire, burning just east of Mt San Miguel, Chula Vista CA.

Firestorm 07′

If you’ve turned on a TV or opened a newspaper, you know by now that there are some serious fires burning in Southern California right now. San Diego County is host to the largest wildfire in state history by some accounts, the Witch Fire. As of now most of these fires are burning uncontrolled with zero containment. By some estimates 1000 or more homes have been lost in Poway, Ramona, Rancho Bernardo, Escondido, and Rancho Santa Fe, and rural east county areas like Potrero and Dulzura.

I went to work on Monday, knowing I might end up going home. As I descended into the Carmel / Sorrento Valley area, the wind was fierce and choked with smoke. I got to my building and immediately got sent back home. The wind is just blasting smoke down the valley from the fire to the east.
Down here in the city, aside from some seriously toxic air, things are fine. Skies are mostly clear, as the fires burn to the north and south. We’re couped up in the house with the AC running to keep the stink out, a little bored but none worse for the wear.

You can get more info here:
UT Map with evacuation areas and burn zones
Evacuation and burn maps
USDA Fire Activity Maps

San Diego Beaches

From south to north:

IB: funky, sketchy, sometimes polluted
Coronado: primo, bad parking, stingrays
Sunset Cliffs / Garbage: Nice, just watch for canyon trolls
OB: packed, funky, stoney, organic, smelly, dirty
MB: packed, hot chicks, midwestern tourists, zonies, tweakers, weirdos
PB: packed, drunk, bro-down, gangster white boys
Birdrock / Windansea: cool but watch out for the meatheads
La Jolla Cove / Shores / Torrey Pines: nice, family, quiet, tough parking
Solana Beach: small nice, cliffside, mostly family, tough parking
Del Mar: nice, big, bad parking
Cardiff / Encinitas : big, wide, better parking.. also has an inlet to the lagoon with no waves.
Carlsbad: big, wide, good parking, nice village
O’Side: never been to the beach there!