Tag Archives: Troubleshooting


Having noticed that the Wall Street Journal was double-billing me, I set about to remedy things, assuming they would be reasonable and correct the error. Instead I got a case study in how not to treat your customers and found myself so irate with the outcome that I have severed my relationship with the publication.

I wrote:

I am confused about what I am getting billed. I think I am getting double-billed for access. I seem to be getting charged for both a “digital subscription to The Wall Street Journal” in October, which says it “includes unlimited access to WSJ Smartphone and WSJ Tablet apps” and has an annual cost of $275.88, but I seem to also be getting billed in May again for a “WSJ mobile subscription” at an annual rate of $103.48. Could you please explain what is going on? All I really want to do is read WSJ on my iPad and iPhone but I seem to be getting charged way more than makes sense. I would like to only be paying for what I am using. Could you please tell me what plan I should be on and why I am getting charged twice?

They replied:

Dear Andrew,Thank you for contacting The Wall Street Journal regarding billing.

Our records show you have signed up for 2 Online Wall Street Journal Digital subscriptions.

Please contact us by phone so we may help you cancel one of them.

Best Regards,

Customer Service
Dow Jones

So, I called them, and had a quite unsatisfactory dialog with a customer service representative who was exeedingly difficult to understand. In the end, they would agree only to refund a pro-rated amount for the “unused” portion of the “WSJ Mobile” subscription.

And so I wrote them again:

Joseph,I spoke with a representative on the phone. They canceled my “WSJ Mobile Reader” subscription because indeed it didn’t make any sense for me to have that in addition to the “WSJ.com” subscription which includes everything, including mobile phone access. They agreed to refund a prorated amount of the “WSJ Mobile Reader” subscription, but I feel strongly that that is inadequate. It should not be possible to be getting double-billed for mobile access when you are already paying the fee for full digital access. I’m not sure how this happened, but my credit card records (that only go back 24 months) show that this happened at least last year as well, and I wonder if it has been going on even longer. The $275/year fee for a “WSJ.com” subscription is already quite substantial, and it looks like I have been getting erroneously charged an additional $103/year for a while as well while getting literally nothing in return for it. I believe, therefore, that the honorable thing for WSJ to do in this instance is to refund any amount billed to me for a “WSJ Mobile Reader” subscription that coincided with when I had a “WSJ.com” subscription.


Their reply:

Dear Andrew,Thank you for contacting The Wall Street Journal Digital regarding your digital subscription.

We apologize that you have been paying duplicate subscription for digital subscription and for the mobile reader subscription.

Our record shows that your subscription was in automatic renewal, we see here that you signed up for a trial of the mobile reader subscription for 14 days and after that you agree to renew it for one year for $52 that was last May 1, 2010. While you have that subscription you registered again your credit card information to have your digital subscription for $155 on October 15, 2010.

Those are the payment history we have seen in your account however, you now have one digital subscription and it is enrolled in automatic renewal.

If you have any questions or need any further personal assistance, please write again or call us at the Customer Service number below.

We invite you to try WES Portfolio (https://portfolio.wsj.com/), our new tool that lets you track your brokerage accounts through WSJ.com. Portfolio automatically provides current and historical performance data for your holdings as well as relevant news and alerts impacting your investments.

Thank you for your interest in our publication.

Best Regards,

Customer Service
The Wall Street Journal. Digital Network

Not satisfied, I wrote again:

To Whom It May Concern,

So, your records and comments do agree that I have been getting double-billed for some time. I appreciate the apology, but by itself it is not adequate. I believe that concrete amends must be made by refunding what amounts to erroneous billing due to either a software or policy glitch. I have been a loyal WSJ subscriber for about a decade. I hope that the newspaper can be sufficiently farsighted to make things right and that we can resolve this matter without further undue efforts on my part, thus allowing me to be a happy paying customer for many years to come.

Based on a combination of your comments, my memory, my credit card billing records, and Google searches, I deduce that the following has happened… For several years, I had a “WSJ.com” subscription that gave me access to your web site, which per your records cost $155/year as of October 2010. The WSJ subsequently introduced a mobile version of the paper that I was able to view for some time without additional charge. Some time later the WSJ started charging for the mobile addition and I agreed to pay for a “Mobile Reader” subscription to continue my access. Then it appears that that the “WSJ.com” subscription changed to include mobile and tablet access, and in reflection of this had its price increased to $275/year. It seems, however, that even though the mobile access for which I was paying approximately $100/year had its features rolled under the “WSJ.com” subscription plan, and even though the billing department raised my “WSJ.com” subscription rate to $275/year to reflect the change, the billing department also continued to bill me ~$100/year for mobile access for multiple billing cycles, a clear and unacceptable instance of double-billing.

If this is case, and all signs point to such, this is clearly improper and must be corrected. It is not adequate merely to refund a pro-rated amount for the “Mobile Reader” subscription for the billing cycle that began on May 2013. It is the newspaper’s ethical obligation to refund the full amount of the “Mobile Reader” subscription for that billing cycle and for any previous one that overlapped when I was being charged the increased amount for the “WSJ.com” subscription that included mobile access as part of its price. That is the decent and honest thing to do, as I am sure you will agree.

I sincerely hope that the newspaper can set this right of its own volition and that I won’t be forced to do something as odious as issuing credit card charge-back proceedings or get so irate that I cancel my subscription permanently.


Grimly determined not to provide customer satisfaction, they replied:

Dear Andrew,

Thank you for contacting The Wall Street Journal regarding your payment history. We are sorry that you were paying for 2 separate accounts.

We do have several customers that have multiple accounts. We do not stop one account just because another one is started or the access is included in another account. It is up to the subscriber to call in if they want one of their accounts stopped.

Please accept our apologies for the inconvenience. If you need any further assistance please respond to this email, or contact us using the information below. Thank you for being a part of Dow Jones, publishers of The Wall Street Journal.

Best Regards,

Customer Service
Dow Jones

Stubbornly giving them one last chance:

To Whom It May Concern,

Can you please explain why anyone would ever want to have a “Mobile Reader” account in addition to a “WSJ.com” account since the former includes the latter? I am not a business paying for employee accounts with different user names, I am not providing a gift subscription to someone else with a different user name, and I am not maintaining multiple print accounts to be delivered to separate locations. There does not seem to be any logical reason why I would maintain a “Mobile Reader” subscription and “WSJ.com” subscription at the same time for myself.

It seems that, through a combination of billing software that fails to detect such anomalies plus multiple restructurings of subscription plans over several years, a situation has emerged in which customers under certain circumstances, such as myself, will see their bills rise substantially while receiving no additional services unless they detect the condition themselves and manually correct it. Apparently it is not even possible via the website to correct subscription issues, requiring calling a customer service associate on the phone.

I have been a loyal and paying customer of the digital edition of the WSJ for approximately a decade, to include being willing to shell out the extra money for the mobile edition. I would like to continue to do so. However, if the newspaper is willing to gamble thousands of dollars in long-term subscriptions fees in order to extract a relatively modest amount from me right now by engaging in what appear to be deceptive business practices, then I don’t think I will be able to stay as a happy customer. I am asking you, one last time, to make this right by compensating me for the double-billings, and if you cannot do so then I would like to have my “WSJ.com” subscription that renewed just a few days ago canceled immediately and refunded in full, and I will furthermore be commencing credit card charge-back proceedings. Paying customers deserve better treatment than this.

Make this right.


And now the finale of tone-deafness and suicidal recalcitrance:

Dear Andrew,

Thank you for contacting The Wall Street Journal regarding your request to cancel the account. We apologize for the inconvenience.

Please call 1-800-JOURNAL (568-7625) to cancel your account by phone. Our hours of operation are Monday through Friday, 7 am – 10 pm ET; Saturday 7 am – 3 pm ET. If you are calling from outside the United States please contact us at 1-609-514-0870 for assistance or visit https://wsj.com/contactus (https://wsj.com/contactus) for international dialing options.

We appreciate your patience and hope to hear from you soon.

Best Regards,

Czarina Mae
Customer Service
Dow Jones

Wow. Alright, then…

Nuke the entire site from orbit. It’s the only way to be sure.

Subcription cancelled.

Credit card chargebacks forthcoming.

There is plenty of other stuff to read on this planet put out by companies that don’t treat their customers like garbage.


True Enough (Some Yak Shaving Required)

“Do you have a stationary bike?”, doc asked, inquiring as to my capacity to do self-directed physical therapy in the aftermath of some surgery to help loosen up my leg. “No…”, I replied, but shortly thereafter set about remedying that.

I figured purchasing a cycling trainer might be a good investment and set about doing some research. After ruling out the wind- and magnetic-resistance style trainers, and settling on purchasing a fluid style trainer, it came down to either a CycleOps Fluid 2 or a Kurt Kinetic Road Machine. They seemed close, but the latter appeared more solidly engineered, and thus I went. I did, however, buy a CycleOps Stackable Climbing Block for the front wheel, on the grounds that the corresponding piece of equipment sold by Kurt did not look nearly as nice (it seemed to bite the tire in an altogether unfriendly way instead of making well distributed contact).

No sooner had I received the trainer and hooked my bike up to it I was a little dismayed. I was getting a whump-whump noise that seemed sync’d to the rotational frequency of the wheel. I figured the wheel must be out of true and so cracked open my copy of Zinn & the Art of Road Bike Maintenance, jumped to the “Wheels and Tires” chapter, read up on the corresponding material, and realized that my tools did not include a spoke wrench or a truing stand.

After some cursing I eventually found my calipers, measured the nipple size for my spokes, took my best guess as to what the calipers were saying (the damned button-battery was dead) and matched that up to the various sizes of wrench in existence, and ended up ordering a Park Tool “SW-40 Four Sided Spoke Wrench”, the .127 inch variety.

After some more research, I found myself thinking that the truing stand was unnecessary. I thought about the Park Tool “TS-2.2 Professional Wheel Truing Stand”, but I couldn’t convince myself that I really needed it, not with a sticker price of $250, and not without the ambition to run a bike shop. I can definitely see how it would be nice, so maybe I will spring for it eventually, but I have to fight the temptation to spend my whole paycheck on Amazon. It’s just too easy.

The way I ultimately did the work was as follows:

  1. attach the bike to the trainer (leaving the resistance mechanism unengaged; I could have also used my bike stand)
  2. turn the crank to get the wheel going
  3. gently apply the rear brake and listen for a cyclic whump sound, indicative of the rim scraping one side of the brake calipers at one or more locations
  4. if the sound is sufficiently untroubling that you are satisfied, you’re done!
  5. apply the brake until the sound gets really pronounced
  6. back off on the brake a little bit, maintaining an audible sound
  7. let the wheel come to a stop
  8. gently spin the wheel by hand and find where it is catching the brake, either flinging the wheel and seeing where it stops, or gently turning it by hand and feeling where it meets friction; continue to hold the brake at a constant tension
  9. draw an O on both sides of the rim at the problematic spoke pair
  10. with the wheel still in the sticky location, look at the brake calipers and determine which side of the wheel is hitting the brakes; you can release the brake now
  11. keeping track of the spoke pair needing attention, swing the wheel such that the place that the rim meets those spokes is at the bottom
  12. using the spoke wrench, tighten one quarter turn (turn counter-clockwise when looking down at it) the spoke that emanates from the hub opposite the side of the brake caliper that was scraping, and loosen one quarter turn (turn clockwise when looking down at it) the spoke that emanates from the hub on the same side of the brake caliper that was scraping, thus pulling that portion of the wheel away from the scraping side of the brake caliper
  13. record which way you pulled the wheel by drawing a little plus symbol on the side of the wheel toward which you adjusted it, thus keeping a record of all the changes you made during this session
  14. go to step 2

When I re-engaged the resistance mechanism of the trainer with the real wheel, hopped on, and started peddling, the whump-whump sound was gone.

Bike hackin’ skillz!

VMWare Performance Tricks

The deeper the technology stack runs, the more administrators and engineers struggle to keep everything in good working order. VMWare offers a wonderful suite of benefits, but virtualization opens up a real can of worms, and with the host OS trying to be clever some really frustrating issues can appear.

At some point in the last few months, a VM on my laptop (an Ubuntu Intrepid Ibex image for some contract work I’m doing) started behaving really poorly. I wasn’t sure whether it was an issue on the host OS (which went from Jaunty to Koala), an issue on the guest OS (on which I installed X), or just a matter of time marching on (fragmentation).

After trying a few different fixes, I am of the opinion that my problem stemmed from CPU frequency scaling on the host OS playing havoc with VMWare. As best I can tell, this was causing the guest OS to be CPU starved, presumably due to a VMWare bug. That said, I (unscientifically) have done four total things since going from a state of fail to a state of grace…

  • found a way to set the scaling governor on the host CPUs
  • tweaked the VM to use only a single CPU
  • defragmented the VM’s image
  • disabled memory page trimming for the VM

Under Ubuntu (Karmic Koala, anyway) one can use the cpufreq-selector program to tweak the scaling governor for the host CPUs. For me, this meant running the following two commands on my dual CPU system…

cpufreq-selector -c 0 -g performance
cpufreq-selector -c 1 -g performance

It’s easy enough to validate that things got set…

cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
cat /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor

If you need a list of possible values for the scaling governor…

cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governor
cat /sys/devices/system/cpu/cpu1/cpufreq/scaling_available_governor

To make VMWare not suck, I changed the values from “ondemand” to “performance”. The other possibilities were “conservative”, “userspace” and “powersave”, none of which I have yet explored. The downside to “performance” of course is that your laptop is going to blow through its battery. Of course, if you’re plugged into the wall, you probably don’t care as much. You’re just destroying the planet.

At some point before I found the CPU scaling frequency fix I had momentarily convinced myself that the other three tweaks had fixed things. I have the feeling that I was fooled as the result of my laptop’s power management software fiddling with the scaling governors; as confirmation, I note that other folks on the Internet state they have resorted to having scripts that set the governors after they return from a hibernate/suspend operation.

I am happy to have (apparently) fixed my problem, but I’m left with a nagging sensation of our technology stack gradually getting out of control. It has so many moving parts, and in this feature hungry world not nearly enough time gets allocated to robustness and clarity.

It’s digital turtles all the way down.



Oh, the joys of getting to the gate at the airport 3.5 hours before your scheduled takeoff… $7.95 to use the wireless network? Really? FINE! See if I ever fly through here again, DTW. In any case, I’d been putting off upgrading my iPhone to the 3.0 software due to a fear of bricking my phone in the midst of three weeks of travel. What better thing to do with my 3.5 hours? Sprung the money, bricked my iPhone… FAIL.

I had a nagging feeling that this might happen. I’m running Ubuntu Linux as the host OS on my laptop. You can’t install the iTunes software under Linux, so I’m running it under WinXP as a guest OS on VMWare. Theoretically this should be fine, but somewhere in the back of my mind something was saying “don’t do it!”. I did it anyway, albeit at a point in time where the nuisance of bricking my phone was minimized. I won’t say it was a mistake, but things didn’t go as smoothly as I had hoped.

I plugged my iPhone into a USB port and iTunes suggested that I update the software so I got on with it. After a gigantic download on a not-so-fast network, iTunes got to the business of doing the flash. That’s when things went wrong. Apparently the update process causes the iPhone to reboot, which in turn causes a reconnect to the attached system, thus precipitating a pissing contest between the host and guest OSes. iTunes under WinXP saw the device go away (which it did), then VMWare started throwing errors/warnings about a module on the host OS having claimed the device, requiring manual intervention to reconnect it to the guest OS. By this time the flash had failed and I was the proud owner of a brick. iTunes informed me that I could do a recover operation. Gritting my teeth, I proceeded. I got the same conflict again. Also, VMWare managed to wedge my whole machine, requiring a battery-pull and unplugging to recover.

I did a Google search on the terms “iphone”, “vmware”, and “upgrade”. I ended up here which gave me the hint that I needed to give my kernel modules a stern talking-to. Another Google search on the terms “linux”, “prevent”, “kernel”, “module”, and “load” yielded this. Following my nose, I added the following two lines to /etc/modprobe.d/blacklist.conf:

  • blacklist usbhid
  • blacklist snd-usb-audio

After this I gave the recovery process another whirl and, voila, I had an iPhone that allows portrait-mode text messaging as well as copy-paste, albeit an iPhone suffering amnesia and still unwilling to tether. I’d been meaning to clean up my contact list for a few years. There was even a number for a friend who died a couple of years ago that I couldn’t bring myself to delete. Now it’s done.

Expected task time: 15 minutes

Actual task time: about 1.5 hours

Also, my flight is delayed for another hour. The bar down the hall is looking awfully tempting but that would likely cost me my power outlet. Decisions, decisions…