mkj musings

[ Home | RSS 2.0 | ATOM 1.0 ]

Thu, 24 Feb 2011

Livestrong (Johnson Health) Customer Service

tl;dr: good job!

Last month, I blogged about my new treaddesking experience on my new Livestrong treadmill. Among other things, I said:

The annoying squeaking that the treadmill made when I first turned it on is getting quieter. If it doesn't go away entirely, though, I need to call the manufacturer.
The squeaking, while quiet, didn't go away, and the manufacturer's web site said that it shouldn't squeak and to call customer support.

I was not excited about the idea of calling customer support. I imagined long wait times followed by sceptical or powerless customer support agents.

Imagine my surprise when the agent took me seriously, and after I described what I had checked so far offered to immediately send out a new motor, apologizing that it would take a few days. I asked for more things I could check first, because I didn't want to make them send a part that would turn out not to be the right thing, and so she gave me two more things I could look at if I wanted. This involved removing some screws and temporarily taking things apart, and there were no warnings that by doing so I would be voiding my warranty. What a refreshing change from "no user-serviceable parts inside!"

I called back a few days later to confirm that I had checked the things we had discussed and to ask whether there was anything else I could do. I got a different customer service representative this time, but he was just as helpful as the first. He said no, nothing else to check, they'd happily send me a new motor and then have a technician come to my house to install it after it arrived. I asked if it would be OK if I installed it myself, and he cheerfully agreed to include an instruction sheet and said that was just fine for me to do the installation myself.

I now have a quieter treadmill.

posted at: 10:16 | path: /raves | permanent link to this entry

Sat, 05 Feb 2011

The Saga Of the Microwave Turntable

Months ago, my eldest daughter accidentally broke the glass turntable tray in our microwave oven. I quickly googled the part and determined that it was almost $80, plus shipping and handling; I showed her the price, and inverted a dinner plate in the microwave to hold food up at the right level, though the food no longer rotated. I meant to order a new one quickly, but somehow there was always too much else to do.

My wife made it clear that priorities had changed, so I again googled the part number, and was pleasantly surprised to see the part available for $37 instead of $80, though the discrepancy made me wonder whether there would be something wrong with it. Also, it was from one of those specialty hostnames that always make me wonder. But the site looked otherwise ligit, so I gave www.microwaveglasstrays.com (really, Martin Microwave in Chattanooga, TN) a try.

Since it seems that people normally report only bad experiences, I'd like to report instead that Martin Microwave shipped the part immediately, very well packed. Not only did they have the lowest price I could find, they also shipped quickly and well.

I'm hoping not to need to be a repeat customer soon—my daughter promises to be more careful!

posted at: 15:17 | path: /raves | permanent link to this entry

Thu, 13 Jan 2011

New Treaddesker

In December, Steelcase loaned rPath a "Walkstation" for a week. This is a basic treadmill with a desk attached that has motorized height adjustment. Unfortunately, it is very expensive ($4200 is the lowest I've seen), maxes out at 2 miles per hour, has a small tread area, has no incline capability, and the retractable console for controlling the treadmill has sharp edges. It beeps loudly whenever you press a button, and the treadmill isn't the quietest I've heard.

Despite these shortcomings, I was quickly hooked, to the disgust of some in the office, who were annoyed by the constant noise of the tread even more than the occasional beeping. (The Walkstation had to be moved about the office several times due to complaints about the noise.) A few other people were interested, so I couldn't walk all day, I had to let other people use it too. But although I wanted to walk a bit faster than 2 miles per hour much of the time, I noticed on my first day trying it that I was particularly productive while walking and coding. I have noticed that when I'm trying to work out a knotty problem, I often get up and pace energetically. This way, I was already pacing!

I am ready for a lifestyle change. I spend way too much time sitting down, and almost every evening I find some important work to do and put off exercising until the next day. And the next. And so on and so forth. I like to walk. I like my work. I finally know how I can put these together!

Over the past month, I've done as much research as I could online. I also spent a few hours in stores walking on different treadmills. I compared cost and features, and learned about how treadmills work and what separates different models. You might think that if you are mainly going to walk, not run, you really are not putting much stress on the treadmill and can get by with a cheap unit. Unfortunately, I read that this is not the case. Low-power motors have trouble going slowly smoothly, and they can overheat when run for a long time, shortening their lifespan. Also, within their capabilities, they tend to be louder for the load they are carrying. At least, that's what I read. Maybe I'm just a sucker.

Sunday afternoon, I bit the bullet and bought a midrange treadmill: 3 continuous horsepower, 20"x60" belt, reasonably quiet. The box was over 300 pounds. Sliding it into the house was not that hard. My idea was that we would carry the individual pieces upstairs, and I'd assemble it there. Unfortunately, the heaviest piece was too heavy for my wife and I to carry together up the stairs. So we now have a treadmill assembled in our entryway, and I have been working in the entryway for several hours per day.

I'm hooked.

Also, I've been learning. Here are a few things:

The annoying squeaking that the treadmill made when I first turned it on is getting quieter. If it doesn't go away entirely, though, I need to call the manufacturer.

I think that I want a higher desk than most treaddeskers do. The pile of boards and books on which I've placed my laptop is at least six inches thick, resting on the treadmill arms, and I could maybe use another half an inch, without any incline on the deck. I'm waiting to build something more permanent until I have some more experience. The TrekDesk does not appeal to me; I really need only enough space for a laptop, cell phone, and maybe a mouse. Getting a unit with a long deck gives me the flexibility to have enough desk between me and the console.

I may need "technical" clothing if I'm going to do this for 2-4 hours at a stretch. I have experienced some chafing, which surprised me because it isn't a problem when I'm walking normally, even when I'm walking for hours. Probably the fact that there aren't any turns in the road has something to do with this; it's just more repetitive. I also need good walking shoes. With my loafers (my normal footwear), I've been doing an hour in shoes, followed by half and hour to an hour in stocking feet, then back into shoes, but I really need something a bit better.

I have to compete with the kids for treadmill time. DD8 has spent an hour in a day on it, half of it running (I had to insist that she not run 5-6 miles per hour while reading, which just didn't seem quite safe to me); DD6 and DS3 both seem satisfied after about 20 minutes.

I'm ready to move this thing to a more permanent location!

posted at: 22:53 | path: /raves | permanent link to this entry

Wed, 13 Oct 2010

Froyo: Or, Samsung Wins Again

Yesterday, I blogged about why I was happy I bought Samsung cell phones.

Today, I got confirmation that Samsung seems serious about open source on an ongoing basis, and I'm even more encouraged.

posted at: 16:12 | path: /raves | permanent link to this entry

Tue, 12 Oct 2010

Why I Bought Samsung Galaxy Phones

Briefly:

The longer version: Not quite two years ago, I bought an HTC-built AT&T Fuze phone—my first running Windows—because it was the only phone I could get at the time that gave me 640 x 480 pixels on the display and sufficient external storage; enough to reasonably use as a backup device to hold a full set of approach plates so that if I for any reason did not have the correct approach plates available for my flight, I could pull out my cell phone (with the cell radio off, of course!) and use it to get at the information I need to safely land in instrument conditions.

It was a so-so experience. The interface was clunky, but at least the platform wasn't locked down; if only because Microsoft wasn't good enough at the time to make a platform that could be locked down effectively... I could download a few apps for it that made it sufficiently usable, and I could put up with its quirks. But it certainly didn't make me fall in love with Windows, or with Microsoft as an OS provider.

I tried a community build of Android on the Fuze, and found that even without HTC's help, Android was smoother, quicker, more usable than winmo. There were enough missing things, and battery life was bad enough, that I clearly wasn't going to be able to just use the Fuze as an android device, but it was enough to make me want to get an Android device for my next phone.

I considered buying a new larger HTC-built phone (I wasn't sure which to pick, and was waiting for the next batch of Android phones from HTC) and the smaller HTC Aria for my wife. Fortunately, I did my research and discovered that HTC was withholding infomation on the Aria, making it a hard platform for the wider Android development community to support, and clearly not living up to their GPL commitments in general on their Android phones.

The fact that Harald Welte, who is careful, thoughtful, and knowledgeable about the GPL (including a long history of successfully enforcing legal actions against companies that violate the GPL), says that Samsung has done a good job of living up to its GPL obligations was the number one deciding factor for me to choose not to purchase two more HTC phones.

I bought a pair of Samsung Galaxy S "Captivate" phones; one for me, one for my wife. HTC's choice to alienate open source advocates, and Samsung's choice to follow the rules, paired up to give Samsung two sales at HTC's expense. I know that two is not a large number, but I hope I'm not alone. I'd like to thank Samsung for making it easier to vote with my feet by creating a rather compelling offering—the Galaxy S is a nice platform. (Here's hoping AT&T doesn't wreck Froyo when they make the update available!)

posted at: 10:45 | path: /raves | permanent link to this entry

Wed, 01 Sep 2010

The Linux Programming Interface: Preview

Erik Troan and I co-authored two editions of Linux Application Development, so I have some idea of what it takes to write a Linux programming book. It's a lot of work to do well, doing proper research, trying to keep up to date, trying to meet the needs of a wide variety of readers.

Over the past several years, I have had a sense that the Linux man pages were becoming more complete, with a growing body of precise and nuanced detail. At some point, I became aware that it was Michael Kerrisk's fine work that I was appreciating, as he built substantially on the fine base provided by the previous maintainers Rik Faith and Andries Brouwer.

Michael Kerrisk then picked up the task of writing a book to cover similar material as Linux Application Development, but in both greater detail and extended scope. His new work, The Linux Programming Interface, has after long labor been published, and it looks like it was worth the wait. After reading a few initial sample chapters (the preface, and chapters 2, 9, and 30), I can say with great relief that it appears that Erik and I do not need to prepare a third edition of Linux Application Development — we can name TLPI as LAD's successor. Erik and I wrote LAD because it was the book we needed as a reference that was not otherwise available. That reason appears to be dissipating.

I'm looking forward to reading the whole book after it arrives, and reporting my impressions in more detail later!

posted at: 16:05 | path: /raves | permanent link to this entry

Wed, 21 Jul 2010

Responsible Disclosure is Responsible

The Google Security Team just posted a blog entry attempting to restore meaning to "responsible disclosure." It is absolutely worth reading.

As I see it, the phrase "responsible disclosure" has been stripped of meaning by vendors who use it as an excuse not to prioritize their customers' computer security. Irresponsible vendors have tried to make "responsible disclosure" mean a one-sided arrangement in which vendors get to set all the timelines for disclosure of all vulnerabilities. This irresponsible attempt at redefinition is inevitably alienating "white hat" software vulnerability researchers, as it creates a more vulnerable software ecosystem.

Fundamentally, "responsible disclosure" means that the researcher makes a best effort to put the needs of the end user first. When it is reasonable to assume that the vulnerability is newly discovered, it helps the end user to disclose first to the maintainer of the software (whether that's a vendor or otherwise) first. It also helps the end user to give the maintainer time to fix it right so that the vulnerability is really fixed and new vulnerabilities are not created. But when the maintainer doesn't bother to give the vulnerability priority, that just gives attackers more time to discover and make use of the vulnerability to subvert the end users' systems, which does not serve the end users' interests.

When there is reason to think that a vulnerability is known outside of the responsible security investigation community, it is clearly responsible to immediately disclose at least enough information to allow security-conscious end users secure their systems against attack. It should also be noted that that is almost always enough information to allow the unscrupulous to separately discover and make use of the vulnerability, so in this case responsible handling of the security flaw involves the maintainer making it a top priority to find an immediate mitigation, even if further work is required (also at high priority) to fully resolve the issue.

Some have suggested that the "responsible disclosure" emperor is wearing no clothes. I disagree. I think the problem is that irresponsible vendors have substituted an unclothed mannequin for the emperor, and are trying to pass off irresponsible handling of vulnerabilities as "responsible disclosure".

Responsible disclosure must be, first of all, responsible, and the responsibility is primarily to the end user. Security disclosure that primarily addresses vendor convenience is irresponsible.

posted at: 12:25 | path: /raves | permanent link to this entry

Tue, 13 Jul 2010

Pleasant Surprises, Part 2

I not so recently mentioned that I was pleased with work that Jet City Devices did to my wife's smartphone. What I didn't know at the time was that while the screen was no longer cracked, the touch sensor was not working correctly; it was only occasionally registering touch on some parts of the screen, at best.

When my wife finally mentioned this to me, I mailed Matt at Jet City Devices about the problem. He gave me things to try to make sure it wasn't software, and said if they didn't work, to send the phone back, that it was a rare defect.

It wasn't a software problem. But instead of sending the phone back, my wife just learned to use the d-pad to use most features of the phone, until we were past Jet City Devices's 90-day warranty on the fix. Oops.

I finally bought a cheap dumbphone (Motofone F3) for my wife so that she would not have to be without a phone for a few days, and I emailed Matt. He didn't even bring up being past the warranty, and told us to send in the phone and he'd fix it. He didn't realize how long it had been, I think, so he didn't realize to give us his new mailing address, as he had moved office. My wife shipped off the phone. (Incidentally, she liked the Motofone F3; small, light, relatively indestructible; I think if she didn't want google maps and spreadsheets on her phone she would have stuck with the F3!)

After a week and a half of not hearing anything, I mailed Matt again. He worked out that the phone had been delivered to the new tenants of his old space, drove over to his old space and picked up the phone from the new tenants, fixed it, and had it back in the mail that day.

As he promised, the touch sensor is now working.

posted at: 09:05 | path: /raves | permanent link to this entry

Thu, 24 Jun 2010

Using OpenDNS

As my kids are starting to want to "look for things on the internet", I started caring about what they might accidentally stumble onto, even in an appropriately supervised context.

I had vaguely heard about OpenDNS for some time, but had not really paid much attention to it. A few relatively recent articles on using it to make an internet connection somewhat more "family-friendly" caught my attention, and I finally signed up for a free account to try it out.

I have a local caching bind which forwarded to the nameservers that TWC provides to me (and to which I redirect all outgoing nameserver traffic via firewall rules), and I really haven't noticed nameservice being slow, so the "speed up your internet" advertising from OpenDNS wasn't ringing true. But the ability to filter out the worst of the sites dedicated to things that I think don't have a place in my home was interesting. So I signed up for a free account, changed a few lines in my bind configuration, and packaged and installed ddclient according to OpenDNS's instructions so that OpenDNS will continue to associate my home network with my home network settings on those rare occasions when my IP changes.

We weren't seeing lots of questionable content before the switch, so the fact that we've seen a total of two sites blocked since we signed up for the service is fine. It says that I can establish what I think are reasonable controls and it won't get in the way of normal activities.

Purely because I appreciate the service (I don't really care very much about saving statistics for longer), I signed up for a paid account. This service seems to me to be worth the $9.95/year.

A few days ago, OpenDNS rolled out a new free service called FamilyShield -- you can use a pre-configured set of filters without setting up any account at all merely by using 208.67.222.123 and 208.67.220.123 as your DNS servers (they include detailed instructions for how to do this on many different OS variants). This is exactly the same thing you'd get by signing up for their service and enabling the same set of filters for your account, so it's easy enough to upgrade to their free service if you want to customize the filters -- you just sign up for a free account, change the IP address you use for the resolvers, choose the filters you want, associate your IP address with your account, and (if you, like most people, have a dynamic IP) set up one of the many dynamic DNS clients available (they list several) to keep that association up to date.

I'm just a satisfied customer.

posted at: 08:59 | path: /raves | permanent link to this entry

Mon, 22 Feb 2010

Pleasant Surprises

My wife found her smartphone screen cracked recently. AT&T told her to suck it up and buy a new phone, and the local independent shop couldn't fix her phone. I had a great deal of trepidation about sending the phone off to some random place I googled, but in the end sent it off to Jet City Devices in Seattle.

They turned the repair in about an hour from the phone's arrival on a Saturday (!) afternoon, and had it back in the mail same day, so that it arrived back in North Carolina on Monday with a new screen.

Good Work!

posted at: 22:50 | path: /raves | permanent link to this entry

Thu, 03 Jul 2008

Living with tabs: Tree Style Tab

I used to use the galeon web browser. I got used to having tabs on the right side of my browser; I can have lots of tabs and read what is in them. This works in part because I devote one workspace entirely to a full-screen browser.

When galeon maintenance ceased, I did not update until I found the vertigo Firefox extension. Then I stayed on Firefox 1.5.0.x until vertigo supported Firefox 2. Now, I have been staying on Firefox 2 because vertigo does not support Firefox 3. This is starting to feel familiar.

Today, I found a mention of Tree Style Tab as supported by Firefox 3. Trying it out, I was pleasantly surprised; the configuration options are better, and I like the tree style where you can see which tabs were opened from other tabs (this can be disabled if you don't like that feature, though).

posted at: 15:08 | path: /raves | permanent link to this entry

Made with PyBlosxom