It's most certainly not the approach I take to learning. It is, however, the approach I take towards the conical "I disagree with Paul Graham" blog posts. Why? Because everyone's a critic. If the critic in question doesn't demonstrate a general understanding of the subject matter I do not invest my time. In this case, it was a misreading of an essay, but it really could be anything. I apply this approach to critics of all kinds. Do I apply this approach to published essayists or programmers with well known software? Not usually, because getting published or becoming well known is a sort of vetting in itself. But a vetting process is certainly necessary for blog posts on criticism or some random repository on Github. There just isn't enough time in the day to dive into things that don't have a solid foundation. Why would I read a 5000 line Ruby program whose initial functions are written poorly? At best I'll end with one or two nice tricks and a large headache.