fubarobfusco comments on Open thread for December 24-31, 2013 - Less Wrong Discussion
You are viewing a comment permalink. View the original post to see all comments and the full post content.
You are viewing a comment permalink. View the original post to see all comments and the full post content.
Comments (207)
After trying and failing to grasp Objective-C for quite a while, I stopped Googling things like "Objective-C tutorial," "Objective-C documentation," and "Objective-C examples," and instead looked for "Objective-C for C++ Programmers" and "Objective-C for Python Programmers" because those are my two strongest languages. This was just tremendously efficient for a large number of reasons, the most obvious of which is that new information is expressed explicitly in terms of direct contrast to information with which you are familiar. The typical "computer language tutorial," in contrast, is in my opinion a very shoddy document from a pedagogical standpoint, usually appearing totally clear to anyone familiar with the language but vague and ambiguous to its target audience.
As someone who spends a lot of time reading Internet, I don't recall ever reading this advice before - learn new languages faster in context of languages you know - so I thought I'd post the thought here.
Brent Yorgey's "monad tutorial fallacy" points out a possible cause of this problem: the authors of tutorials mistake a summary of an insight as being the path to that insight.
A related problem I've seen newer programmers struggle with is that even reasonably good tutorials are often written in the context of specific older, popular languages, typically C. And if they are written for C, they are not titled "Foo for C Programmers"; they are just titled "Foo Tutorial". And they say things like, "Whenever you would use XYZ in C, you can use PDQ in Foo." This is useless for learners who are not coming from C.
I'm put in mind of the Red Queen from Through the Looking Glass: