We've written this book to support students in studying programming. It is not a text to teach any particular programming language, but to be used alongside such a book, or in conjunction with a taught course. In Studying Programming we concentrate on what other books consider too 'obvious' or too 'basic'. We explain the ideas that others assume you know, we describe the things that can make learning to program a frustrating experience if...