Overly-Solicitous Telephone Customer Service

November 22nd, 2011

PayPal decided it was in my best interest to tell me that “for 11 years and four months they have been carefully providing customer service to enhance their customers’…” on a recent phone call.  The customer service rep’s wrap-up of our call had more words in it than the content of the call.

Same thing with Sprint recently:  Apparently, Dan Hesse pays customer service reps based on their ratings by customers.  A seemingly good idea, until you let those customer service reps spend more time soliciting a “five star rating” than helping you.  When I called recently with a simple question about using Sprint HotSpot on my phone (requiring a 10-word answer that wasn’t available on their website anywhere), I got a full 25 seconds of schpiel from the CSR about how much he would appreciate a rating of 5 when I get the inevitable (unsolicited) survey call.  Guess what rating he gets?

What’s  going on here?  Is Sprint under the illusion that providing better customer service is done by henpecking customers into rating their service?  I understand that customer surveys can be useful (though probably a lot less useful than they hope), but with their policy (and, apparently, the policies of many companies), customers spend more  time getting apologies, thanks, pitches-disguised-as-service, and pandering than they do getting answers.

Here’s an idea, Dan:  Spend no more time kissing our ass than you do answering our questions. Doesn’t that make sense?

The Programmer’s Paradox

October 17th, 2011

This guy’s post really explains it best.  But, in a nutshell (perhaps only a nutshell that a programmer would understand), it goes something like this:

You want to find a design pattern that’s close to the code you’re about to write.  But you can’t find anything that’s even particularly close.  So you’re wondering about your design, thinking that if there’s no similar design pattern, then you must be designing it wrong — so maybe you should change it to something that fits an existing design pattern better, because if you can modify an existing design pattern, you’ll get more reliable / supportable code.

And sometimes you do change it.

Other times, you realize that if there were an existing, somewhat close design pattern, then you really wouldn’t be creating something new, and thus of value.  Or to put it another way, the closer your design can rely on an existing pattern, the less value you’re obviously creating.  You just know that the problem you’re solving is creating value, so you stop searching for a design pattern that fits and just start writing your unique code.

And then, sometimes months or years later, you realize that if you had just thought of it another way, it’s a lot like something else.  And if you had followed that something-else-pattern, you would have saved weeks of implementation time.

Or not.

Personal Digital Past

September 24th, 2011

I built a new desktop computer recently.  Ubuntu 11.04, with Win7 running in a VirtualBox, I’m no longer using Windows as my primary desktop for the first time in… well, since Win3.1 pretty much.

I decided to migrate my server-in-a-closet to this new machine, and shut down the older server to save power.  I leave my desktop machine on all the time anyway; that’s sort of its purpose: To be the machine I can run to in an emergency.

So I’m copying over the home dir of my server to this new desktop.  My server’s home dir is a pretty messy collection of stuff I’ve done over the past, oh, 15 years at least. After I moved it all over, I did an ‘ls’ to see what was there on my new, big 27″ LCD screen. Pretty weird.

The names of directories flowed over me like a digital fly-through of the past 15 years.  There was a dir called “gleem” that contained the code from the total FAIL wireless startup from 2000. It was such a huge part of my life at the time, commuting 2-3 days per week down to San Jose for a year. rm -rf.

There’s the dir containing all the code for “predicting” forex and making $gajillions.  Yeah, that never worked out either.  rm -rf.

Various notes files from server migrations over the years. Cat a few — oh yeah, remember that Plesk shared server that you bummed off Ammon for years? Then had to get a new one when he closed it down? FairKeys-0.5, the DVD-Jon crack of Apple iTunes DRM, long obsolete since iTunes dropped DRM.  Piles of Asterisk library stuff and code bits.  Ugh, am I really giving up on Asterisk?  Another thing I spent literally years on, and got a great education in VOIP, but never made a dime.  Maybe save some of it.

TV listings code for formatting on my Treo screen (did I ever really watch that much TV?).  Video grab stuff for an ancient Linux video standard that’s long dead.  What was that for?  Oh yeah, I was going to build a DVR out of my server, pre-MythTV.

Hmm.  ls -lt | less, then “>”.  What’s the oldest stuff here?

2001-05-05 13:43 lilo-splash-1.1.tar.gz

lilo-splash, from my first build of my Urlwitzer distro.  Four months before 9/11.  Five months before the iPod was introduced. I had been working on it for almost a year by then.

Pretty weird trip through my digital past. And I haven’t even moved over my big development directory yet…

Computer Connector Designers - Please Stop.

July 1st, 2011

Really, I’ve just about had it.  I’m so sick of fiddling with connectors on my computer, I could just puke.  It’s not just because of the reminder that I seem to have to wear reading glasses for the most trivial of tasks these days (though thanks for that too, guys), it’s because, like so many things, connectors designed by committee just plain suck.  And sometimes a connector design left to a brilliant engineer suck, too.

The worst connector of all time?  USB, in any incarnation.  What was to be the greatest computer connection specification in the world has been nearly crippled by a connector that is so almost perfectly symmetric that of the two possible ways to plug it in, there is no standard and it’s almost impossible to tell just by looking.  I ask you, how many times have you chosen the wrong way, flipped it over, and then plugged in the connector?  Wouldn’t you like a check for all that wasted time?  I would.  It would be big.

Then they came out with mini-USB, and it almost solved the problem.  The connector was small and thus a little hard to see, but at least its asymmetry was pronounced: A little flange on one side, making it slightly wider.  Yay!  Finally I can plug at least this end of the cable in right 100% of the time!

Then came micro-USB and it all went to hell.  A connector so thin and so barely asymmetric (and again, without a spec for which side should have the label, or any marking spec of any kind), it’s almost certain you’ll get it wrong at least once.  And owing to the thinness and thus brittle structure of the connector itself, plug it in that way and you’ve broken either the connector or (more likely) your phone.  I’m not going to take a picture of my rounded-out jack on my phone, but it still works if you hold the connector in — oh, and it’s a connector that doesn’t have too wide of a plastic handle (I’ve shaved down three with a knife now) so that it engages all the way (also not part of the spec, apparently).

There.  Now I’ve wasted another 15 minutes complaining about them.

Switching Ubuntu machines - a success story

February 11th, 2011

Since success at anything regarding computer upgrades is so rare, I thought I’d write this.  It’ll also remind me of what I did so that next time maybe I’ll be just as lucky.

I just switched my main shop machine from a single-core Athlon (or something — I really don’t remember what’s in the box) to a dual-core Athlon something-or-other.  It was cheap, and a lot faster.  More memory too.

My old machine had Ubuntu 9.10 on it, and I put 10.10 (Meerkat) on the new one.  I chose to use the 32-bit version just to minimize switching hassles; I don’t care enough about performance for it to matter to me. Then the question became, how do I actually do the migration?

It turned out to be marvelously simple:  First, do the usual apt-get stuff that I always do on a new Ubuntu machine (apt-get install restricted-extras, build-essential, and stuff like that.  Just so that I know I have a decent base.

Next, I simply did an “rsync -a” of my home dir to the new machine.  Lots of stuff got transferred that really didn’t need to be (like the browser cache[s]), but it all came over fine and mostly worked.

The only exception was that sound was whacked on the new machine.  All I needed to do was ‘rm -rf .pulse’ and reboot and it rebuilt it.  Audio works great, both the internal sound card and the external USB (M-Audio Fast Track) that I have plugged in.  In fact, it seems to work much better on this 10.10 machine than my old 9.10 machine.

Then I just apt-got all the packages I needed as I went along:  nfs-common, samba, etc.  Installed Skype and Chrome from .deb files of their websites.  Customized the taskbar.  Everything works!  Fairly amazing, actually, since I was predicting horrible incompatibilities and failures.

I guess the moral of the story is to keep everything you can in ~/user, and then there are very few threads dangling.  Yay!

Her old iPod

December 7th, 2010

For work reasons, I’ve been listening to the music that came on an old 2nd-generation iPod (10GB) that I bought off Craigslist many years ago.  I archived what was on it onto my hard drive, just because that’s what a programmer would do, even if I never listened to the music.

As it turned out, most the music was ripped from CDs into iTunes.  There’s some iTunes Store music (all in protected format), but the bulk of it was ripped from CD, along with a few random (presumably bootleg) m4a’s.

I don’t want this to sound too perverted, but I’ve fantasized about the original owner of that iPod for all these years, every time I have occasion to browse and listen to that collection.

All I know about this person is what the guy who sold me the iPod told me, and what the music collection itself tells me.

The dude who sold it to me said it belonged to a friend who was moving to Japan.  She had gotten a new one, and gave this one to him (I think there were already 4th-gen iPods out).  He had gotten a new one too.  He was maybe 21 or 22.  I met him in a Safeway parking lot one evening.  He could have made all this up, but I don’t think so.

One reason: There was a 5-CD ripped set of Japanese language instruction on it.  There was also Level 1 of Hal Leonard’s “Learn Bass Today”.  A budding female bass player, on her way to Japan.

But it’s really the rest of the collection that caught my attention. Most of it doesn’t intersect with my tastes at all, but it’s such a weird mix of heavy metal and old, sappy pop that it just… well, drives me to fantasize about who this chick was.

Def Leppard, Metallica, and Queensrÿche, yeah, but Air Supply?  Cracker, one of my favorites?  Llama, whom I never heard of, and whose CD I immediately bought.  And then there’s Yes’s “Changes” from 90125, for some reason.  And the real Beach Boys’ California Dreamin’.  Goo  Goo Dolls, 3 Doors Down, Linkin Park, and… N’Sync.  WTF?

Hendrix, Daft Punk, The Church, and Desperado by the Eagles. Weird Al’s Dirty Deeds, Done With Sheep. It’s all over the place, but some great old-skool hits (Aerosmith’s, Dude Looks Like A Lady, for example).

It’s about 1,000 songs and I seldom listen to it — it’s only indexed on iTunes on one of my many machines, and I almost never use iTunes.  Only to listen to this collection and think about this 24-year-old chick bass player, playing bass at Budokan with Aerosmith and with 10,000 fans watching.

I have created a monster.

October 26th, 2010

Okay, this is purely, uh, diaretical.  Something that should be in a diary.  My apologies.

My neighbor is turning out to be a total pain in the ass.  He’s also dying* of colon cancer.

I thought I’d be nice sometime back, and gave him access to my wireless network.  He had a netbook computer that had been wiped of Windows XP, and he had no init discs, so I installed Ubuntu 9.10 on it.  He has very little computer experience.  A web browser is his only app, presumably for browsing porn and dating sites.  He was very happy, thanked me profusely, and offered me free bicycle tires.

But he wasn’t thankful enough to stop parking his leaking, piece-of-shit Cadillac in front of his shop, which fits mostly in the width of his roll-up door.  But it reduces the width of the whole parking lot by one piece of shit Cadillac-width, and all I see all day out my window is the grill of that GM turd. Behind it, he has just enough room for his man-door to open, so he can walk his *#&$*! dog that leaves poo all around neighborhood.

Which, in case you haven’t gathered, is an industrial neighborhood, not a residential neighborhood.  This is a classic, roll-up-door-and-a-man-door industrial building, with an upholstery guy, some windows guys (you know, like, glass), and a plumber’s shop.  But of course, my neighbor is also living in his shop, as evidenced by the cooking smells that happen around, oh, breakfast, lunch and dinner.

He can’t park his piece of shit Cadillac in one of his two parking spots because — you guessed it — there are already two piece of shit Cadillacs in them, too.  One with a blown engine that can’t move, and one that runs roughly, leaks, and is by far the ugliest 70’s Cadillac ever made, and they made a lot of ugly Cadillacs in the ’70s.

As soon as I drive in this morning, he comes out and complains to me that the network is down.  Says it’s been down 3 days now.

So he brings over his computer, and I notice the touchpad clicker doesn’t really work.  I hate to think about what might have clogged it.  I look at the network icon; Networking Disabled.  He no doubt right-clicked it and disabled it while his clicker was in its death throes.

So I fixed it.  Didn’t say anything about his piece of shit Cadillac, which I notice he must have parked in the shared guest parking on the other side of the building today.

I can complain to the landlord, but a) I’m a subleaser myself, and b) people complain about him all the time.  The landlord’s not motivated to do anything.

So my quandary is, should I stop being a nice guy to him, or should I use my favors to try and extract some behavioral changes from him?  Or just keep being a nice guy and hope the karma works out?

Ugh.

* He may or may not be dying of cancer.  He apparently has colon cancer, and has an abdomen the size of Rhode Island.  But the other day I overheard him telling one of the other neighbors that the surgery was successful and they didn’t find a trace several weeks later.  But then I heard from another neighbor (who wishes his cars would all catch on fire) that it’s back.  So who knows.

Gone in 5 minutes… a Craigslist story

January 18th, 2010

I sold my son’s broken 4×4 pickup truck in five minutes on Craigslist.org.  Perhaps its evidence of underpricing, but for me it’s more about how beautiful and great Craigslist is.  Not to mention popular.

Within 5 minutes of posting his ad and pictures, the phone started ringing.  The first call was from a guy 75 miles away, whose English was hard for me to understand (and my Spanish is negligible).  He put his son on, and I agreed to keep the truck until he got here.

I got about six more phone calls before I went back to sfbay.craigstlist.org to shut it off, convinced there’d be no problem getting $1000 for it today. The guy showed up an hour later with $1000 cash and without so much as a test drive, the truck was sold.  Apparently they ship a lot down to Mexico, where such Toyotas are used to build everything there is to build.

I asked the guy how he found our ad so quickly.  ”I was just looking for Toyota trucks for sale,” he replied.  So just think about that for a minute:  He randomly saw this ad within five minutes of me posting it, along with another half dozen or so people who both found it and decided it was worth calling.  How many people are trolling Craigslist.org today?  Lots.  Lots and lots. My phone has run twice while writing this, and I took the ad down over an hour ago.

I love Craigslist.  So does Weird Al.

Supreme 385 Neon Bulb at new shop

November 10th, 2009

Ah, but I *did* finish a project >20 years in the making.  Some 20+ years ago (I think I was still unmarried), I bought an antique tube tester at the flea market in Sausalito where the Best Buy now stands.  It was worthless as a tube tester, but looked really cool and had a giant neon bulb right in the middle of it for testing shorts.  This thing is the size of a refrigerator bulb, with two metal plates that excite the neon (oh excited neon).  Here’s a picture; it’s vintage 1936:

Supreme 385 Tube Tester

Supreme 385 Tube Tester

I was setting up my new shop, and this thing had made its way to the old shop as a, uh, objet d’art.  Hey, it was off the floor of my office.  Anyway, I was about to objay-dart it on the top shelf of my new shop when it hit me: didn’t I pay a good $20 for this thing so that I could light up this neon bulb?  Plus, it weighed like 20 pounds, and I didn’t like that hovering over my head on some shelving.

So I opened it up and took out a bunch of heavy parts like the power transformer and some boards that held some really, really cool wirewound resistors made in Pennsylvania, USA.  It was really gorgeous inside, with miles of wire bundled up with waxed twine, leading to all those knobs and switches. It sort of hurt cutting through through those wire bundles, recklessly, with a pair of dikes.  Thick wire too; this thing was built to last and dump a lot
of current through the tubes it tested.

I decided it would be prudent to wire the bulb up through one of the switches on the front panel.  So I picked one sort of arbitrarily from the back side, got some new, teflon-coated wire out, and wired up the bulb.  I tried a few different current-limiting resistors (lying around on my workbench) to get just the right glow from 110v. Gorgeous.  Then I flipped the thing over to remount it, and discovered the switch I chose was a pushbutton!
Oops.  Wire it back up to the toggle switch on the far right.  Good. Install long power cord.  Good.

Oops!  Power cord runs out the top of the thing, in the little compartment, which would then go right down the front of the thing as it sat on the shelf.  Not right.  Take panel off yet again, unsolder, drill hole in left side of top part of case, re-route wire, resolder, remount panel.  Take off broken handle and top latches so it will sit on the shelf properly.  Run cord down to outlet.  Voila. Total time: ~45min.

I’ll post a picture of it running.  It really sets the whole stage for the workbench part of the shop.  Really.  Hope the bulb lasts.

And that, my friend, is how you finish a 20-year-long project!

Finished Supreme Neon

Finished Supreme Neon

Getting ready for the Hendrix Guitar Ensemble

October 16th, 2009

It is apparently really happening.  Sunday, October 25th, at Speedway Meadow in G.G. Park.  3,000 guitars, all playing “Purple Haze” at once.

I’ve got my $75 Fender (Affinity Squier) Strat, and a purple strap to go with it.  My plan is to take my Fender Champ clone (all-tube, one 8″ speaker), a big gel cell battery, and an inverter.  My son’s got a little battery-powered amp and Strat.  Oughta be big fun.

Some might say that 3,000 guitars playing Hendrix at the same time is bound to sound awful.  I think it’s gonna sound awesome.