The introductory programming course is difficult. Many students fail to succeed or have trouble in the course because they don't understand the material and do not practice programming sufficiently. This text provides an introduction to the fundamentals of Java programming using a fundamentals first/late objects approach