I've just gotten to the end of Udacity's CS262 course in programming languages. It's been pretty good. Wes Weimer, the lecturer, seems to be a really cool guy. There's a quote from HPMOR in the final exam, which I thought was pretty cool.

In the last part of the last lecture, Weimer gives advice on what we should learn next. You can watch it here.

He advises that you learn the following (paraphrased):

Philosophy until you've covered epistemology, formal logic, free will, the philosophy of science, and what it's like to be a bat.

Cognitive psychology until you've covered perception, consciousness, and the Flynn effect.

Speech or rhetoric until you've covered persuasion.

Anthropology and gender studies, to get an idea of what behaviors are socially constructed and which are essential

Statistics, until you can avoid being fooled by either others or yourself

Religion or ethics until you've covered the relationship between unhappiness and unrealized desires

Physics and engineering until you can explain how a microphone, speaker, and radio all work

Government until you have an opinion about legislating morality and the relative importance of freedom and equality.

History until you are not condemned to make the mistakes of the past.

Life until you are happy. They say ignorance is bliss, but they are wrong all but finitely often.

I thought that was all really useful (except maybe the last two). I've learned up to his required level of philosophy, cognitive psychology, and religion and ethics. I'm working on the physics and gender studies.

(Incidentally, I strongly recommend Udacity for learning programming. It's really good.)

New Comment
18 comments, sorted by Click to highlight new comments since:

He advises that you learn the following

To remove a trivial inconvenience, he could have also added hyperlinks to Udacity courses covering this material. :D

...Anthropology and gender studies, to get an idea of what behaviors are socially constructed and which are essential...

It is my understanding that physical anthropologists will give very different answers than other kinds of anthropologists. I would suggest evolutionary psychology and gender studies as a more suitable dichotomy of types of hypothesis.

He specifically suggests both Mead and Freeman. I've never heard someone advocate reading one without banning the other.

I suspect that studying those two fields together might lead to more confusion than it clears up, at least lacking any bridging information or empirical data to help you evaluate claims.

How wonderfully convenient that his list matches exactly what I've learnt anyway from going to the schools my parents wanted me to and browsing the web.

I'm still failing at history, though. History classes are a long list of kings and presidents and wars. Sometimes they look at some motivations, like "feudalism was stable because the Church supported it", but it's very far from enough to make predictions. If you try avoiding past mistakes you just end up giving Hitler Sudetenland. Anyone got a source?

What does Life 101 look like? People can become happy by learning to raise children, how to paint a masterpiece, or about psychiatric medications. Do you get a passing grade from any of these?


... and what it's like to be a bat.

What? Explain?

Thomas Nagel's paper "What is it like to be a bat?"


I'm not sure I agree with his points or his "scientism" terminology, but my takeway was "there are things going on with conscious experience that our current scientific understandings simply aren't close to understanding and explaining yet."




Religion or ethics until you've covered the relationship between unhappiness and unrealized desires.

I believe that "the relationship between unhappiness and unrealized desires." would be better understood by studying psychology and neurology - and maybe some anthropology, rather religion or/and ethics,though it probably wouldn’t hurt.

I like Coursera over Udacity in terms of the way that their courses are presented. Long videos are better than short ones, and Udacity's frequent quizzes mean I can't watch lectures while (say) chopping vegetables or doing some other mindless task which gets my hands dirty.

However, the content is what really matters. I definitely like (so far) Udacity's Self-driving Car course, and I can also recommend Coursera's Machine Learning. They do cover a tiny bit of the same material, but they do it so differently that it's worth taking both. Definitely skip Coursera's Computer Vision course.

(Incidentally, I strongly recommend Udacity for learning programming. It's really good.)

I've been programming for over a decade, but after watching Peter Norvig deal with the problems in his Udacity course I came to see the (Level Above Mine](http://lesswrong.com/lw/ua/the_level_above_mine/). Highly recommended for even experienced programmers. The interesting thing about it that things end up being simper rather than more complicated (novices imagine masters writing difficult code, but while dealing with system complexities is an important skill, the ability to make things as simple as possible is a more important one in most cases).

I think he's the same guy who was really big in modding Baldur's Gate 2 some ten years ago. I liked the long feature analysis he wrote up on BG2, Icewind Dale 2 and Avernum 3.

It is probably a good idea to have a goal in mind when learning things, but many of these are not the usual goal for the subject matter. For example, most people learn statistics to fool themselves and others. His suggested goal is better, but it is important to know that it is different, which is a detail he fails to mention. In some of these cases, if you just keep your eye on your own purpose while following usual routes, it will work, but in other cases, you should probably look for other routes.

What was the quote from HPMoR?

He used the opening paragraph as one of the example strings for something you were testing your regular expressions on.

I think that I accomplished most of the things on this list quite a while ago. I'm happy and have a good life but I'm nowhere near knowledgeable enough to tackle the problems I'd like to solve… I have a very long way to go still.

Wes also does research on Automatic Program Repair which some lesswrong readers may find interesting. The repair method uses fairly straightforward GP, but it works surprisingly well.