Lazyweb, a question: let's say that you could teach a "cultural anthropology" type of course about computing to first year students, to prepare them for the codebases, communities, patterns and software philosophies of the programming world. You've got about ten weeks to run it. What would you teach in that course and why?

(RTs appreciated for reach.)

@mhoye software netiquette and why it exists (how to ask for help, how to write a good bug report, brief explanation of the reasoning behind mailing list etiquette, how to interpret feedback on a code review or technical proposal). Actually the "how to receive code review" one is big in general