I think that the idea is sort of right, but his terminology sucked. You want to be an efficient (lazy) and versatile (unlazy) coder and approach problems simply (dumbly) first rather than complexly. You also need to be willing to learn (ties back to versatile), to make mistakes, and to be critical of your work (ties back to efficiency).
He sounds like one of those guys that thinks or just calls himself dumb, but is really more of a smart-***. Reminds me of me when I was just getting out of High School (the thinking I'm dumb part not the smart-*** part, I'll always be a smart-***).