As I've gotten older I've come to discover that there's a really fine line to walk here. You want to be motivated. You want to develop the best version of you that you possibly can.
However, being CRITICAL of yourself is about the most counter-productive thing a person can do. When you are critical of yourself, you do things for the wrong reason. Lamenting about how fat you are leads you to diet, but you never make real lifestyle changes to support it. A personal trainer friend of mine has made the observation that the best way to lose weight and get fit is to first develop the ability to be happy.
There is science to support this mindset. Constant self-teardown comes with real physiological changes in your body. You'll be more anxious, which means you'll spend more time in a sympathetic nervous state. The increase in adrenaline and cortisol leave you feeling sluggish and worn out. Guess what happens when you feel like that? You eat to much, you sleep to much, and you generally do everything you wanted to stop doing in the first place!
There are a whole host of things that go on when you push yourself instead of learning to be yourself. None of those things are very good.
I've been a driven guy. I've been successful in a startup. I've failed terribly. As I reach my mid-30's I've found myself focused on becoming content. Surprisingly, I've found that my productivity and desire haven't really changed much. I still want to do really well, but now I keep everything in perspective and I'm much happier for it.