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

- a look at the typical artefacts found in software repos and the infrastructure around them. So from README/LICENSE/CONTRIB through badges in README, to dependabot, etc. As a way to publish to norms and navigate a project

- implicit and explicit norms around bug reporting and pull requests

- project archetypes and maintenance styles, see e.g. Nadia Eghbal book.

- primer on different licences and their intent

@mhoye

- how to work in public and how it can go wrong

- forking, as a process for contribution but also as a means of exercising rights

- discussion of different forms of contribution

...are the things that spring to mind.