This book is intended as a text for an "Introduction to Computer Science" course for non-majors. That is, this book is intended for "the rest of the world"; namely "every can program". No specific pre-requisites at the college level are needed. However, basic high school level mathematics knowledge is assumed.