January 31, 2010 oslofeaturedcontent

What’s New in EF4.0

Soma has posted a lovely description of what’s new in the Entity Framework for .NET 4.0, including:

  • Foreign Key support so you can add a row without requiring you to download an object just to get the foreign key.
  • Lazy Loading support so as you traverse a property that is a collection, the data is pulled on demand.
  • Plain Old CLR Object support (POCO) so that you can build your own classes and have EF serialize those instead of generating new classes.
  • T4-based Code Generation in case you do want classes generated but want to control the code.
  • Data binding support for WPF and WinForms.
  • WCF support with serialization attribute generation.
  • Much better SQL generation so that you can read it better when you need what’s going on over the wire and so that it’s more efficient.
  • Much better support for complex return values from stored procedures.
January 24, 2010 oslofeaturedcontent

LINQPad updated to support .NET 4.0b2!

I’m such a fan of LINQPad you don’t even know. Recently Joe updated it to support Data Services and as of today, if you scroll down to the bottom of the LINQPad download page
January 20, 2010 oslofeaturedcontent

Comparing NHibernate and EF4

This is a nice piece comparing NHibernate and EF4. Personally, I’m an EF4
January 1, 2010 book

Programming Data: .NET, SQL Server and You

Welcome to the home page for my new book.

Table of Contents

December 20, 2009 spout

Stead Defines ‘Customer’

And here’s one more from the paper file I’m putting into electronic format to reduce the pile of papers in my life:

During the all-associate broadcast, Jerre Stead shared with the team a memo another associate had sent about defining a customer. Here are the highlights:

December 20, 2009

The Most Effective Words To Use With Customers

Fred Gleeck had this to say about what not to say to customers and what to say instead:

There’s a right way and a wrong way to talk to callers. Even about the simplest matters. And make no mistake: Talking the wrong way can turn a loyal customer into an annoyed ex-customer. I have a name for talking the right way: PosiTalk (tm).

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:

  1. 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.
  2. 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.
  3. 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.
  4. 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.
  5. 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).
  6. 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.
  7. 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!
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!


← Newer Entries Older Entries →