Object-oriented programming course revisited