Java is an Object-Oriented Language. I believe that the Object-Oriented paradigm is extremely useful, but is very difficult to teach to beginning students. I also believe that there is a lot of benefit in understanding how to develop and debug good solid methods before we get into the additional complexities of the Object-Oriented paradigm. So there is a choice, we either teach our students multiple languages, or we find a way to teach them the basics of an object-oriented language, such as Java in a procedural fashion. A few things that I will stress in this book are: 1. Good Coding habits. Writing code so that others can read it. 2. Good Design habits. 3. Testing your code while building it. I call this Write a little, Test a little. 4. Project life cycle. I trust that this book will help in your understanding of Java and coding in general.