About the lessons

This is the main content. We recommend to read these lessons in order, and to run the code (and change parts of it to experiment) at every step. The reading time is an indication. In practice, it is normal for the lessons to take you longer. Do not hesitate to do one a day, and make sure that you really get the content before moving on to the next.

Before we start...

Reading time: 13 minutes
Contributors: Timothée Poisot
Key concepts: control flow flowcharts pseudo-code

Booleans and conditionals

Reading time: 13 minutes
Contributors: Timothée Poisot
Key concepts: control flow Booleans iteration
Packages used: Statistics

Iteration and array navigation

Reading time: 16 minutes
Contributors: Timothée Poisot
Key concepts: control flow iteration
Packages used: Statistics

Writing functions

Reading time: 22 minutes
Key concepts: writing functions type stability keyword arguments

Avoiding mistakes

Reading time: 16 minutes
Contributors: Timothée Poisot
Key concepts: defensive programming writing functions assertion unit testing