I have been told that praising a kid for effort vs. results is much more important. As a child, I was told I was smart and basically tried to coast as much as possible. I still have a lot of trouble learning how to do something new, especially because I have kind of internalized that I'm good at everything.
A bit of both is probably good. For example: in Belgium, in recent years a lot of kids are (often) given points for effort so they can pass a certain grade. More and more the case. I talked to a teacher friend about this, and while he thinks its great, I think it's ridiculous. Do we want a society of people who put in some effort yet achieve nothing? Now, not that I think the educational system shouldn't be flexible…
The problems, however, are multifold.
I remember a high school art class where I just had a complete writers-block - or maybe artists-block - and was not able to do much on a large pencil drawing while sitting in class. I just couldn't work while seated in rows with everyone else sketching away, for some reason.
But as the deadline came due, I sat down at home and sketched for 16 hours straight, barely even stopping for eating. It required so much shading that my hand hurt like never before. It ended up looking quite good, from what everyone told me.
When the grades came back, I had a D, while others who had much worse looking and mostly unshaded drawings received Bs. Naturally, I asked about this, and I was told that I must not have put in much effort, because he didn't see me putting in effort.
My burning rage at this event and the entire logic behind it all has been permanently seared into my memory.