This PR is intended to make the first part of the course a little gentler on new programmers. It separates the concepts of "values" and "variables" that were previously conflated. It also adds a references section to the end of the chapters that we can use to direct interested students to further material.
This branch also re-organises chapter 3 to be functions, this provides a conceptual framework for the rest of the course: building blocks + combining. Exercises from the old chapter 9 have been moved to other chapters (gc content to files, hamming distance to loops). It also moves chapter 11 (plotting) to the extras area.
This PR is intended to make the first part of the course a little gentler on new programmers. It separates the concepts of "values" and "variables" that were previously conflated. It also adds a references section to the end of the chapters that we can use to direct interested students to further material.
This branch also re-organises chapter 3 to be functions, this provides a conceptual framework for the rest of the course: building blocks + combining. Exercises from the old chapter 9 have been moved to other chapters (gc content to files, hamming distance to loops). It also moves chapter 11 (plotting) to the extras area.