The basic structure of the Arduino programming language is fairly simple and runs in at least two parts. The setup function is called once when the program starts, and is used to initialize variables and pin modes. The loop function is called repeatedly and is where the core of the program is placed. This notebook serves as a convenient reference for the most common elements of the Arduino language and illustrates their usage with examples and code fragments. It includes many functions of the core library followed by an appendix with sample sketches.