INTRODUCTION The teaching of introductory programming is a foundation in many computer information systems (CIS) and computer science (CSC) curricula. In recent years, virtually all introductory programming courses have shifted from the procedural approach to the object-oriented (OO) approach. Most beginning programming courses appear to be teaching Java , C++, or one of the Visual Studio .NET languages (Visual Basic, C#, or J#) as evidenced by the popularity of various computer programming texts. All of these programming languages are OO, as contrasted with the purely procedural languages of Fortran, Pascal, COBOL, and C.