The book is great on theory and poor on programming ideas. He writes "The best way to debug a Java program is with the System.out.println statement, as is the case with any high-level programming language." Inexcusable language for a professor in computer science.