Note: This document is work-in-progress. Please don’t publish it on news sites, or otherwise link to it in public without the author’s permission. Private linking is acceptable.
Joel Spolsky wrote a feature titled “Seven steps to remarkable customer service”, which is very insightful and inspiring. Among other things, Spolsky says there that every support request needs to be fixed twice: first of all by providing a fix or a workaround for the customer, and secondly by implementing a permanent fix in the product, the web-site or whatever, to prevent your establishment from ever getting such requests again.
In addition to what Spolsky says there, I should note that you should provide help in as many channels as possible: from telephone to E-mail to IRC (Internet Relay Chat) to providing your own web forums and mailing lists for help, etc. In order to prevent over-engineering and unnecessary forward-planning I would recommend implementing them when there turns out to be a demand for them, and to allow your establishment to grow organically. As Eric Raymond notes in “Necessary Preconditions for the Bazaar Style” (part of his the “Cathedral and the Bazaar” essay) it is necessary for the first released version of a successful open-source project to be good enough for people to run it, play with it, comment on it and find it useful. Similarly, when creating a commercial product, one should create customer service channels incrementally as they are needed.
A particularly bad example of an awful tech support incident is the suspension of my former Google AdSense account. On April, 2009, I was informed that my Google AdSense account was disabled because it caused a “significant risk to Google’s AdWords advertisers”, and from then on I could not log in to my account to get help. After I filled and submitted an appeal form, I received no reply after a month. Another appeal I sent did not get any response either. I next tried the Google AdSense support forum and received some replies from people who were not Google employees, that did not seem like a likely cause for an account termination, and no reply from an AdSense employee. After I talked with a few Google employees I know trying to reach someone in AdSense, one of them told me they did not know how to contact anyone in AdSense so they’ll likely going to be of little assistance. (Which is a big red flag in itself, indicating that Google has become too disparate and inefficient.)
A somewhat better, but still bad incident was with the ShareThis.com button that I installed in my site. After they started using Google Analytics in their re-usable widget (which I didn’t want), I wrote a support request and was replied with a laconic E-mail that only said: “At this time, there is no way to disable our widget from accessing Google Analytics.”. The problem with this is that they are likely to receive the same complaint from other users like me, and so will have to reply times and again, instead of fixing the underlying problem, like Spolsky suggested. I myself have decided to move away from ShareThis and others are likely to follow suit.
And for a change, I was provided a good support by Github, which is a popular software-development hub. At one point, I got an announcement that my own copy of a formerly public version control repository was deleted, because the now private repository has been deleted as well. I did not want it and so went on the github IRC channel, and asked for help. I was told it was probably a bug and was asked to file a support request, which I did. There it was acknowledged that this was a bug, and I was offered a workaround that worked.