A word should be said about the difference between sample applications and reference
applications. The code for this book is sample code. It demonstrates in the easiest way possible how to
perform given tasks related to the data received from the Kinect sensor. It should rarely be used as is in
your own applications. The code in reference applications, on the other hand, has the additional burden
of showing the best way to organize code to make it robust and to embody good architectural principles.
One of the greatest myths in the software industry is perhaps the implicit belief that good architecture is
also readable and, consequently, easily maintainable. This is often not the case. Good architecture can
often be an end in itself. Most of the code provided with the Kinect SDK embodies good architecture and
should be studied with this in mind. The code provided with this book, on the other hand, is typically
written to illustrate concepts in the most straightforward way possible. You should study both code
samples as well as reference code to become an effective Kinect developer. In the following sections, we
will introduce you to some of these samples and highlight parts of the code worth familiarizing yourself
with.