December 20, 2009·
Spout
How To Handle Angry Callers in 7 Not-So-Easy Steps
When I was first in technical phone support for the software I was building, I found out that I wasn’t exactly a… um… “natural” at putting customers at ease. I used the following information from an AT&T magazine (I was working for a AT&T VAR at the time) in the fall of 1992 to start my education:
- Don’t react. Stay calm. When confronted with an irate caller, everyone has the urge to return fire. But don’t fight back. And don’t take it personally, or you’ll become an emotional basket case. Keep relaxed by breathing deeply. And remind yourself that this discussion will not change the destiny of mankind.
- Let them vent. Remember, you simply cannot get customers to deal with the logic of a situation until you’ve dealt with their emotions. Trying to attack the problem before people have fully vented their anger or disappointment just won’t work.
- Defusing the anger. When a tirade is winding down, try asking - sincerely - “Is there anything else?” By this point, they’re usually exhausted and willing to talk. If you hear profanity, try saying: “I know the words you’re using right now aren’t directed at me personally.” If the caller replies, “Oh yes they are!” you’re no worse off than you were. But generally they’ll apologize, realizing it’s not your fault. At which point, a real dialogue can begin.
- What do they want? Once they’ve calmed down, that’s the time to find out what they want: Money back? A defective part replaced? Find out quickly to determine whether you can solve the problem on the spot.
- What can they have. Once you’ve figured out what they want, what can you do? This will be set by bounds of your company’s policies - such as warranties or guarantees - as well as any flexibility that management may give you (which should be clearly spelled out).
- Customer solutions. Sometimes, the best solution you can deliver is one the customer suggests. And, surprisingly, it can end up being less than what you yourself were willing to offer. Recently, at a major department store, a customer wanted a discounting an imperfect blouse. The cashier was willing to take 35% off the marked price, but first asked the woman what discount she wanted. The answer: 20% off. Of course, some customers will make outrageous demands. In that case, ask them what they’d consider to be a “fair solution.” Instead of confronting the customer, this reply opens up the discussion to a more equitable resolution.
- Follow up. Don’t make an angry customer even angrier by not doing what you said you’d do. When a promise is made, keep following up internally to be certain that what was promised has been implemented. Even if that means making a minor pest of yourself!
Fred Gleek
December 15, 2009·
Tools
LINQPad updated to support Data Services!
Joe Albahari, the author of LINQPad, has added support for WCF Data Services to the 1.37.1 version beta of LINQPad. This means that you can point LINQPad at any Open Data (OData) endpoint and do queries interactively just like any other LINQ data source. He even supports HTTP security, in case the endpoint in question requires it. Further, if you have your own custom LINQ to Whatever and you’d like to plug a connection to it into LINQPad, Joe has already added the ability to create a custom data context provider. It is, as they say, a thing of beauty. Enjoy!
December 1, 2009·
Oslo
Data and Modeling Talks from PDC 2009
If you weren’t lucky enough to be able to attend this year’s PDC, not only did you not get a killer laptop, but you didn’t get to see the Data & Modeling talks live and in person. Fortunately, Doug has a nice list of them so you can watch them from the comfort of your own home. Enjoy!
November 22, 2009·
Spout
Do you know someone that needs dinner this Thanksgiving?
The boys and I were driving past a church with a holiday bizarre, so we stopped by. It was a mix of silent auction, bake sale and a $1 raffle for a turkey dinner with all the fixings. I made several comments about how they could skip the formality of the drawing and to make sure they could read my phone number on the back of my raffle ticket, because I was obviously going to win. They laughed.
When they called this morning to let me know that I had won, they told me that they remembered me and I laughed.
Anyway, the Sells Brothers and I have already picked up all we need for our Thanksgiving dinner, so if you know of a family in the Portland metro area without the means for a traditional dinner this holiday season, please let me know. I doubt it’ll be so big that I’ll need a sled to cart it through the streets, but I’m happy to deliver it when it needs to go. You can leave a comment on this post or drop me a line.
Happy holidays, everyone.
November 12, 2009·
Oslo
“M” For Language Definition in November 2009 CTP
In the November 2009 CTP of “Oslo”, we’ve
got some new DSL features in “M”, three of which I couldn’t wait for the PDC to
brag about.

Notice the following in this screenshot of Intellipad:
-
The use of an expression on the right-hand side
to calculate the full name from the first and last name from the parsed
input: Name => f + ” ” + l (“M” supports a rich expression syntax for a
variety of data types).
-
The use of ToInteger32 to provide output data
conversion of the Age token as different from the default of string
(there’s one of these functions for each of the supported “M” data types).
-
The orange highlighted text in the left-hand pane shows a
breakpoint and notice that Intellipad knows that “yours old.” is a single
thing, so highlights the entire phrase. Also notice the “notification” pane
on the far right to show what the data is that’s being parsed right now.
This indicates that Intellipad is now in DSL debugging mode
and lets you step through your input data and debug your language.
You’ll also notice richer error information in the Error List at
the bottom of the Intellipad window, but that I could’ve waited to tell you
about. : )
All of these “M” features and more can be yours for the low low
price of absolutely nothing in the latest CTP of
“Oslo”, which you can download on November 17th, the first day of
the PDC.
November 10, 2009·
Oslo
From “Oslo” to SQL Server Modeling
Extra! Extra! Read all about it!
Doug Purdy, my boss and one of the chiefs on the “Oslo” project has just announced the move from codename “Oslo” to SQL Server Modeling, which is the name we’ll be using for starting now for the group of “M”, “Quadrant” and Repository that you’ve come to know and love.
Tune in on November 17th, the first day of the PDC, for the new unified Data Developer Center, which will include all manner of data technologies, including XML, DataReader, DataSet, LINQ to SQL, Data Services (aka “Astoria”) and Entity Framework. One stop shopping!